Ang kahuyangan sa pag-configure sa Nginx nga adunay dili husto nga mga setting sa block sa alyas

Ang ubang mga server sa Nginx nagpabilin nga huyang sa Nginx Alias ​​​​Traversal technique, nga gisugyot sa Blackhat conference balik sa 2018 ug nagtugot sa pag-access sa mga file ug mga direktoryo nga nahimutang sa gawas sa root directory nga gitakda sa "alias" nga direktiba. Ang problema makita lamang sa mga pag-configure nga adunay "alyas" nga direktiba nga gibutang sa sulod sa usa ka "lokasyon" block kansang parameter dili matapos sa usa ka "/" nga karakter, samtang ang "alias" natapos sa usa ka "/".

Ang kahuyangan sa pag-configure sa Nginx nga adunay dili husto nga mga setting sa block sa alyas

Ang esensya sa problema mao nga ang mga file alang sa mga bloke nga adunay alyas nga direktiba gisilbi pinaagi sa paglakip sa gihangyo nga agianan, pagkahuman itandi kini sa maskara gikan sa direktiba sa lokasyon ug giputol ang bahin sa agianan nga gitakda sa kini nga maskara. Alang sa pananglitan sa usa ka huyang nga pag-configure nga gipakita sa ibabaw, ang usa ka tig-atake mahimong makahangyo sa file nga "/img../test.txt" ug kini nga hangyo mahulog sa ilawom sa maskara nga "/img" nga gipiho sa lokasyon, pagkahuman ang nahabilin nga ikog ".. /test.txt” ilakip sa agianan gikan sa alias direktiba β€œ/var/images/” ug sa kadugayan mohangyo sa file nga β€œ/var/images/../test.txt”. Sa ingon, ang mga tig-atake mahimong maka-access sa bisan unsang mga file sa "/var" nga direktoryo, ug dili lamang sa mga file sa "/var/images/", pananglitan, aron ma-download ang nginx log, mahimo nimong ipadala ang hangyo "/img../log/ nginx/ access.log".

Sa mga pag-configure diin ang bili sa alias nga direktiba wala matapos sa usa ka "/" nga karakter (pananglitan, "alias /var/images;"), ang tig-atake dili makausab ngadto sa ginikanan nga direktoryo, apan makahangyo ug laing direktoryo sa /var kansang ngalan nagsugod sa parehas nga gitakda sa configuration. Pananglitan, pinaagi sa paghangyo sa "/img.old/test.txt" mahimo nimong ma-access ang direktoryo nga "var/images.old/test.txt".

Ang pagtuki sa mga repositoryo sa GitHub nagpakita nga ang mga kasaypanan sa nginx configuration nga mosangpot sa problema mahitabo gihapon sa tinuod nga mga proyekto. Pananglitan, ang problema giila sa backend sa Bitwarden password manager ug mahimong magamit sa pag-access sa tanang mga file sa /etc/bitwarden directory (/ attachment requests kay gi-issue gikan sa / etc/bitwarden/attachments/), lakip ang β€œvault . db", sertipiko ug mga log, aron makuha kung diin kini igo aron ipadala ang mga hangyo "/attachments../vault.db", "/attachments../identity.pfx", "/attachments../logs/api.log ", ug uban pa..P.

Ang kahuyangan sa pag-configure sa Nginx nga adunay dili husto nga mga setting sa block sa alyas
Ang kahuyangan sa pag-configure sa Nginx nga adunay dili husto nga mga setting sa block sa alyas

Ang pamaagi nagtrabaho usab sa Google HPC Toolkit, nga nag-redirect / static nga mga hangyo sa "../hpc-toolkit/community/front-end/website/static/" nga direktoryo. Aron makakuha og database nga adunay pribadong yawe ug mga kredensyal, ang usa ka tig-atake mahimong magpadala sa mga hangyo "/static../.secret_key" ug "/static../db.sqlite3".

Ang kahuyangan sa pag-configure sa Nginx nga adunay dili husto nga mga setting sa block sa alyas


Source: opennet.ru

Idugang sa usa ka comment