欢迎光临
我们一直在努力

关于log4j 1.x JMSAppender远程命令执行漏洞利用的研究

漏洞描述

Apache Log4j 1.2 版本的 Java 日志库中存在一个缺陷,JMSAppender 容易受到不受信任 数据的反序列化的影响,如果部署的应用程序配置为使用 JMSAppender 和攻击者的 JMS Broker,允许远程攻击者在服务器上执行代码。发现存在 JNDI 远程命令执行漏洞,效果与 log4j2 漏洞类似,但利用条件相对苛刻。

利用条件

1. 要有 jms 的环境支持

2. 需要能有写如 log4j.properties 文件内容的权限

复现截图

漏洞分析

通过对漏洞的调试,发现在 JMSAppender 中调用了 lookup 方法,这是因为我们在 log4j.properties 中写入了 log4j.appender.jms=org.apache.log4j.net.JMSAppender,即去调用 JMSAppender.java 中的 activateOptions 方法。然后在 ctx.lookup(name) 中传入我们指定的恶 意 LDAP 服务地址,从而触发了远程代码执行漏洞。所以从中我们可以看出要必须支持 jms 代理的类才可以执行 rce,本例中就是 activemq 存在 jms 代理的类,所以才执行了该漏洞, 否则将不存在问题。也就是说该漏洞不会出现太大的影响,因为首先需要修改 log4j 的配置, 除非我们利用了其他一些漏洞进行写入,否则将很难利用该点进行 RCE。Log4j2 的 RCE 由于 是在用户输入端就可以触发,所以相比 log4j2 的漏洞影响要低很多。

赞(0) 打赏
未经允许不得转载:黑客技术网 » 关于log4j 1.x JMSAppender远程命令执行漏洞利用的研究
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏