## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-KAL1GH0ST-MYLOG4SHELL
# ΠΠΎΠΉ Log4Shell
# ΠΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ RCE Π² log4j
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΠΏΠΎΠΏΡΡΠΎΠΊ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ RCE Π² log4j CVE-2021-44228
## Grep / Zgrep
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΡΠ΅Ρ ΠΏΠΎΠΏΡΡΠΊΠΈ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ Π² Π½Π΅ΡΠΆΠ°ΡΡΡ
ΡΠ°ΠΉΠ»Π°Ρ
Π² ΠΏΠ°ΠΏΠΊΠ΅ `/var/log` \- '/usr/var/log' ΠΈ Π²ΡΠ΅Ρ
ΠΏΠΎΠ΄ΠΏΠ°ΠΏΠΊΠ°Ρ
root@kitploit:~
sudo egrep -I -i -r '\$(\{|%7B)jndi:(ldap[s]?|rmi|dns|nis|iiop|corba|nds|http):/[^\n]+' /var/log
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΡΠ΅Ρ ΠΏΠΎΠΏΡΡΠΊΠΈ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ Π² ΡΠΆΠ°ΡΡΡ
ΡΠ°ΠΉΠ»Π°Ρ
Π² ΠΏΠ°ΠΏΠΊΠ΅ `/var/log` ΠΈ Π²ΡΠ΅Ρ
ΠΏΠΎΠ΄ΠΏΠ°ΠΏΠΊΠ°Ρ
root@kitploit:~
sudo find /var/log -name \*.gz -print0 | xargs -0 zgrep -E -i '\$(\{|%7B)jndi:(ldap[s]?|rmi|dns|nis|iiop|corba|nds|http):/[^\n]+'
## Grep / Zgrep - ΠΠ°ΠΏΡΡΠ°Π½Π½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ
ΠΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΎΡ
Π²Π°ΡΡΠ²Π°ΡΡ Π΄Π°ΠΆΠ΅ Π·Π°ΠΏΡΡΠ°Π½Π½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ, Π½ΠΎ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π°.
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΡΠ΅Ρ ΠΏΠΎΠΏΡΡΠΊΠΈ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ Π² Π½Π΅ΡΠΆΠ°ΡΡΡ
ΡΠ°ΠΉΠ»Π°Ρ
Π² ΠΏΠ°ΠΏΠΊΠ΅ `/var/log` ΠΈ Π²ΡΠ΅Ρ
ΠΏΠΎΠ΄ΠΏΠ°ΠΏΠΊΠ°Ρ
root@kitploit:~
sudo find /var/log/ -type f -exec sh -c "cat {} | sed -e 's/\${lower://'g | tr -d '}' | egrep -I -i 'jndi:(ldap[s]?|rmi|dns|nis|iiop|corba|nds|http):'" \;
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΡΠ΅Ρ ΠΏΠΎΠΏΡΡΠΊΠΈ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ Π² ΡΠΆΠ°ΡΡΡ
ΡΠ°ΠΉΠ»Π°Ρ
Π² ΠΏΠ°ΠΏΠΊΠ΅ `/var/log` ΠΈ Π²ΡΠ΅Ρ
ΠΏΠΎΠ΄ΠΏΠ°ΠΏΠΊΠ°Ρ
root@kitploit:~
sudo find /var/log/ -name '*.gz' -type f -exec sh -c "zcat {} | sed -e 's/\${lower://'g | tr -d '}' | egrep -i 'jndi:(ldap[s]?|rmi|dns|nis|iiop|corba|nds|http):'" \;
## Log4Shell-Rex
ΠΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΎΡ
Π²Π°ΡΡΠ²Π°ΡΡΠ΅Π΅ Π΄Π°ΠΆΠ΅ ΡΠ°ΠΌΡΠ΅ Π·Π°ΠΏΡΡΠ°Π½Π½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ: https://github.com/back2root/log4shell-rex
root@kitploit:~
(?:\$|%(?:25)*24|\\(?:0024|0{0,2}44))(?:{|%(?:25)*7[Bb]|\\(?:007[Bb]|0{0,2}173)).{0,30}?((?:[Jj]|%(?:25)*[46][Aa]|\\(?:00[46][Aa]|0{0,2}1[15]2)).{0,30}?(?:[Nn]|%(?:25)*[46][Ee]|\\(?:00[46][Ee]|0{0,2}1[15]6)).{0,30}?(?:[Dd]|%(?:25)*[46]4|\\(?:00[46]4|0{0,2}1[04]4)).{0,30}?(?:[Ii]|%(?:25)*[46]9|\\(?:00[46]9|0{0,2}1[15]1)|Δ±).{0,30}?(?::|%(?:25)*3[Aa]|\\(?:003[Aa]|0{0,2}72)).{0,30}?((?:[Ll]|%(?:25)*[46][Cc]|\\(?:00[46][Cc]|0{0,2}1[15]4)).{0,30}?(?:[Dd]|%(?:25)*[46]4|\\(?:00[46]4|0{0,2}1[04]4)).{0,30}?(?:[Aa]|%(?:25)*[46]1|\\(?:00[46]1|0{0,2}1[04]1)).{0,30}?(?:[Pp]|%(?:25)*[57]0|\\(?:00[57]0|0{0,2}1[26]0))(?:.{0,30}?(?:[Ss]|%(?:25)*[57]3|\\(?:00[57]3|0{0,2}1[26]3)))?|(?:[Rr]|%(?:25)*[57]2|\\(?:00[57]2|0{0,2}1[26]2)).{0,30}?(?:[Mm]|%(?:25)*[46][Dd]|\\(?:00[46][Dd]|0{0,2}1[15]5)).{0,30}?(?:[Ii]|%(?:25)*[46]9|\\(?:00[46]9|0{0,2}1[15]1)|Δ±)|(?:[Dd]|%(?:25)*[46]4|\\(?:00[46]4|0{0,2}1[04]4)).{0,30}?(?:[Nn]|%(?:25)*[46][Ee]|\\(?:00[46][Ee]|0{0,2}1[15]6)).{0,30}?(?:[Ss]|%(?:25)*[57]3|\\(?:00[57]3|0{0,2}1[26]3))|(?:[Nn]|%(?:25)*[46][Ee]|\\(?:00[46][Ee]|0{0,2}1[15]6)).{0,30}?(?:[Ii]|%(?:25)*[46]9|\\(?:00[46]9|0{0,2}1[15]1)|Δ±).{0,30}?(?:[Ss]|%(?:25)*[57]3|\\(?:00[57]3|0{0,2}1[26]3))|(?:.{0,30}?(?:[Ii]|%(?:25)*[46]9|\\(?:00[46]9|0{0,2}1[15]1)|Δ±)){2}.{0,30}?(?:[Oo]|%(?:25)*[46][Ff]|\\(?:00[46][Ff]|0{0,2}1[15]7)).{0,30}?(?:[Pp]|%(?:25)*[57]0|\\(?:00[57]0|0{0,2}1[26]0))|(?:[Cc]|%(?:25)*[46]3|\\(?:00[46]3|0{0,2}1[04]3)).{0,30}?(?:[Oo]|%(?:25)*[46][Ff]|\\(?:00[46][Ff]|0{0,2}1[15]7)).{0,30}?(?:[Rr]|%(?:25)*[57]2|\\(?:00[57]2|0{0,2}1[26]2)).{0,30}?(?:[Bb]|%(?:25)*[46]2|\\(?:00[46]2|0{0,2}1[04]2)).{0,30}?(?:[Aa]|%(?:25)*[46]1|\\(?:00[46]1|0{0,2}1[04]1))|(?:[Nn]|%(?:25)*[46][Ee]|\\(?:00[46][Ee]|0{0,2}1[15]6)).{0,30}?(?:[Dd]|%(?:25)*[46]4|\\(?:00[46]4|0{0,2}1[04]4)).{0,30}?(?:[Ss]|%(?:25)*[57]3|\\(?:00[57]3|0{0,2}1[26]3))|(?:[Hh]|%(?:25)*[46]8|\\(?:00[46]8|0{0,2}1[15]0))(?:.{0,30}?(?:[Tt]|%(?:25)*[57]4|\\(?:00[57]4|0{0,2}1[26]4))){2}.{0,30}?(?:[Pp]|%(?:25)*[57]0|\\(?:00[57]0|0{0,2}1[26]0))(?:.{0,30}?(?:[Ss]|%(?:25)*[57]3|\\(?:00[57]3|0{0,2}1[26]3)))?).{0,30}?(?::|%(?:25)*3[Aa]|\\(?:003[Aa]|0{0,2}72)).{0,30}?(?:\/|%(?:25)*2[Ff]|\\(?:002[Ff]|0{0,2}57)|\${)|(?:[Bb]|%(?:25)*[46]2|\\(?:00[46]2|0{0,2}1[04]2)).{0,30}?(?:[Aa]|%(?:25)*[46]1|\\(?:00[46]1|0{0,2}1[04]1)).{0,30}?(?:[Ss]|%(?:25)*[57]3|\\(?:00[57]3|0{0,2}1[26]3)).{0,30}?(?:[Ee]|%(?:25)*[46]5|\\(?:00[46]5|0{0,2}1[04]5)).{2,60}?(?::|%(?:25)*3[Aa]|\\(?:003[Aa]|0{0,2}72))(JH[s-v]|[\x2b\x2f-9A-Za-z][CSiy]R7|[\x2b\x2f-9A-Za-z]{2}[048AEIMQUYcgkosw]ke[\x2b\x2f-9w-z]))
## Log4Shell Detector (Python)
Π‘ΠΊΠ°Π½Π΅Ρ Π½Π° Python Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π°ΠΏΡΡΠ°Π½Π½ΡΡ
ΡΠΎΡΠΌ ΠΊΠΎΠ΄ΠΎΠ² ΡΠΊΡΠΏΠ»ΠΎΠΉΡΠΎΠ².
https://github.com/Neo23x0/log4shell-detector
## ΠΠΎΠΈΡΠΊ Log4j Π² Linux
root@kitploit:~
ps aux | egrep '[l]og4j'
find / -iname "log4j*"
lsof | grep log4j
grep -r --include *.[wj]ar "JndiLookup.class" / 2>&1 | grep matches
## ΠΠΎΠΈΡΠΊ ΡΡΠ·Π²ΠΈΠΌΠΎΠ³ΠΎ Log4j Π² Windows
root@kitploit:~
gci 'C:\' -rec -force -include *.jar -ea 0 | foreach {select-string "JndiLookup.class" $_} | select -exp Path
ΠΎΡ @CyberRaiju
## YARA
https://github.com/Neo23x0/signature-base/blob/master/yara/expl_log4j_cve_2021_44228.yar
## ΠΠΎΠΌΠΎΡΡ Π²ΡΠ΅ΠΌ
ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΡΠΎΠΎΠ±ΡΠ°ΠΉΡΠ΅ ΠΎ Π½Π°Ρ
ΠΎΠ΄ΠΊΠ°Ρ
, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΠΎΡ
Π²Π°ΡΡΠ²Π°ΡΡΡΡ ΡΡΠΈΠΌΠΈ ΠΏΠΎΠΏΡΡΠΊΠ°ΠΌΠΈ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ.
# ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ setup.py
#
log4j-detect
#### ΠΡΠΎΡΡΠΎΠΉ ΡΠΊΡΠΈΠΏΡ Π½Π° Python 3 Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ (CVE-2021-44228) Π² Java-Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ "Log4j" Π΄Π»Ρ ΡΠΏΠΈΡΠΊΠ° URL-Π°Π΄ΡΠ΅ΡΠΎΠ² Ρ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΠΎΡΡΡΡ
* * *
Π‘ΠΊΡΠΈΠΏΡ "log4j-detect.py", ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΉ Π½Π° Python 3, ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅, ΡΡΠ·Π²ΠΈΠΌ Π»ΠΈ ΡΠΏΠΈΡΠΎΠΊ URL-Π°Π΄ΡΠ΅ΡΠΎΠ² Π΄Π»Ρ CVE-2021-44228.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΎΠ½ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ GET-Π·Π°ΠΏΡΠΎΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠΎΡΠΎΠΊΠΎΠ² (Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠ°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ) Π½Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ URL-Π°Π΄ΡΠ΅Ρ ΠΈΠ· ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ°. GET-Π·Π°ΠΏΡΠΎΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π² ΡΠ»ΡΡΠ°Π΅ ΡΡΠΏΠ΅Ρ
Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ DNS-Π·Π°ΠΏΡΠΎΡ ΠΊ Burp Collaborator / interactsh. ΠΡΠ° ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ° ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π² ΡΠ΅ΡΡΠΎΠ²ΠΎΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ΅ ΠΈ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°Ρ
"User-Agent" / "Referer" / "X-Forwarded-For" / "Authentication".
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Π΅ΡΠ»ΠΈ Ρ
ΠΎΡΡ ΡΡΠ·Π²ΠΈΠΌ, ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ Π½ΠΎΠΌΠ΅Ρ ΠΏΠΎΡΠ²ΠΈΡΡΡ Π² ΠΏΡΠ΅ΡΠΈΠΊΡΠ΅ ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½Π° ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Burp Collaborator / interactsh ΠΈ Π² Π²ΡΠ²ΠΎΠ΄Π΅ ΡΠΊΡΠΈΠΏΡΠ°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊΠΎΠΉ Ρ
ΠΎΡΡ ΠΎΡΠ²Π΅ΡΠΈΠ» ΡΠ΅ΡΠ΅Π· DNS.
Π‘Π»Π΅Π΄ΡΠ΅Ρ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΡΡΠΎΡ ΡΠΊΡΠΈΠΏΡ Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΡΠ΅ΡΠ΅Π· DNS ΠΈ Π½Π΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄.
### ΠΠ°Π³ΡΡΠ·ΠΊΠ° log4j-detect.py
root@kitploit:~
wget https://github.com/takito1812/log4j-detect/raw/main/log4j-detect.py
### ΠΠ°ΠΏΡΡΠΊ log4j-detect.py
root@kitploit:~
python3 log4j-detect.py <urlFile> <collaboratorPayload>
