MÔned Nginxiga serverid jÀÀvad haavatavaks Nginx Alias Traversal tehnikale, mis esitati 2018. aastal Blackhati konverentsil ning vÔimaldab pÀÀseda juurde failidele ja kataloogidele, mis asuvad vÀljaspool juurkatalooge, mille mÀÀrab direktiiv "alias". Probleem ilmneb ainult konfigureerimistes, kus direktiiv "alias" asub "location" ploki sees, mille parameeter ei lÔpe simboliga "/", samas kui "alias" lÔpeb "/".

Probleem on selles, et alias-direktiiviga plokkide failid edastatakse lĂ€bi palutud tee lisamise, pĂ€rast selle vastavusse viimist location-direktiiviga ja maskist mĂ€rgitud osa tee lĂ”ikamisest. NĂ€idatud haavatava konfiguratsiooni puhul saab rĂŒndaja nĂ”uda faili â/img../test.txtâ ja see pĂ€ring kuulub location-maskile â/imgâ, mille jĂ€rel jÀÀv saba â../test.txtâ lisatakse alias-direktiivi teele â/var/images/â ja lĂ”puks nĂ”utakse faili â/var/images/../test.txtâ. Sel viisil vĂ”ib rĂŒndaja juurde pÀÀseda kĂ”igile failidele kaustas â/varâ, mitte ainult failidele kaustas â/var/images/â; nĂ€iteks, nginx logifaili saamiseks vĂ”ib saata pĂ€ringu â/img../log/nginx/access.logâ.
Konfiguratsioonides, kus alias-direktiivi vÀÀrtus ei lĂ”ppe sĂŒmboliga â/â (nĂ€iteks âalias /var/images;â), ei saa rĂŒndaja minna vanemasse kataloogi, kuid tal on vĂ”imalus nĂ”uda muud katalooge kaustas /var, mille nimi algab antud konfiguratsioonis mĂ€rgitust. NĂ€iteks, nĂ”udes â/img.old/test.txtâ, saab juurde pÀÀseda kataloogile âvar/images.old/test.txtâ.
GitHub'i reposte analĂŒĂŒs nĂ€itas, et nginx'i seadistuse probleemiga seotud vead esinevad endiselt reaalses projektis. NĂ€iteks tuvastati probleem Bitwarden'i paroolihalduri serveripoolses osas, mis vĂ”is vĂ”imaldada juurdepÀÀsu kĂ”ikidele failidele kaustas /etc/bitwarden (pĂ€ringud /attachments anti vĂ€lja kaustast /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 Toolkit'is, kus pĂ€ringud /static suunati katalooge â../hpc-toolkit/community/front-end/website/static/â. RĂŒnnatud isik sai saata pĂ€ringud â/static..../.secret_keyâ ja â/static..../db.sqlite3â, et saada andmebaasi koos privaatvĂ”tme ja sisselogimisega.

Allikas: opennet.ru
