前言近日,网上爆发了致远OA ajax.do的登录旁路和任意文件上传漏洞,影响了致远OA的部分老版本(致远OA V8.0、致远OA V7.1、V7.1SP1、致
前言
近日,网上爆发了致远OA ajax.do的登录旁路和任意文件上传漏洞,影响了致远OA的部分老版本(致远OA V8.0、致远OA V7.1、V7.1SP1、致远OA V7.0、V7.0SP1、V7.0SP2、V7.0SP3、致远OA V6.0、V6.1SP1、V6.1SP2、致远OA V5..网上已经有基于Python的EXP了。为了更好的发挥Goby的作用,我们尝试在Goby上编写EXP工具。
0x01 漏洞复现
漏洞再现主要分为以下三个部分:
1.1 未授权访问
参考unicodeSec大佬的分析,通过请求eyon/第三方Controller.do.css/…;/Ajax . do确定是否存在漏洞。如果出现如下所示的异常,则可能存在漏洞。
通过抓取数据包,可以看到下面的数据请求和返回结构:
返回的状态值是200,返回的数据包含& # 34;Java . lang . nullpointerexception:null & # 34;字符串。
1.2 任意文件上传
调用未授权文件上传接口上传任意文件,从而上传test.txt并上传到/seeyon目录。内容为test123,数据包如下:
返回的状态值为500,如果文件上传成功将会返回。
{ "消息& # 34;:null,& # 34;代码& # 34;:"0844135702", "详情& # 34;:null}其中代码的值不固定。
如果文件上传失败,将被返回。
{ "消息& # 34;: "强制注销,原因:与服务器失去连接& # 34;, "代码& # 34;: "-1", "详情& # 34;:null}1.3请求上传的文件通过请求上传的文件检查文件是否上传成功,如下图:
0x02 Goby EXP编写2.1 漏洞信息填写
致远OA的查询规则是:app=Yonyou-Seeyon-OA(可以定期扫描后查看标的的资产类型,确定查询规则)。
按如下方式填写漏洞信息:
然后在高级配置中,填写标签、描述、产品、产品首页、作者、来源、漏洞危害、解决方案等信息。
2.2 ScanSteps填写
2.2.1未授权访问判断
根据漏洞再现部分,GET request/see yon/第三方controller.do.css/…;/Ajax . do,根据返回数据的状态码200和& # 34;Java . lang . nullpointerexception:null & # 34;字符串来判断目标是否有漏洞,并填入相应的规则,如下所示:
在这里,您需要填写标题中的Accep字段。
2.2.2文件上传二次判断
经过和Goby团队的技术表哥沟通,仅通过上述的未授权访问判断,可能会有很多误报,需要通过上传文件进一步判断。
上传帖子数据到任意文件时,需要带上content-type:application/x-www-form-urlencoded,根据返回的内容是否包含消息、代码、细节,排除包含-1的返回内容(上传失败,返回值的代码为-1),判断上传是否成功。
帖子数据可以参考互联网上的现有资源。
温馨提示:填写完测试数据后,有一个& # 34;在自定义概念证明的右上角。单一ip扫描& # 34;选项,输入ip:port,并执行一次ip扫描,查看定义的测试选项的逻辑是否正确。
2.3 ExploitSteps填写
从生成的see you _ OA _ ajaxaction _ formula manager _ file _ upload . JSON文件的ScanSteps中提取Post部分的数据,并将其添加到ExploitSteps中,如下所示:
你需要补充& # 34;HasExp ' & # 34:" true "验证设置漏洞。
在主mojie的帮助下,将上传的文件名等内容固定到ExpParams部分,以便在验证时输出上传的信息,如下图所示:
0x03 Goby 验证效果
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。
作者:美站资讯,如若转载,请注明出处:https://www.meizw.com/n/392263.html