
CVE-2022-31147 es una vulnerabilidad de path traversal en matthiasmullie/minify. Esta guía ayuda a los equipos de seguridad a probar la lectura arbitraria de archivos en Linux y Windows usando Python y curl. Cubre la generación automatizada de payloads, la validación manual y las prácticas seguras para la evaluación de vulnerabilidades.
Esta guía proporciona metodologías integrales para probar CVE-2022-31147, una vulnerabilidad crítica de path traversal que afecta a la biblioteca ampliamente utilizada matthiasmullie/minify. La vulnerabilidad permite a los atacantes explotar una sanitización insuficiente de entrada en el endpoint minify, potencialmente permitiendo operaciones de lectura arbitraria de archivos tanto en servidores Linux como Windows. Esta guía está diseñada para profesionales de seguridad, testers de penetración e investigadores que buscan evaluar la exposición de aplicaciones web a esta amenaza.
El núcleo de la guía es un script automatizado de prueba de concepto en Python, que genera y prueba sistemáticamente una amplia variedad de payloads de traversal. Estos payloads utilizan varias profundidades de directory traversal (../), múltiples esquemas de codificación (como URL encoding y doble encoding) y variaciones de endpoints (incluyendo extensiones falsas y parámetros de consulta) para eludir mecanismos comunes de enrutamiento y filtrado. Al aprovechar estas técnicas, el script maximiza la probabilidad de detectar configuraciones vulnerables, incluso en entornos protegidos por firewalls de aplicaciones web básicos o lógica de enrutamiento personalizada.
La precisión de la detección se mejora aún más mediante heurísticas integradas que analizan el contenido de la respuesta en busca de marcadores de archivos conocidos. Para objetivos Linux, el script busca patrones típicos de /etc/passwd u otros archivos sensibles, mientras que para sistemas Windows, busca indicadores dentro de archivos como win.ini. Este enfoque asegura que la explotación exitosa sea identificada de manera confiable, minimizando falsos positivos y agilizando el proceso de validación.
Además de las pruebas automatizadas, la guía describe técnicas de validación manual utilizando curl, permitiendo a los profesionales crear y enviar solicitudes personalizadas para análisis específicos o para verificar hallazgos de forma independiente. Se enfatizan las recomendaciones para pruebas seguras y autorizadas a lo largo de la guía, incluyendo la importancia de realizar evaluaciones solo en sistemas para los cuales se haya otorgado permiso explícito.
La guía está diseñada para apoyar tanto la validación rápida como el análisis en profundidad, adaptándose a objetivos de archivos personalizados y estrategias avanzadas de bypass. Puede integrarse en flujos de trabajo más amplios de evaluación de vulnerabilidades, proporcionando información útil para la remediación y la gestión de riesgos. Siguiendo las metodologías presentadas, los equipos de seguridad pueden identificar, validar y abordar de manera efectiva las exposiciones a CVE-2022-31147 en sus entornos, fortaleciendo la postura de seguridad general de sus aplicaciones web.
python3 cve-2022-31147_poc.py --base https://yourdomain.tld/cdn/minify --linux --file /etc/passwd
python3 cve-2022-31147_poc.py --base https://yourdomain.tld/cdn/minify --windows --file C:\Windows\win.ini
Crea un archivo inofensivo en el servidor, luego intenta leerlo:
python3 cve-2022-31147_poc.py --base https://yourdomain.tld/cdn/minify --file /var/www/test.txt
curl -i "https://yourdomain.tld/cdn/minify/../../../../../../etc/passwd"
curl -i "https://yourdomain.tld/cdn/minify/../../../../../../windows/win.ini"
curl -i "https://yourdomain.tld/cdn/minify/%2e%2e/../%2e%2e/../../etc/passwd"
curl -i "https://yourdomain.tld/cdn/minify/../../../../../../etc/passwd.css"
https://yourdomain.tld/cdn/minify con la URL real de tu objetivo.