JBoss反序列化漏洞(CVE-2017-12149)
发布网友
发布时间:2024-10-20 03:46
我来回答
共1个回答
热心网友
时间:2024-11-29 19:40
JBoss存在一个严重的反序列化漏洞(CVE-2017-12149),该漏洞源于HttpInvoker组件的ReadOnlyAccessFilter过滤器中的doFilter方法,该方法未经安全检查直接处理客户端提交的序列化数据,可能导致恶意用户通过精心构造的数据执行任意代码。最新发现,JBossAS 6.x版本也受此漏洞影响,攻击者无需用户验证即可获得服务器控制权。为防止潜在风险,强烈推荐尽快将系统升级至JBossAS 7版本。
Java序列化和反序列化是Java编程中的常见操作,但若处理不当,会成为安全风险。漏洞具体表现为在HttpInvoker的源码中,doFilter函数对http中的数据直接调用readobject()进行反序列化操作。
漏洞利用分为两个步骤:首先,通过浏览器访问目标服务器的默认页面,然后访问特定的反序列化漏洞页面,服务器会尝试解析用户提交的POST内容进行反序列化操作。攻击者可以借助ysoserial工具生成恶意序列化数据,构造Payload,利用Runtime.getRuntime().exec()的特性执行Shell命令,如bash反弹至本地指定端口。
在利用过程中,需要注意对命令进行编码以避免被分割,同时可能利用${IFS}字符进行绕过。实验中,通过CommonsCollections1库生成的POC文件发送至nc监听的6666端口,接收并执行反弹回来的Shell命令。然而,此类操作仅限于安全研究,切勿对未经授权的网站进行恶意操作。
为了系统安全,建议对受影响的系统进行紧急修复,可以通过访问官方提供的修复文档来进行升级和配置更改。