ΠΡΠΊΠΎΠΈ ΡΡΡΠ²ΡΡΠΈ Ρ nginx ΠΎΡΡΠ°Π²Π°Ρ ΡΡΠ·Π²ΠΈΠΌΠΈ Π½Π° ΡΠ΅Ρ Π½ΠΈΠΊΠ°ΡΠ° Nginx Alias Traversal, ΠΊΠΎΡΡΠΎ Π±Π΅ΡΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π° Π½Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡΡΠ° Blackhat ΠΎΡΠ΅ ΠΏΡΠ΅Π· 2018 Π³ΠΎΠ΄ΠΈΠ½Π° ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ, ΡΠ°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈ ΠΈΠ·Π²ΡΠ½ ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ, Π·Π°Π΄Π°Π΄Π΅Π½Π° Π² Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°ΡΠ° "alias". ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ ΡΠ΅ ΠΏΡΠΎΡΠ²ΡΠ²Π° ΡΠ°ΠΌΠΎ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° "alias", ΡΠ°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π° Π² Π±Π»ΠΎΠΊΠ° "location", ΡΠΈΠΉΡΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π½Π΅ Π·Π°Π²ΡΡΡΠ²Π° Π½Π° ΡΠΈΠΌΠ²ΠΎΠ»Π° "/", Π΄ΠΎΠΊΠ°ΡΠΎ "alias" Π·Π°Π²ΡΡΡΠ²Π° Π½Π° "/".

Π‘ΡΡΠ½ΠΎΡΡΡΠ° Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π΅ Π² ΡΠΎΠ²Π°, ΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ Π·Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅ Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°ΡΠ° alias ΡΠ΅ Π²ΡΡΡΠ°Ρ ΡΡΠ΅Π· ΠΏΡΠΈΠΊΡΠ΅ΠΏΠ²Π°Π½Π΅ Π½Π° ΠΏΠΎΠΈΡΠΊΠ°Π½ΠΎΡΠΎ ΠΏΡΡΡ, ΡΠ»Π΅Π΄ Π½Π΅Π³ΠΎΠ²ΠΎΡΠΎ ΡΡΠΏΠΎΡΡΠ°Π²ΡΠ½Π΅ Ρ ΠΌΠ°ΡΠΊΠ°ΡΠ° ΠΎΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°ΡΠ° location ΠΈ ΠΈΠ·ΡΡΠ·Π²Π°Π½Π΅ Π½Π° Π·Π°Π΄Π°Π΄Π΅Π½Π°ΡΠ° Π² ΡΠ°Π·ΠΈ ΠΌΠ°ΡΠΊΠ° ΡΠ°ΡΡ ΠΎΡ ΠΏΡΡΡ. ΠΠ° ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈΡ ΠΏΠΎ-Π³ΠΎΡΠ΅ ΠΏΡΠΈΠΌΠ΅Ρ Π½Π° ΡΡΠ·Π²ΠΈΠΌΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ, Π½Π°ΠΏΠ°Π΄Π°ΡΠ΅Π»ΡΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΠΎΠΈΡΠΊΠ° ΡΠ°ΠΉΠ»Π° "/img..\/test.txt" ΠΈ ΡΠΎΠ²Π° ΠΈΡΠΊΠ°Π½Π΅ ΡΠ΅ ΠΏΠΎΠΏΠ°Π΄Π½Π΅ ΠΏΠΎΠ΄ ΠΌΠ°ΡΠΊΠ°ΡΠ° Π² location "/img", ΡΠ»Π΅Π΄ ΠΊΠΎΠ΅ΡΠΎ ΠΎΡΡΠ°Π²Π°ΡΠ°ΡΠ° ΡΠ°ΡΡ "..\/test.txt" ΡΠ΅ Π±ΡΠ΄Π΅ ΠΏΡΠΈΠΊΡΠ΅ΠΏΠ΅Π½Π° ΠΊΡΠΌ ΠΏΡΡΡ ΠΎΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°ΡΠ° alias "/var\/images\/" ΠΈ Π² ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° ΡΠ΅ Π±ΡΠ΄Π΅ ΠΏΠΎΠΈΡΠΊΠ°Π½ ΡΠ°ΠΉΠ»ΡΡ "/var\/images\/..\/test.txt". Π’Π°ΠΊΠ° Π½Π°ΠΏΠ°Π΄Π°ΡΠ΅Π»ΠΈΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΠΏΠΎΠ»ΡΡΠ°Ρ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Π²ΡΡΠΊΠ°ΠΊΠ²ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° "/var", Π° Π½Π΅ ΡΠ°ΠΌΠΎ Π΄ΠΎ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ Π² "/var\/images\/", Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° Π΄Π° ΠΈΠ·ΡΠ΅Π³Π»ΡΡ nginx Π»ΠΎΠ³-ΡΠ°ΠΉΠ»Π°, ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΠΏΡΠ°ΡΡΡ ΠΈΡΠΊΠ°Π½Π΅ "/img..\/log\/nginx\/access.log".
Π ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, Π² ΠΊΠΎΠΈΡΠΎ ΡΡΠΎΠΉΠ½ΠΎΡΡΡΠ° Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°ΡΠ° alias Π½Π΅ Π·Π°Π²ΡΡΡΠ²Π° Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π° "/" (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, "alias \/var\/images;"), Π½Π°ΠΏΠ°Π΄Π°ΡΠ΅Π»ΡΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡΠ΅ΠΌΠΈΠ½Π΅ Π² ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΠΊΠ°ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ, Π½ΠΎ ΠΈΠΌΠ° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π΄Π° ΠΏΠΎΠΈΡΠΊΠ° Π΄ΡΡΠ³Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π² \/var, ΡΠΈΠ΅ΡΠΎ ΠΈΠΌΠ΅ ΡΡΠ²ΠΏΠ°Π΄Π° Ρ ΡΠΊΠ°Π·Π°Π½ΠΎΡΠΎ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ°ΡΠΎ ΠΏΠΎΠΈΡΠΊΠ° "\/img.old\/test.txt" ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΠΎΠ»ΡΡΠΈ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° "var\/images.old\/test.txt".
ΠΠ½Π°Π»ΠΈΠ·ΡΡ Π½Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈΡΠ΅ Π² GitHub ΠΏΠΎΠΊΠ°Π·Π°, ΡΠ΅ Π²ΠΎΠ΄Π΅ΡΠΈΡΠ΅ Π΄ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π³ΡΠ΅ΡΠΊΠΈ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° nginx Π²ΡΠ΅ ΠΎΡΠ΅ ΡΠ΅ ΡΡΠ΅ΡΠ°Ρ Π² ΡΠ΅Π°Π»Π½ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ Π±Π΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π΅Π½ Π² ΡΡΡΠ²ΡΡΠ½Π°ΡΠ° ΡΠ°ΡΡ Π½Π° ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡΡΠ° Π·Π° ΠΏΠ°ΡΠΎΠ»ΠΈ Bitwarden ΠΈ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Π²ΡΠΈΡΠΊΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° \/etc\/bitwarden (ΠΈΡΠΊΠ°Π½ΠΈΡΡΠ° \/attachments ΡΠ΅ Π²ΡΡΡΠ°Ρ Π° ΠΎΡ \/etc\/bitwarden\/attachments\/), Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΡΡΡ ΡΠ°Π½ΡΠ²Π°Π½Π°ΡΠ° ΡΠ°ΠΌ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Ρ ΠΏΠ°ΡΠΎΠ»ΠΈ "vault.db", ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ° ΠΈ Π»ΠΎΠ³ΠΎΠ²Π΅ΡΠ΅, Π·Π° ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠΈΡΠΎ Π±Π΅ΡΠ΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΡΡ ΠΈΡΠΊΠ°Π½ΠΈΡ "\/attachments..\/vault.db", "\/attachments..\/identity.pfx", "\/attachments..\/logs\/api.log" ΠΈ Ρ.Π½.


ΠΠ΅ΡΠΎΠ΄ΡΡ ΡΡΡΠΎ ΡΠ°ΠΊΠ° ΡΡΠ°Π±ΠΎΡΠΈ Ρ Google HPC Toolkit, Π² ΠΊΠΎΠΉΡΠΎ ΠΈΡΠΊΠ°Π½ΠΈΡΡΠ° \/static ΡΠ΅ ΠΏΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Ρ Π° Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° "..\/hpc-toolkit\/community\/front-end\/website\/static\/". ΠΠ° ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Ρ ΡΠ΅ΠΊΡΠ΅ΡΠ΅Π½ ΠΊΠ»ΡΡ ΠΈ Π΄Π°Π½Π½ΠΈ Π·Π° Π²Ρ ΠΎΠ΄, Π½Π°ΠΏΠ°Π΄Π°ΡΠ΅Π»ΡΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΡΠ°ΡΠΈ ΠΈΡΠΊΠ°Π½ΠΈΡ "\/static..\/.secret_key" ΠΈ "\/static..\/db.sqlite3".

ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
