Log4j OSINT 发现汇总,包括检测、攻击面、缓解措施和失陷指标(IoC)。
该漏洞使得任何能够将文本注入日志消息或日志消息参数并写入服务器日志的攻击者,都有可能从远程服务器加载代码。目标服务器随后通过 Java 命名和目录接口(JNDI)调用执行该代码。
JNDI 可与多种网络服务交互:
截至 2021 年 12 月 13 日,迄今为止的攻击要么是挖矿木马,要么是自动化僵尸网络(Mirai、Tsunami 和 Kinsing)
最佳修复方式是升级到已修补版本,但难点在于找出 log4j 作为组件被部署的位置,和/或等待供应商提供补丁。
短期措施:
长期措施:
https://www.govcert.admin.ch/blog/zero-day-exploit-targeting-popular-java-library-log4j/
https://www.techsolvency.com/story-so-far/cve-2021-44228-log4j-log4shell/ —— 作者 @TychoTithonus(Royce Williams)。
Florian Roth 提供的资源(评论区也包含有用信息) https://gist.github.com/Neo23x0/e4c8b03ff8cdf1fa63b7d15db6e3860b
/.({|%7B)[Jj][Nn][Dd][Ii]./
https://twitter.com/ThinkstCanary/status/1469439743905697797 你可以使用 https://canarytokens.org 上的点击式 canarytoken 来帮助测试 #log4j / #Log4Shell 问题。
详情请参阅其页面 https://log4shell.huntress.com/
"如何检测是否受影响:在应用旁边启动 netcat:'nc -lp 1234',然后在应用中输入以下内容使其被记录(例如搜索的查询字符串):'${jndi:ldap://127.0.0.1:1234/abc}'。如果你随后在 netcat 控制台中看到乱码/表情符号,则说明你易受攻击!"
"我编写了一个简单的(即独立的、无依赖的)Java 程序,它将 JndiLookup.lookup() 修补为返回固定字符串且不解析其参数。这应该可以在不重启 JVM 进程的情况下修复 CVE-2021-44228(即 Log4j 中的远程代码执行漏洞)。" https://github.com/simonis/Log4jPatch "这是一个简单工具的 POC,它将 Java agent 注入到正在运行的 JVM 进程中。该 agent 将修补所有已加载的 org.apache.logging.log4j.core.lookup.JndiLookup 实例的 lookup() 方法,使其无条件返回字符串 'Patched JndiLookup::lookup()'。这应该可以在不重启 Java 进程的情况下修复 Log4j 中的 CVE-2021-44228 远程代码执行漏洞。 目前仅在 JDK 8 和 11 上测试过!"
来源:Greynose.io
API 调用: curl -X POST https://threatfox-api.abuse[.]ch/api/v1/ -d '{ "query": "taginfo", "tag": "log4j" }
"以下是 GreyNoise 迄今为止检测到的原始 CVE-2021-44228 Log4J / Logshell 载荷。" https://gist.github.com/nathanqthai/01808c569903f41a52e7e7b575caa890
"观察到 45[.]155[.]205[.]233 使用 base64 编码字符串进行初始扫描。解码后尝试执行 curl wget bash 等操作...以建立 shell。 还观察到第 2、3 和 4 阶段及最终载荷: 通过以下 IP 传播的 nspps/Kingsing 恶意软件 44.240.146.137 45.137.155.55 185.154.53.140 185.191.32.198"
45.155.205.233 —— 观察到利用该漏洞的俄罗斯 IP。 https://twitter.com/VessOnSecurity/status/1469950517010968582 https://twitter.com/entropyqueen_/status/1469961345848299520