
Herramienta de evaluación de vulnerabilidades y compromiso para CVE-2025-31324 y CVE-2025-42999
Onapsis y Mandiant han colaborado para publicar una herramienta de código abierto que ayuda a los clientes de SAP a identificar posibles compromisos relacionados con CVE-2025-31324 y CVE-2025-42999, una vulnerabilidad crítica de día cero en los sistemas SAP NetWeaver Java.
Esta herramienta está pensada para la ejecución local white-box por parte de administradores de sistemas con acceso a entornos potencialmente afectados. Permite realizar evaluación de vulnerabilidades, evaluación básica de compromiso y recopilación de artefactos.
Actualmente, esta herramienta admite las siguientes funcionalidades:
INFORMACIÓN DE LICENCIA: Esta herramienta se publica bajo la licencia de código abierto Apache 2.0. Consulte la información de licencia incluida.
DESCARGO DE RESPONSABILIDAD: Esta herramienta se desarrolló para apoyar los esfuerzos urgentes de investigación y respuesta relacionados con la explotación activa de CVE-2025-31324 y CVE-2025-42999. A partir del 6 de junio de 2025, esta herramienta ya no está en desarrollo activo ni bajo supervisión. Permanece disponible para futuras tareas de depuración y referencia; sin embargo, no recibirá más actualizaciones, mejoras ni soporte continuo. Los usuarios deben evaluar su aplicabilidad según sus necesidades actuales y utilizarla bajo su propio criterio.
Esta herramienta automatiza la comprobación de información sobre vulnerabilidades e IOC en un sistema operativo en vivo, con los permisos del usuario que ejecuta el script. NO sustituye al análisis forense ni a la respuesta avanzada ante incidentes. Los atacantes sofisticados suelen eliminar las evidencias de su intrusión mientras implementan rootkits y utilizan técnicas para evadir la detección.
Esta herramienta se proporciona tal cual, sin garantía ni responsabilidad. Úsela bajo su propio riesgo.
Los scripts están desarrollados en Python 3 y requieren que instale las siguientes dependencias:
python3 -m venv .venv
. .venv/bin/activate
pip install -r requirements.txt
Una vez que instale las dependencias, puede usar Python para ejecutar los scripts y obtener ayuda desde la línea de comandos.
# Sintaxis: python3 <tool_name>.py <path> [--single] [--offline]
Parámetros de escaneo:
<path> --- Hace referencia al directorio raíz del sistema de archivos de la aplicación SAP que desea escanear. Debe ser la base del sistema SAP, ya sea desde una copia de seguridad montada o un entorno en vivo.--single --- Ejecuta un escaneo para un directorio SID/Instancia individual (no el directorio raíz o base de SAP con múltiples sistemas o instancias)--offline --- Se ejecuta sin conexión a internet (sin verificación de actualizaciones contra la API de GitHub)Para obtener una lista completa de opciones y parámetros de la línea de comandos, use el parámetro --help.
[!IMPORTANT] Esta herramienta escanea archivos bajo el sistema de archivos del servidor JAVA según lo especificado en la Nota de Seguridad SAP 3593336:
C:\usr\sap\<SID>\<InstanceID>\j2ee\cluster\apps\sap.com\irj\servlet_jsp\irj\rootC:\usr\sap\<SID>\<InstanceID>\j2ee\cluster\apps\sap.com\irj\servlet_jsp\irj\workC:\usr\sap\<SID>\<InstanceID>\j2ee\cluster\apps\sap.com\irj\servlet_jsp\irj\work\syncSi la ruta proporcionada es un sistema de archivos en vivo raíz (por ejemplo
/oC:\), la herramienta esperará el directorio de instalación SAP estándar/usr/sap. Luego, la herramienta escaneará todos los subdirectorios<SID>/<INSTANCE>/por defecto (utilizando comodines).Si se realiza un escaneo parcial, use
--singley especifique la ruta completa a la carpeta de instancia que contiene el directorio SAP Javaj2ee.
[!CAUTION] Este diseño está pensado para escanear todos los posibles archivos sospechosos en todos los SID / Instancias, evitando la detección incorrecta de archivos conocidos. Cualquier archivo fuera de esta estructura de carpetas estándar no será detectado, y se generará un error si no se encuentra el subdirectorio
j2ee.También se espera que el manifiesto del componente esté en el subdirectorio estándar
j2ee/cluster/apps/sap.com/devserver_metadataupload_ear/. Si no se encuentra, no se analizará contra versiones vulnerables sin parchear.La ruta esperada de registros es
j2ee/cluster/<SERVER>/log/system/httpaccess/, con archivos denominadosresponsesy extensióntrcpara el formato de registro propietario de SAP. Se espera el sufijo-clfpara los archivos en Common Log Format. Si no se encuentra, se generará un mensaje de error/advertencia.
Sistema de archivos montado en /mnt/sapserver (componente vulnerable, escaneo de instancia única para SID J00):
python3 onapsis-mandiant-CVE-2025-31324-vuln-compromise-assessment.py /mnt/sapserver/usr/sap/SID/J00 --single