
Хоніпот для уязвимости Log4Shell (CVE-2021-44228).
Хоніпот для уязвимости Log4Shell (CVE-2021-44228).
License: 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 для обзора.poetry run python log4pot.py @log4pot.confКроме того, вы можете запустить log4pot без внешних зависимостей:
$ python log4pot.py @log4pot.conf
В этом случае log4pot будет работать без поддержки ведения журнала в Azure blob storage.
Чтобы перенаправлять трафик на порты 80 и 443 на Log4Pot, используйте следующие команды iptables:
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
Скрипт log4pot-loganalyzer.py извлекает все полезные нагрузки, декодирует их текущим декодером и строит на их основе временную шкалу. Использование:
python log4pot-loganalyzer.py -o <output directory> <input log files>
Перечислить полезные нагрузки из попыток эксплуатации:
select(.type == "exploit") | .payload
Декодировать все base64-закодированные полезные нагрузки из JNDI-эксплойта:
select(.type == "exploit" and (.payload | contains("Base64"))) | .payload | sub(".*/Base64/"; "") | sub ("}$"; "") | @base64d
Извлечь все хэши SHA256 из файлов, загруженных по URL:
[ .[] | select(.type == "payload") | .urls | select((. | length) > 0) | to_entries | .[].value | select((. | length) == 64) ] | unique | .[]