lëshuar curl 7.71.0, duke rregulluar dy dobësi

Në dispozicion versioni i ri i mjetit për marrjen dhe dërgimin e të dhënave përmes rrjetit - curl 7.71.0, i cili ofron mundësinë për të formuluar në mënyrë fleksibël një kërkesë duke specifikuar parametra të tillë si cookie, user_agent, referer dhe çdo titull tjetër. cURL mbështet HTTP, HTTPS, HTTP/2.0, HTTP/3, SMTP, IMAP, POP3, Telnet, FTP, LDAP, RTSP, RTMP dhe protokolle të tjera të rrjetit. Në të njëjtën kohë, u lëshua një përditësim për bibliotekën libcurl, e cila po zhvillohet paralelisht, duke siguruar një API për përdorimin e të gjitha funksioneve curl në programe në gjuhë të tilla si C, Perl, PHP, Python.

Publikimi i ri shton opsionin "--provo-të gjitha-gabimet" për të riprovuar operacionet nëse ndodh ndonjë gabim dhe rregullon dy dobësi:

  • Prekshmëria CVE-2020-8177 ju lejon të mbishkruani një skedar lokal në sistem kur hyni në një server të kontrolluar nga sulmuesi. Problemi shfaqet vetëm kur opsionet "-J" ("–remote-header-name") dhe "-i" ("-head") përdoren njëkohësisht. Opsioni "-J" ju lejon të ruani skedarin me emrin e specifikuar në kokë
    "Përmbajtja-Dispozita". Nëse një skedar me të njëjtin emër ekziston tashmë, programi curl normalisht refuzon të kryejë një mbishkrim, por nëse opsioni "-i" është i pranishëm, logjika e kontrollit prishet dhe skedari mbishkruhet (kontrolli kryhet në fazën të marrjes së trupit të përgjigjes, por me opsionin “-i” titujt HTTP shfaqen fillimisht dhe kanë kohë për t'u ruajtur përpara se trupi i përgjigjes të fillojë të përpunohet). Vetëm titujt HTTP shkruhen në skedar, por serveri mund të dërgojë të dhëna arbitrare në vend të titujve dhe ato do të shkruhen.

  • Prekshmëria CVE-2020-8169 mund të çojë në një rrjedhje në serverin DNS të disa prej fjalëkalimeve të aksesit të sajtit (Basic, Digest, NTLM, etj.). Duke përdorur simbolin "@" në një fjalëkalim, i cili përdoret gjithashtu si ndarës i fjalëkalimit në URL, kur aktivizohet një ridrejtim HTTP, curl do të dërgojë pjesën e fjalëkalimit pas simbolit "@" së bashku me domenin për të zgjidhur Emri. Për shembull, nëse jepni fjalëkalimin "passw@rd123" dhe emrin e përdoruesit "dan", curl do të gjenerojë URL-në "https://dan:passw@[email mbrojtur]/path" në vend të "https://dan:passw%[email mbrojtur]/ path" dhe do të dërgojë një kërkesë për të zgjidhur hostin "[email mbrojtur]" në vend të "example.com".

    Problemi shfaqet kur aktivizohet mbështetja për ridrejtues të afërm HTTP (çaktivizohet nëpërmjet CURLOPT_FOLLOWLOCATION). Nëse përdoret DNS tradicionale, informacioni për një pjesë të fjalëkalimit mund të merret nga ofruesi i DNS dhe nga një sulmues që ka aftësinë të përgjojë trafikun e rrjetit transit (edhe nëse kërkesa origjinale ishte nëpërmjet HTTPS, pasi trafiku DNS nuk është i koduar). Kur përdoret DNS-mbi-HTTPS (DoH), rrjedhja kufizohet te operatori DoH.

Burimi: opennet.ru

Shto një koment