⭐ 在 GitHub 上给我们加星 — 这会给我们很大动力!
在您的系统中发现 Log4Shell CVE-2021-44228
该角色尝试从文件系统和已打开的文件(lsof)中查找 JAR 和 WAR 文件
⚠️ 扫描期间您的系统可能会运行缓慢,因为需要在 / 上执行 find 并解压 JAR/WAR 文件进行查找
该角色将变量 log4shell_analyze_versions 填充为一个字典,类似于:
{
"/tmp/rundeck.war": {
"version": "2.13.2",
"type": "war",
"jndilookup": false
},
"/tmp/apache-log4j-2.12.1-bin/log4j-core-2.12.1.jar": {
"version": "2.12.1",
"type": "jar",
"jndilookup": true
},
"/tmp/apache-log4j-2.12.1-bin/log4j-core-2.12.1-tests.jar": {
"version": "2.12.1",
"type": "jar",
"jndilookup": false
}
}
键是角色找到 log4j 库的路径。
值是一个字典,包含 version 中的 log4j 版本,type 中的文件类型(war/jar),以及键 jndilookup,它告诉您文件 org/apache/logging/log4j/core/lookup/JndiLookup.class 是否存在于 jar 中
如果 JAR 中没有 JndiLookup.class,则根据 https://www.kb.cert.org/vuls/id/930724 判定其不受影响
Ansible >= 4
ansible-galaxy install claranet.log4shell
| 变量 | 默认值 | 描述 |
|---|---|---|
| log4shell_scan_path | / | 需要扫描的文件系统路径 |
无
---
- hosts: all
roles:
- role: claranet.log4shell
log4shell_scan_path: /opt