Curl-Version 7.71.0 mit Behebung von zwei Sicherheitsanfälligkeiten

Verfügbar neue Version des Dienstprogramms zum Empfang und Versenden von Daten über das Netzwerk — curl 7.71.0, die die flexible Formulierung von Anfragen mit Parametern wie Cookie, User-Agent, Referer und anderen Headern ermöglicht. cURL unterstützt HTTP, HTTPS, HTTP/2.0, HTTP/3, SMTP, IMAP, POP3, Telnet, FTP, LDAP, RTSP, RTMP und andere Netzwerkprotokolle. Gleichzeitig wurde ein Update für die parallel entwickelte Bibliothek libcurl veröffentlicht, die eine API zum Zugriff auf alle Funktionen von curl in Programmen in Sprachen wie C, Perl, PHP, Python bereitstellt.

In der neuen Version wurde die Option „—retry-all-errors“ hinzugefügt, um bei Auftreten jeglicher Fehler Wiederholungsversuche bei der Ausführung von Operationen zu ermöglichen, und zwei Schwachstellen wurden behoben:

  • Schwachstelle CVE-2020-8177 ermöglicht das Überschreiben einer lokalen Datei im System, wenn auf einen von einem Angreifer kontrollierten Server zugegriffen wird. Das Problem tritt nur bei gleichzeitiger Verwendung der Optionen „-J“ („—remote-header-name“) und „-i“ („—head“) auf. Die Option „-J“ ermöglicht das Speichern der Datei unter dem im Header angegebenen Namen.
    „Content-Disposition“. Falls eine Datei mit diesem Namen bereits existiert, verweigert das Programm curl normalerweise das Überschreiben. Bei Verwendung der Option „-i“ wird jedoch die Überprüfungslogik umgangen, und die Datei wird überschrieben (die Überprüfung erfolgt beim Empfang des Antwortinhalts, aber bei der Option „-i“ werden zunächst die HTTP-Header ausgegeben, und diese werden gespeichert, bevor der Inhalt der Antwort verarbeitet wird). Es werden nur die HTTP-Header in die Datei geschrieben, der Server kann aber anstelle von Headern beliebige Daten zurückgeben und diese werden ebenfalls gespeichert.
  • Schwachstelle CVE-2020-8169 kann dazu führen, dass Teile einiger Zugangspasswörter zum Server DNS (Basic, Digest, NTLM usw.) auf die Webseite geleakt werden. Wenn das Zeichen „@“ im Passwort verwendet wird, das ebenfalls als Trennzeichen im URL-Passwort benutzt wird, wird bei einer HTTP-Umleitung curl den Teil des Passworts nach dem „@“ zusammen mit der Domain für die Bestimmung des Namens senden. Zum Beispiel, wenn das Passwort „passw@rd123“ und der Benutzername „dan“ angegeben werden, generiert curl die URL „https://dan:passw@rd123@example.com/path“ anstelle von „https://dan:passwrd123@example.com/path“ und sendet die Anfrage zur Auflösung des Hosts „rd123@example.com“ anstelle von „example.com“.

    Das Problem tritt auf, wenn die Unterstützung für relative HTTP-Redirects aktiviert ist (deaktiviert über CURLOPT_FOLLOWLOCATION). Bei der Verwendung traditioneller DNS kann der DNS-Anbieter Informationen über Teile des Passworts und ein Angreifer, der in der Lage ist, den Transitnetzwerkverkehr abzufangen (auch wenn die ursprüngliche Anfrage über HTTPS erfolgte, da der DNS-Verkehr nicht verschlüsselt ist), erhalten. Bei der Verwendung von DNS-over-HTTPS (DoH) ist das Leck auf den DoH-Anbieter beschränkt.

Quelle: opennet.ru

60GB SSD 8Gb DDR4