Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en "HttpAuthMiddleware" en Scrapy (CVE-2021-41125)

Gravedad CVSS v3.1:
MEDIA
Tipo:
CWE-522 Credenciales insuficientemente protegidas
Fecha de publicación:
06/10/2021
Última modificación:
22/04/2022

Descripción

Scrapy es un marco de trabajo de alto nivel para el rastreo de la web y el scraping para Python. Si usa "HttpAuthMiddleware" (es decir, los atributos de araña "http_user" y "http_pass") para la autenticación HTTP, todas las peticiones expondrán sus credenciales al objetivo de la petición. Esto incluye las peticiones generadas por los componentes de Scrapy, como las peticiones "robots.txt" enviadas por Scrapy cuando la configuración "ROBOTSTXT_OBEY" se establece en "True", o como las peticiones alcanzadas a través de redirecciones. Actualice a Scrapy 2.5.1 y use el nuevo atributo de araña "http_auth_domain" para controlar qué dominios pueden recibir las credenciales de autenticación HTTP configuradas. Si está usando Scrapy versión 1.8 o una versión inferior, y la actualización a Scrapy versión 2.5.1 no es una opción, puede actualizar a Scrapy versión 1.8.1 en su lugar. Si no puede actualizar, establezca sus credenciales de autenticación HTTP por petición, usando por ejemplo la función "w3lib.http.basic_auth_header" para convertir sus credenciales en un valor que pueda asignar al encabezado "Authorization" de su petición, en lugar de definir sus credenciales globalmente usando "HttpAuthMiddleware"

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:scrapy:scrapy:*:*:*:*:*:*:*:* 1.8.1 (excluyendo)
cpe:2.3:a:scrapy:scrapy:*:*:*:*:*:*:*:* 2.0.0 (incluyendo) 2.5.1 (excluyendo)
cpe:2.3:o:debian:debian_linux:9.0:*:*:*:*:*:*:*