freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

记一次绕过安全设备Getshell的实战经历
2023-04-03 10:25:12
所属地 北京

1、概述

      新华三御雷实验室在一次实战演练中遇到开源CMS系统的网站,经过探测发现网站存在未授权文件上传漏洞但存在安全设备检测导致无法直接利用,经过不断尝试最后绕过安全设备检测成功上传webshell获取服务器控制权限。

      新华三御雷实验室后期在模拟环境下复盘总结成此文,文中涉及到的CMS漏洞厂商目前已经修复。新华三御雷实验室协同盾山实验室,通过对畸形上传报文的覆盖优化上传文件的检测识别,同时加强对变形的webshell文件内容检测识别,新华三全系安全产品通过升级IPS特征库到最新版本可识别上文中的文件上传绕过利用的攻击流量。

0x01 漏洞发现

根据网站URL路径和后台管理页面确认其使用某开源CMS系统且确认其为5.x版本。

1680486768_642a31700616b74f1dbe7.png!small?1680486768790


前台探测其文件上传接口可访问,猜测网站可能存在未授权文件上传漏洞:

1680486837_642a31b55ee3bc404d695.png!small?1680486837916

此CMS在5.x的早期版本中存在文件上传漏洞且漏洞利用条件有:

1、项目通过war包在tomcat等容器中部署

2、允许上传jspx文件(5.2.7之前默认黑名单配置只禁止了上传.jsp和.exe文件)

根据报错了解已满足使用tomcat部署的条件,通过尝试可以正常上传图片且可以成功访问。

1680486882_642a31e2ee3d7dc5186fc.png!small?1680486883761

0x02 后缀黑名单绕过

      尝试上传jspx后缀内容为test的文件被检测拦截,判断有安全设备对上传文件为jspx的后缀做了过滤。尝试后缀大小写、filename参数结构破坏等方法未绕过,最终在头部Content-Type的boundary=值中通过添加tab字符成功绕过后缀检测。

1680486955_642a322bcd8b34aa56984.png!small?1680486956464

0x03 文件内容检测绕过

      利用黑名单绕过的方法直接上传jspx的cmd马被拦截。判断安全设备还对文件内容做了检测。继续尝试通过unicode编码、chunk编码小块传输、垃圾数据填充、修改文件类型如image/jpeg等方式均未果。猜测可能是对<jsp:root>字符串做了检测,通过不断缩小范围测试确认确实是检测<jsp:root>标签。

      通过查找jspx文件上传绕过资料了解到,<jsp:root>中jsp就是默认的命名空间,实际上可以随意替换成其他名字比如:

1680487026_642a327295b9671ce6037.png!small?1680487027362

      继续尝试上传cmd小马结果又被拦截了。判断安全设备仍然对其他jspx结构语句有拦截,经过测试发现是<jsp:scriptlet>被检测:

<jsp:scriptlet>Runtime.getRuntime().exec(request.getParameter("i"));</jsp:scriptlet>

使用如下等效语句替换:

<abc:expression>Runtime.getRuntime().exec(request.getParameter("i"))</abc:expression>

成功绕过上传cmd马:

1680487068_642a329c6bd8e37b603e4.png!small?1680487069146

成功执行命令:

1680487095_642a32b7c9afea682d97a.png!small?1680487096329

      至此可上传无回显的cmd马,且通过测试发现服务器不出网。为了方便后续进一步利用需要上传冰蝎马,综合利用上述绕过的方法成功上传:

1680487124_642a32d43ddc895bc0087.png!small?1680487124896

连接获取服务器的控制权限:

1680487138_642a32e20d9585332befc.png!small?1680487139012

0x04 总结

      在实战演练中经常会遇到WAF等安全设备,探测到目标系统可能存在某个漏洞后进一步利用时流量被识别自动拦截后,可以通过unicode编码、垃圾数据填充或者后端语言的功能等价替换等手段尝试绕过WAF流量测的检测,其关键点在于不断的尝试定位出安全设备过滤的关键字、标签或者某个函数。

      新华三御雷实验室协同盾山实验室,通过对畸形上传报文的覆盖优化上传文件的检测识别,同时加强对变形的webshell文件内容检测识别,新华三全系安全产品通过升级IPS特征库到最新版本可识别上文中的文件上传绕过利用的攻击流量。

# 渗透测试
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录