Vulnerabilidad en urllib3 (CVE-2024-37891)
Gravedad CVSS v3.1:
MEDIA
Tipo:
CWE-669
Transferencia incorrecta de recursos entre esferas
Fecha de publicación:
17/06/2024
Última modificación:
20/06/2024
Descripción
urllib3 es una librería cliente HTTP fácil de usar para Python. Cuando se utiliza el soporte de proxy de urllib3 con `ProxyManager`, el encabezado `Proxy-Authorization` solo se envía al proxy configurado, como se esperaba. Sin embargo, al enviar solicitudes HTTP *sin* utilizar el soporte de proxy de urllib3, es posible configurar accidentalmente el encabezado `Proxy-Authorization` aunque no tendrá ningún efecto ya que la solicitud no utiliza un proxy de reenvío o un proxy de túnel. En esos casos, urllib3 no trata el encabezado HTTP "Proxy-Authorization" como si llevara material de autenticación y, por lo tanto, no elimina el encabezado en redirecciones de origen cruzado. Dado que se trata de un escenario muy improbable, creemos que la gravedad de esta vulnerabilidad es baja para casi todos los usuarios. Por precaución, urllib3 eliminará automáticamente el encabezado "Proxy-Authorization" durante las redirecciones entre orígenes para evitar la pequeña posibilidad de que los usuarios hagan esto por accidente. Los usuarios deben usar el soporte de proxy de urllib3 o desactivar las redirecciones automáticas para lograr un procesamiento seguro del encabezado `Proxy-Authorization`, pero aun así decidimos eliminar el encabezado de forma predeterminada para proteger aún más a los usuarios que no utilizan el enfoque correcto. Creemos que la cantidad de usos afectados por este aviso es baja. Requiere que todo lo siguiente sea cierto para ser explotado: 1. Configurar el encabezado `Proxy-Authorization` sin utilizar el soporte de proxy integrado de urllib3. 2. No deshabilitar las redirecciones HTTP. 3. Ya sea no utilizar un servidor de origen HTTPS o que el proxy o el origen de destino redirija a un origen malicioso. Se recomienda a los usuarios que actualicen a la versión 1.26.19 o a la versión 2.2.2. Los usuarios que no puedan actualizar pueden usar el encabezado `Proxy-Authorization` con `ProxyManager` de urllib3, deshabilitar las redirecciones HTTP usando `redirects=False` al enviar solicitudes o no usar el encabezado `Proxy-Authorization` como mitigación.
Impacto
Puntuación base 3.x
4.40
Gravedad 3.x
MEDIA