MĂ”ned nginx-serverid jÀÀvad haavatavaks Nginx Alias Traversal tehnika suhtes, mis pakuti vĂ€lja Blackhati konverentsil juba 2018. aastal ja vĂ”imaldab ligipÀÀsu failidele ja kataloogidele, mis asuvad vĂ€ljaspool juurkatalooge, mis on mÀÀratud alias direktiivis. Probleem ilmneb ainult konfigureerimistes, kus alias direktiiv asub location plokis, mille parameeter ei lĂ”ppe sĂŒmboliga " / ", samas kui alias lĂ”ppeb " / " .

Probleemi olemus seisneb selles, et alias direktiiviga plokkide failid antakse edasi, kui ĂŒhendatakse nĂ”utud tee, pĂ€rast selle sobitamist location direktiivi malli ja eemaldades selle malli mÀÀratud tee osa. Ălaltoodud haavatava konfigureerimise nĂ€ite puhul vĂ”ib rĂŒndaja paluda faili " /img.. /test.txt " ja see pĂ€ring langeb location malli " /img ", pĂ€rast mida jÀÀb alles jĂ”ud " .. /test.txt " , mis kinnitatakse alias direktiivist " /var /images / " ja lĂ”puks kutsub ĂŒles faili " /var /images /.. /test.txt ". Seega vĂ”ib rĂŒndaja saada ligipÀÀsu mistahes failidele kataloogis " /var ", mitte ainult failidele " /var /images /", nĂ€iteks nginx logi allalaadimiseks vĂ”ib saata pĂ€ringu " /img.. /log /nginx /access.log ".
Konfigureerimistes, kus alias direktiivi vÀÀrtus ei lĂ”ppe sĂŒmboliga " / " (nt " alias /var /images; "), ei saa rĂŒndaja minna ĂŒlemisse katalooge, kuid tal on vĂ”imalus paluda teist katalooge, mille nimi algab konfigureeritud otsusega. NĂ€iteks, paludes " /img.old /test.txt " , saab ligipÀÀsu kataloogile " var /images.old /test.txt ".
GitHubis tehtud analĂŒĂŒs nĂ€itas, et probleemiga seotud vale konfiguratsioon nginxis esineb endiselt reaalselt toimivates projektides. NĂ€iteks avastati probleem Bitwardeni paroolihalduri serveripoolel, mis oleks vĂ”inud vĂ”imaldada ligipÀÀsu kĂ”igile failidele kataloogis " /etc /bitwarden" (pĂ€ringud " /attachments" anti edasi kataloogist " /etc /bitwarden /attachments / "), sealhulgas seal hoitavale paroolide andmebaasile " vault.db ", sertifikaadile ja logidele, mille saamiseks piisab pĂ€ringute saatmisest " /attachments.. /vault.db ", " /attachments.. /identity.pfx ", " /attachments.. /logs /api.log " jne.


Meetod töötas samuti Google HPC Toolkiti puhul, kus pĂ€ringud " /static " suunati katalooge " .. /hpc-toolkit /community /front-end /website /static / ". Salajase vĂ”tme ja autentimisteabe andmebaasi saamiseks vĂ”is rĂŒndaja saata pĂ€ringud " /static.. / .secret_key " ja " /static.. /db.sqlite3 ".

Allikas: opennet.ru
