首页 > 其他 > 详细

Struts2 007 漏洞复现&分析

时间:2021-02-06 10:47:29      阅读:25      评论:0      收藏:0      [点我收藏+]

一、漏洞背景

待补充

二、漏洞复现

poc:

‘%2b(%23application)%2b‘

技术分享图片

三、漏洞分析

根据公开的漏洞信息得知,该漏洞主要存在类型转化错误的拦截器处理逻辑上。

技术分享图片

大概过程为:

只接受int类型的参数校验检测到传入的参数为非字符型,从而数据走向ConversionErrorInterceptor,而在ConversionErrorInterceptor中,对传入的值直接进行"‘" + value + "‘"操作,而通过闭合前后两个单引号后将该数据传入执行表达式中从而达到恶意执行的目的。

分析过程如下:

技术分享图片

跟进getOverrideExpr,在idea调试中,该方法指向了父类,个人感觉可能是编译器有点小bug,实际上子类已经重写了父类该方法。

技术分享图片

所以value传进去之后,假设value是‘+(#application)+‘,那么最终返回得到一个‘‘+(#application)+‘‘,既前后两个字符串和中间的#application取出来的内容进行拼接。最终执行表达式(但具体是如何进入到哪一步的表达式,网上的文章并没有详细分析,这个需要再多花点时间研究。当前项目推进时间太赶了,分析进度有点慢。

Struts2 007 漏洞复现&分析

原文:https://www.cnblogs.com/0x28/p/14380632.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!