S2-005 远程代码执行漏洞检测与利用

S2-005漏洞起源于S2-003,影响Struts2.0.0至2.1.8.1版本。攻击者通过Unicode编码或8进制绕过安全限制,利用OGNL表达式执行任意代码。官方虽增加安全配置,但配置可被绕过。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

s2-005漏洞的起源源于S2-003(受影响版本: 低于Struts 2.0.12),struts2会将http的每个参数名解析为OGNL语句执行(可理解为java代码)。OGNL表达式通过#来访问struts的对象,struts框架通过过滤#字符防止安全问题,然而通过unicode编码(\u0023)或8进制(\43)即绕过了安全限制,对于S2-003漏洞,官方通过增加安全配置(禁止静态方法调用和类方法执行等)来修补,但是安全配置被绕过再次导致了漏洞,攻击者可以利用OGNL表达式将这2个选项打开,S2-003的修补方案把自己上了一个锁,但是把锁钥匙给插在了锁头上

漏洞记录

S2-005
CVE-2010-1870
Struts 2.0.0-2.1.8.1
http://struts.apache.org/release/2.2.x/docs/s2-005.html
S2-016范围内

漏洞检测及利用

漏洞存在
在这里插入图片描述
执行命令:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值