Lanzamiento de curl 7.71.0 con la corrección de dos vulnerabilidades

Disponible nueva versión de la utilidad para recibir y enviar datos a través de la red — curl 7.71.0, que proporciona la posibilidad de configurar dinámicamente la solicitud especificando parámetros como cookie, user_agent, referer y otros encabezados. cURL soporta HTTP, HTTPS, HTTP/2.0, HTTP/3, SMTP, IMAP, POP3, Telnet, FTP, LDAP, RTSP, RTMP y otros protocolos de red. También se lanzó una actualización de la biblioteca libcurl, que proporciona una API para acceder a todas las funciones de curl en programas en lenguajes como C, Perl, PHP, Python.

En esta nueva versión, se agregó la opción "—retry-all-errors" para intentar nuevamente ejecutar operaciones ante cualquier error y se solucionaron dos vulnerabilidades:

  • Vulnerabilidad CVE-2020-8177 permite sobrescribir un archivo local en el sistema al acceder a un servidor controlado por un atacante. El problema se presenta solo al usar simultáneamente las opciones "-J" ("—remote-header-name") y "-i" ("—head"). La opción "-J" permite guardar el archivo con el nombre especificado en el encabezado
    "Content-Disposition". En caso de que ya exista un archivo con ese nombre, el programa curl, por defecto, se niega a sobrescribirlo, pero al tener la opción "-i", la lógica de verificación se interrumpe y el archivo se sobrescribe (la verificación se lleva a cabo en la etapa de recepción del cuerpo de la respuesta, pero con la opción "-i" los encabezados HTTP se muestran primero y se guardan antes de que comience el procesamiento del cuerpo de la respuesta). Solo se registran los encabezados HTTP, pero el servidor puede devolver datos arbitrarios en lugar de encabezados y estos serán registrados.
  • Vulnerabilidad CVE-2020-8169 puede provocar una filtración en el servidor DNS de algunas contraseñas de acceso al sitio (Basic, Digest, NTLM, etc.). Al utilizar el símbolo “@” en la contraseña, que también se usa como separador de contraseña en la URL, al ejecutarse una redirección HTTP, curl enviará la parte de la contraseña después del símbolo “@” junto con el dominio para determinar el nombre. Por ejemplo, al especificar la contraseña “passw@rd123” y el nombre de usuario “dan”, curl generará la URL “https://dan:passw@rd123@example.com/path” en lugar de “https://dan:passwrd123@example.com/path” y enviará la solicitud para resolver el host “rd123@example.com” en lugar de “example.com”.

    El problema se presenta al activar el soporte para redirecciones HTTP relativas (desactivadas mediante CURLOPT_FOLLOWLOCATION). En caso de utilizar DNS tradicionales, el proveedor de DNS y un atacante con capacidad para interceptar el tráfico de red en tránsito pueden obtener parte de la contraseña (incluso si la solicitud original se realizó a través de HTTPS, ya que el tráfico DNS no está cifrado). Al aplicar DNS-over-HTTPS (DoH), la filtración se limita al operador de DoH.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster