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"
Impacto
Puntuación base 3.x
6.50
Gravedad 3.x
MEDIA
Puntuación base 2.0
4.00
Gravedad 2.0
MEDIA
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:*:*:*:*:*:*:* |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página
Referencias a soluciones, herramientas e información
- http://doc.scrapy.org/en/latest/topics/downloader-middleware.html#module-scrapy.downloadermiddlewares.httpauth
- https://github.com/scrapy/scrapy/commit/b01d69a1bf48060daec8f751368622352d8b85a6
- https://github.com/scrapy/scrapy/security/advisories/GHSA-jwqp-28gf-p498
- https://lists.debian.org/debian-lts-announce/2022/03/msg00021.html
- https://w3lib.readthedocs.io/en/latest/w3lib.html#w3lib.http.basic_auth_header



