curl 7.71.0 uitgebracht, waarmee twee kwetsbaarheden zijn opgelost

Beschikbaar nieuwe versie van het hulpprogramma voor het ontvangen en verzenden van gegevens via het netwerk - krul 7.71.0, dat de mogelijkheid biedt om flexibel een verzoek te formuleren door parameters op te geven zoals cookie, user_agent, referer en eventuele andere headers. cURL ondersteunt HTTP, HTTPS, HTTP/2.0, HTTP/3, SMTP, IMAP, POP3, Telnet, FTP, LDAP, RTSP, RTMP en andere netwerkprotocollen. Tegelijkertijd is er een update uitgebracht voor de libcurl-bibliotheek, die parallel wordt ontwikkeld, en die een API biedt voor het gebruik van alle curl-functies in programma's in talen als C, Perl, PHP, Python.

De nieuwe release voegt de optie “--retry-all-errors” toe om bewerkingen opnieuw te proberen als er fouten optreden en lost twee kwetsbaarheden op:

  • Kwetsbaarheid CVE-2020-8177 Hiermee kunt u een lokaal bestand in het systeem overschrijven wanneer u toegang krijgt tot een server die wordt beheerd door de aanvaller. Het probleem doet zich alleen voor als de opties “-J” (“–remote-header-name”) en “-i” (“—head”) gelijktijdig worden gebruikt. Met de optie "-J" kunt u het bestand opslaan met de naam die in de header is opgegeven
    "Inhoud-dispositie". Als er al een bestand met dezelfde naam bestaat, weigert het curl-programma normaal gesproken een overschrijving uit te voeren, maar als de optie “-i” aanwezig is, wordt de controlelogica verbroken en wordt het bestand overschreven (de controle wordt uitgevoerd in de fase van het ontvangen van de antwoordtekst, maar met de “-i” optie worden HTTP-headers eerst weergegeven en hebben ze tijd om te worden opgeslagen voordat de antwoordtekst begint te worden verwerkt). Er worden alleen HTTP-headers naar het bestand geschreven, maar de server kan willekeurige gegevens verzenden in plaats van headers en deze worden geschreven.

  • Kwetsbaarheid CVE-2020-8169 kan leiden tot een lek naar de DNS-server van sommige toegangswachtwoorden voor de site (Basic, Digest, NTLM, enz.). Door het "@"-symbool in een wachtwoord te gebruiken, dat ook wordt gebruikt als wachtwoordscheidingsteken in de URL, zal curl, wanneer een HTTP-omleiding wordt geactiveerd, het deel van het wachtwoord na het "@"-symbool samen met het domein verzenden om op te lossen de naam. Als u bijvoorbeeld het wachtwoord "passw@rd123" en de gebruikersnaam "dan" opgeeft, genereert curl de URL "https://dan:passw@[e-mail beveiligd]/pad" in plaats van "https://dan:passw%[e-mail beveiligd]/path" en zal een verzoek sturen om de host op te lossen "[e-mail beveiligd]" in plaats van "voorbeeld.com".

    Het probleem doet zich voor wanneer ondersteuning voor relatieve HTTP-redirectors is ingeschakeld (uitgeschakeld via CURLOPT_FOLLOWLOCATION). Als traditionele DNS wordt gebruikt, kan informatie over een deel van het wachtwoord worden verkregen door de DNS-provider en door een aanvaller die het vermogen heeft om transitnetwerkverkeer te onderscheppen (zelfs als het oorspronkelijke verzoek via HTTPS was, aangezien DNS-verkeer niet gecodeerd is). Wanneer DNS-over-HTTPS (DoH) wordt gebruikt, blijft het lek beperkt tot de DoH-operator.

Bron: opennet.ru

Voeg een reactie