
Un honeypot pour la vulnérabilité Log4Shell (CVE-2021-44228).
Un honeypot pour la vulnérabilité Log4Shell (CVE-2021-44228).
Licence : GPLv3.0
curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python3 -git clone https://github.com/thomaspatzke/Log4Pot.gitcd Log4Potapt install libcurl4-openssl-dev libssl-dev python3-dev build-essentialpoetry installpoetry run python log4pot.py --help pour un aperçu.poetry run python log4pot.py @log4pot.confAlternativement, vous pouvez également exécuter log4pot sans dépendances externes :
$ python log4pot.py @log4pot.conf
Cela exécutera log4pot sans prise en charge de la journalisation vers Azure Blob Storage.
Pour rediriger le trafic vers les ports 80 et 443 vers Log4Pot, utilisez les commandes iptables suivantes :
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 8443
Le script log4pot-loganalyzer.py extrait toutes les charges utiles, les décode avec le décodeur actuel et construit une chronologie à partir des deux. Utilisation :
python log4pot-loganalyzer.py -o <output directory> <input log files>
Listez les charges utiles issues des tentatives d'exploitation :
select(.type == "exploit") | .payload
Décodez toutes les charges utiles encodées en base64 de l'exploit JNDI :
select(.type == "exploit" and (.payload | contains("Base64"))) | .payload | sub(".*/Base64/"; "") | sub ("}$"; "") | @base64d
Extrayez tous les hachages SHA256 des fichiers téléchargés à partir d'URL :
[ .[] | select(.type == "payload") | .urls | select((. | length) > 0) | to_entries | .[].value | select((. | length) == 64) ] | unique | .[]