Veel üks haavatavust Apache httpd, mis võimaldab pääseda ligi veebisaidi juurkataloogist väljapoole.

Avastatud uut rünnakusuunda Apache HTTP-serverile, mis jäi parandamata versioonis 2.4.50 ja lubab pääseda ligi failidele, mis asuvad veebisaidi juurkataloogist väljapoole. Lisaks leidsid teadlased viisi, mis võimaldab teatud ebatavaliste seadistuste korral mitte ainult süsteemifaile lugeda, vaid ka serveris oma koodi kaugelt käivitada. Probleem avaldub ainult versioonides 2.4.49 ja 2.4.50; varasemad versioonid ei ole haavatavad. Uue haavatavuse variandi kõrvaldamiseks on kiiresti välja antud versioon Apache httpd 2.4.51.

По своей сути новая проблема (CVE-2021-42013) полностью аналогична изначальной уязвимости (CVE-2021-41773) в 2.4.49, разница лишь в иной кодировке символов «..». В частности, в выпуске 2.4.50 была заблокирована возможность использования последовательности «%2e» для кодирования точки, но упущена возможность двойного кодирования — при указании последовательности «%%32%65» server декодировал её в «%2e», а затем в «.», т.е. символы «../» для перехода в предыдущий каталог можно было закодировать как «.%%32%65/».

Kuna haavatavuse kasutamine koodide täitamiseks on võimalik ainult mod_cgi aktiveerimise ja põhitee kasutamise korral, kus CGI-skripti täitmine on lubatud (näiteks kui on aktiveeritud ScriptAlias direktiiv või ExecCGI lipp Options direktiivis). Eduka rünnaku jaoks on samuti vajalik selge juurdepääs Apache seadetesse täidesaatavatele failikaustadele, nagu /bin, või juur FS-le "/". Kuna tavaliselt sellist juurdepääsu ei anta, on koodide täitmise rünnak reaalsetes süsteemides vähe rakendatav.

Sellest hoolimata on jätkuvalt aktuaalne rünnak, mis võimaldab pääseda ligi mis tahes süsteemi failide ja veebiskriptide lähtekoodide sisule, mis on loetavad kasutajale, kelle alt HTTP-server töötab. Selle rünnaku teostamiseks piisab, kui sait sisaldab katalooge, mis on seadistatud Alias või ScriptAlias direktiivide abil (DocumentRoot ei piisa), nagu "cgi-bin".

Näide eksploitist, mis võimaldab täita utiliiti "id" aadressil serveril: curl ‘http://192.168.0.1/cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/bin/sh’ —data ‘echo Content-Type: text/plain; echo; id’ uid=1(daemon) gid=1(daemon) groups=1(daemon)

Пример эксплоитов, позволяющего вывести содержимое /etc/passwd и одного из web-скриптов (для отдачи кода скриптов в качестве базового должен быть указан определённый через директиву «Alias» каталог, для которого не включено исполнение скриптов): curl ‘http://192.168.0.1/cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/etc/passwd’ curl ‘http://192.168.0.1/aliaseddir/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/usr/local/apache2/cgi-bin/test.cgi’

Probleem puudutab peamiselt pidevalt uuendatavaid jaotusi, nagu Fedora, Arch Linux ja Gentoo, samuti FreeBSD pordid. Stabiilsete harude paketid konservatiivsetes serveri jaotustes, nagu Debian, RHEL, Ubuntu ja SUSE, ei ole haavatavad. Probleem ei esine, kui kaustadele on juurdepääs selgelt keelatud seadistuse „require all denied“ abil.

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster