雷石|yonyouNC命令执行Bypass测试分享
共 4342字,需浏览 9分钟
·
2023-07-09 18:33
前言
在渗透和攻防中,多次遇到用友NC系统。一直以来都是用别人的工具,自己从来没分析研究过用友的源码和利用,遇到一些场景或需要利用漏洞执行命令时踩了很多坑。最近便通过灰盒测试简单分析了下NC6的命令执行,并尝试bypass。 测试环境: win server+NC6.3,win server+NC6.5
01.
NC6.3
首先是用友NC6.3,无论是bsh.servlet.BshServlet命令执行还是反序列化执行系统命令,都会遇到dir、echo命令执行失败。通过监控进程,发现未调用cmd,猜测是被过滤。
尝试echo命令写入文件,也没有问题,完全正常写入exec("cmd /c echo ccc > nc63.txt");
NC6.5
02.
在NC6.5中,发现在NC6.3中的方法已不再适用。增加了转义,特殊符号全部失效。例如通过echo写入需要用到的“>” ,会被双引号转义成字符串而非命令。 被转义:可以看到 cmd和特殊字符都被添加了双引号包裹
成功执行方式:
经过测试,用如下方式写入的缺点是会多出空格和引号:
小结
会用利用脚本是一回事,复现了漏洞是一回事,能否在攻防中利用漏洞并拿到权限又是另一回事。
看似有了exp复现漏洞就是掌握了,但在实战中总会遇到不同环境、不同场景,也会出现不同状况,还是要掌握漏洞原理才能逐个攻破。
推荐阅读
·白加黑免杀制作(详细)
·文章预览
往期回顾
01
02
03
雷石安全实验室
商务咨询:
0571-87031601
商务邮箱:
mtn@motanni.com