
Log4Shell भेद्यता (CVE-2021-44228) के लिए एक हनीपॉट।
Log4Shell भेद्यता (CVE-2021-44228) के लिए एक हनीपॉट।
लाइसेंस: 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
यह Azure ब्लॉब स्टोरेज में लॉगिंग के समर्थन के बिना log4pot चलाएगा।
पोर्ट 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
JNDI शोषण से सभी base64-एन्कोडेड पेलोड को डिकोड करें:
select(.type == "exploit" and (.payload | contains("Base64"))) | .payload | sub(".*/Base64/"; "") | sub ("}$"; "") | @base64d
URLs से डाउनलोड की गई फ़ाइलों से सभी SHA256 हैश निकालें:
[ .[] | select(.type == "payload") | .urls | select((. | length) > 0) | to_entries | .[].value | select((. | length) == 64) ] | unique | .[]