Ранливост на конфигурацијата Nginx со неточни поставки за блок на алијас

Некои сервери со nginx остануваат ранливи на техниката Nginx Alias ​​​​Traversal, која беше предложена на конференцијата Blackhat уште во 2018 година и овозможува пристап до датотеки и директориуми лоцирани надвор од root директориумот наведен во директивата „алијас“. Проблемот се појавува само во конфигурации со директива „алијас“ сместена во блокот „локација“, чиј параметар не завршува со знакот „/“, додека „алијас“ завршува со „/“.

Ранливост на конфигурацијата Nginx со неточни поставки за блок на алијас

Суштината на проблемот е што датотеките за блокови со директивата за алијас се даваат со прикачување на бараната патека, откако ќе се совпадне со маската од директивата за локација и ќе го отсече делот од патеката наведен во оваа маска. На примерот на ранлива конфигурација прикажана погоре, напаѓачот може да ја побара датотеката „/img../test.txt“ и ова барање ќе се совпадне со маската наведена во локацијата „/img“, по што преостанатата опашка „../test.txt“ ќе биде прикачена на патеката од директивата за алијас „/var/images/“ и како резултат на тоа ќе биде тестирана датотеката./images/“var/images/“vart./xt. Така, напаѓачите можат да пристапат до сите датотеки во директориумот „/var“, а не само до датотеките во „/var/images/“, на пример, за преземање на дневникот на nginx, можете да го испратите барањето „/img../log/nginx/access.log“.

Во конфигурации во кои вредноста на директивата за алијас не завршува со знакот „/“ (на пример, „алијас /var/images;“), напаѓачот не може да се смени во родителскиот директориум, но може да побара друг директориум во /var чие име започнува со оној наведен во конфигурацијата. На пример, со барање „/img.old/test.txt“ можете да пристапите до директориумот „var/images.old/test.txt“.

Анализата на складиштата на GitHub покажа дека грешките во конфигурацијата на nginx што доведуваат до проблемот сè уште се наоѓаат во вистински проекти. Пример ./identity.pfx“, „/atta chments../logs/api.log“ итн.

Ранливост на конфигурацијата Nginx со неточни поставки за блок на алијас
Ранливост на конфигурацијата Nginx со неточни поставки за блок на алијас

Методот работеше и со Google HPC Toolkit, каде што /static барањата беа пренасочени во директориумот „../hpc-toolkit/community/front-end/website/static/“. За да се добие база на податоци со приватен клуч и ингеренциите, напаѓачот може да испрати прашања „/static../.secret_key“ и „/static../db.sqlite3“.

Ранливост на конфигурацијата Nginx со неточни поставки за блок на алијас


Извор: opennet.ru

Додадете коментар