Një vektor i ri sulmi është gjetur për serverin Apache http, i cili mbeti i pakorrigjuar në përditësimin 2.4.50 dhe lejon aksesin në skedarë nga zona jashtë drejtorisë rrënjësore të faqes. Përveç kësaj, studiuesit kanë gjetur një metodë që lejon, në prani të disa cilësimeve jo standarde, jo vetëm të lexoni skedarët e sistemit, por edhe të ekzekutoni nga distanca kodin e tyre në server. Problemi shfaqet vetëm në versionet 2.4.49 dhe 2.4.50, versionet e mëparshme nuk preken. Për të eliminuar cenueshmërinë e re, Apache httpd 2.4.51 u lëshua shpejt.
Problemi i ri (CVE-2021-42013) është në thelb identik me dobësinë origjinale (CVE-2021-41773) në versionin 2.4.49, me ndryshimin e vetëm që është kodimi i ndryshëm i karaktereve ".." Në mënyrë specifike, versioni 2.4.50 bllokoi mundësinë për të përdorur sekuencën "%2e" për të koduar një pikë, por humbi mundësinë për ta koduar atë dy herë kur specifikohej sekuenca "%%32%65". server e dekodova atë në "%2e" dhe pastaj në ".", d.m.th. karakteret "../" për të shkuar në drejtorinë e mëparshme mund të kodoheshin si ".%%32%65/".
Sa i pĂ«rket shfrytĂ«zimit tĂ« cenueshmĂ«risĂ« pĂ«rmes ekzekutimit tĂ« kodit, kjo Ă«shtĂ« e mundur kur mod_cgi Ă«shtĂ« i aktivizuar dhe pĂ«rdoret rruga bazĂ« nĂ« tĂ« cilĂ«n lejohet ekzekutimi i skripteve CGI (pĂ«r shembull, nĂ«se direktiva ScriptAlias ââĂ«shtĂ« e aktivizuar ose flamuri ExecCGI Ă«shtĂ« specifikuar nĂ« Direktiva e opsioneve). NjĂ« kĂ«rkesĂ« e detyrueshme pĂ«r njĂ« sulm tĂ« suksesshĂ«m Ă«shtĂ« gjithashtu ofrimi i qartĂ« i aksesit nĂ« drejtoritĂ« me skedarĂ« tĂ« ekzekutueshĂ«m, si /bin, ose akses nĂ« rrĂ«njĂ«n e sistemit tĂ« skedarĂ«ve "/" nĂ« cilĂ«simet e Apache. MeqenĂ«se njĂ« akses i tillĂ« zakonisht nuk jepet, sulmet e ekzekutimit tĂ« kodit kanĂ« pak aplikim nĂ« sistemet reale.
Në të njëjtën kohë, sulmi për të marrë përmbajtjen e skedarëve arbitrar të sistemit dhe teksteve burimore të skripteve në internet, të lexueshme nga përdoruesi nën të cilin po funksionon serveri http, mbetet i rëndësishëm. Për të kryer një sulm të tillë, mjafton të keni një direktori në sit të konfiguruar duke përdorur direktivat "Alias" ose "ScriptAlias" (DocumentRoot nuk mjafton), si "cgi-bin".
NjĂ« shembull i njĂ« shfrytĂ«zimi qĂ« ju lejon tĂ« ekzekutoni programin "id" nĂ« server: curl 'http://192.168.0.1/cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/bin/sh' âdata 'echo Lloji i PĂ«rmbajtjes: tekst/plain; echo; id' uid=1(daemon) gid=1(daemon) groups=1(daemon)
Një shembull i shfrytëzimeve që ju lejon të shfaqni përmbajtjen e /etc/passwd dhe një nga skriptet e uebit (për të nxjerrë kodin e skriptit, duhet të specifikohet drejtoria e përcaktuar përmes direktivës "Alias", për të cilën ekzekutimi i skriptit nuk është i aktivizuar. si direktoria bazë): curl 'http://192.168.0.1 .32/cgi-bin/.%%65%32/.%%65%32/.%%65%32/.%%65%32/.% %65%192.168.0.1/etc/passwd' curl 'http: //32/aliaseddir/.%%65%32/.%%65%32/.%%65%32/.%%65%32/. %%65%2/usr/local/apacheXNUMX/cgi -bin/test.cgi'
Problemi prek kryesisht shpërndarjet që përditësohen vazhdimisht, siç janë Fedora, Arch. Linux dhe Gentoo, si dhe portet FreeBSD. Paketat në degët e qëndrueshme të shpërndarjeve konservatore të serverëve. Debian, RHEL, Ubuntu dhe SUSE nuk janë të cenueshëm. Problemi nuk ndodh nëse qasja në drejtori mohohet në mënyrë të qartë duke përdorur cilësimin "kërkon të gjitha të deniuara".
Burimi: opennet.ru
