Бүркеншік аттың блоктауының қате параметрлері бар Nginx конфигурациясының осалдығы

Nginx бар кейбір серверлер 2018 жылы Blackhat конференциясында ұсынылған және «бүркеншік ат» директивасында көрсетілген түбірлік каталогтан тыс орналасқан файлдар мен каталогтарға қол жеткізуге мүмкіндік беретін Nginx Alias ​​​​Traversal техникасына осал болып қалады. Мәселе тек «орын» блогының ішіне орналастырылған «бүркеншік ат» директивасы бар конфигурацияларда пайда болады, оның параметрі «/» таңбасымен аяқталмайды, ал «бүркеншік ат» «/» белгісімен аяқталады.

Бүркеншік аттың блоктауының қате параметрлері бар Nginx конфигурациясының осалдығы

Мәселенің мәні мынада: лақап ат директивасы бар блоктарға арналған файлдар сұралған жолды тіркеп, оны орналасу директивасындағы маскамен сәйкестендіріп, осы маскада көрсетілген жол бөлігін кесіп тастағаннан кейін беріледі. Жоғарыда көрсетілген осал конфигурацияның мысалы үшін шабуылдаушы "/img../test.txt" файлын сұрай алады және бұл сұрау "/img" орнында көрсетілген маскаға сәйкес келеді, содан кейін қалған "../". test.txt" "/var/images/" бүркеншік ат директивасынан жолға тіркеледі және нәтижесінде "/var/images/../test.txt" файлы сұралады. Осылайша, шабуылдаушылар «/var/images/» ішіндегі файлдарға ғана емес, «/var» каталогындағы кез келген файлдарға қол жеткізе алады, мысалы, nginx журналын жүктеп алу үшін «/img../log/ сұрауын жіберуге болады. nginx/ access.log».

Бүркеншік ат директивасының мәні «/» таңбасымен аяқталмайтын конфигурацияларда (мысалы, «бүркеншік ат /var/images;») шабуылдаушы негізгі каталогқа ауыса алмайды, бірақ /var ішінде басқа каталогты сұрай алады. аты конфигурацияда көрсетілгеннен басталатын. Мысалы, "/img.old/test.txt" сұрау арқылы сіз "var/images.old/test.txt" каталогына қол жеткізе аласыз.

GitHub репозиторийлерінің талдауы nginx конфигурациясындағы ақаулыққа әкелетін қателер әлі де нақты жобаларда кездесетінін көрсетті. Мысалы, Bitwarden құпия сөз реттеушісінің серверінде ақаудың болуы анықталды және оны /etc/bitwarden каталогындағы барлық файлдарға қатынасу үшін пайдалануға болады (/тіркемелерге сұраулар /etc/bitwarden/attachments/ сайтынан берілді), «/attachments../vault.db», «/attachments../identity.pfx», «/attachments сұрауларын жіберу жеткілікті болатын «vault.db», сертификат және журналдармен сол жерде сақталған дерекқорды қоса алғанда. ../logs/api.log», т.б. .P.

Бүркеншік аттың блоктауының қате параметрлері бар Nginx конфигурациясының осалдығы
Бүркеншік аттың блоктауының қате параметрлері бар Nginx конфигурациясының осалдығы

Әдіс сонымен қатар /статикалық сұраулар "../hpc-toolkit/community/front-end/website/static/" каталогына қайта бағытталатын Google HPC Toolkit құралымен жұмыс істеді. Жеке кілті және тіркелгі деректері бар дерекқорды алу үшін шабуылдаушы "/static../.secret_key" және "/static../db.sqlite3" сұрауларын жібере алады.

Бүркеншік аттың блоктауының қате параметрлері бар Nginx конфигурациясының осалдығы


Ақпарат көзі: opennet.ru

пікір қалдыру