Learning Man's Blog

Learning Man's Blog

I'm getting stronger step by step.

s2-032 漏洞分析
影响版本 Struts 2.3.20 - Struts Struts 2.3.28(2.3.20.3和2.3.24.3除外) 吐槽:这个漏洞其实和S2-016差不多。 0x01 土亢 v2.3.20因该是误报,可能开发时候没注意写死了DefaultActionMapper.allowDynamicMethodCalls == false,恰好避免了漏洞 XD 需要开启动态代码调试 <constant name="struts.enable.DynamicMethodInvocation" value="true"/> 0x02 分析跟进分析 在前期准备阶段进入Prepar...
s2-033 & s2-037 漏洞分析
S2-033 影响版本 Struts 2.3.20 - Struts Struts 2.3.28(2.3.20.3和2.3.24.3除外) S2-037 影响版本 Struts 2.3.20 - Struts Struts 2.3.28.1 2.3.20.3 & 2.3.24.3 & 2.3.28.1 为s2-033修复版本 吐槽:33跟32其实关系不大,只是payload大致通用,37算33的绕过。 0x01 踩坑测试基于2.3.20 rest-showcase 理解struts.xml配置容易让人头大 <!--默认包路径包含action,actions,st...
s2-045 漏洞分析
影响版本: Struts 2.3.5 - Struts 2.3.31Struts 2.5 - Struts 2.5.10 漏洞产生原因主要在于使用Jakarta插件处理文件上传操作,对content-type处理 【占坑】分析基于2.3.30,貌似高版本触发点不太一样,原理大致相同 0x01 踩坑No, no I don’t give a… anymore. 0x02 分析跟进分析struct 使用java ee中的Filter去拦截请求,并实现自己的功能。也就是说,用户所发出的请求,首先会在org.apache.struts2.dispatcher.ng.filter中的StrutsP...
s2-046 漏洞分析
影响版本: Struts 2.3.5 - Struts 2.3.31Struts 2.5 - Struts 2.5.10 漏洞产生原因主要在于使用Jakarta插件处理文件上传操作,对content-length以及filename处理 【占坑】分析基于2.3.30,貌似高版本触发点不太一样,原理大致相同 0x01 踩坑按照参考资料1部署就可以了 0x02 分析跟进分析 这里看了很多分析,最后感觉还是按处理类来辨析更好 i. JakartaMultiPartRequest 主要是利用空字节解析错误抛出错误,在对错误信息本地化时候造成了命令执行 项目配置 P.S. 此配置其实可以不...
s2-048 漏洞分析
影响版本: Struts 2.0.0 - Struts 2.3.32 漏洞产生原因主要在于struts2-struts1-plugin插件 0x01 踩坑没有XD 0x02 分析跟进分析 按照官方漏洞说明,测试触发点 确认之后来查看执行流程,查看配置文件,所搜action对应的类org.apache.struts2.s1.StrutsAction 跟入execute,由于msg.getValues()为null,所以进入else,执行this.getText()(中间有点犯傻( ̄ε(# ̄),可以一直盯着值栈) getText会先确定对应的TextProvider,然后调...
s2-048 漏洞分析
影响版本: Struts 2.1.2 - Struts 2.3.33Struts 2.5 - Struts 2.5.12 漏洞产生原因主要在于对于xml文件的反序列化 0x01 又见踩坑终于不是部署时候的坑了,这回的坑在于了解struts.xml中的配置信息 此漏洞在于rest插件,所以部署rest-showcase即可 几个小tips: marshal: 从非文本格式到文本格式的数据转化,如java对象->xml unmarshal: marshal的逆过程,将xml->java对象 struts.xml 项目中的struts.xml,注意到这里的rest-defa...
s2-053 漏洞分析
影响版本: Struts 2.0.1 - Struts 2.3.33Struts 2.5 - Struts 2.5.10 0x01 部署又见踩坑这回漏洞主要位于struts对freemarker处理的问题 表现层技术主要有三种:jsp、freemarker、velocity idea生成maven项目,在pom.xml中添加依赖 <dependencies> <dependency> <groupId>org.apache.struts</groupId> <artifactId>struts2-core...
avatar
Sariel.D
天雨虽宽,不润无根之草
FRIENDS
pwn4fun th3wind