
Detección y remediación automatizadas de vulnerabilidades de UI Macro en ServiceNow (CVE-2025-11449, CVE-2025-11450) mediante la codificación de parámetros sysparm_ para prevenir ataques XSS.
Este script detecta y corrige automáticamente las vulnerabilidades de seguridad CVE-2025-11449 y CVE-2025-11450 en los UI Macros de ServiceNow. Estas vulnerabilidades podrían permitir la ejecución arbitraria de código en los navegadores de los usuarios mediante enlaces especialmente diseñados si los parámetros sysparm_ controlados por el usuario no se sanean adecuadamente.
$pwd_verify_email$pwd_verify_personal_data_uiEl script realiza dos correcciones de seguridad clave:
<g:evaluate>Reemplaza los patrones vulnerables con versiones correctamente codificadas:
${sysparm_<XYZ>} → ${JS,HTML:sysparm_<XYZ>}${HTML:sysparm_<XYZ>} → ${JS,HTML:sysparm_<XYZ>}${JS:sysparm_<XYZ>} → ${JS,HTML:sysparm_<XYZ>}<g:evaluate>: Utiliza referencias a variables JellyReemplaza la interpolación de cadenas con referencias seguras a objetos Jelly:
"${sysparm_<XYZ>}" → jelly.sysparm_<XYZ> (¡elimina las comillas!)${HTML:sysparm_<XYZ>} → jelly.sysparm_<XYZ>${JS,HTML:sysparm_<XYZ>} → jelly.sysparm_<XYZ> (aún inseguro dentro de <g:evaluate>)¡Haz una Copia de Seguridad Primero!
// Exporta tus UI Macros actuales antes de ejecutar este script
// Navega a: System UI > UI Macros
// Exporta: $pwd_verify_email y $pwd_verify_personal_data_ui
Ejecuta el Script de Detección
CVE_2025_11449_fix.jsRevisa la Salida
Aplica la Corrección
Prueba a Fondo
AFFECTED Macro: $pwd_verify_personal_data_ui (sys_id: abc123...) [ACTIVE - HIGH PRIORITY]
Found 8 vulnerable sysparm_ pattern(s) outside <g:evaluate>:
- ${HTML:sysparm_verification_id}
- ${HTML:sysparm_verification_id}
- ${HTML:sysparm_verification_id}
- ${HTML:sysparm_verification_id}
- ${HTML:sysparm_verification_id}
... and 3 more
Found 1 vulnerable sysparm_ pattern(s) inside <g:evaluate>:
- "${sysparm_verification_id}"
Suggested Cured XML:
[Fixed XML output here]
---
Para verificar UI Macros adicionales, modifica la línea 3:
var macrosToCheck = ['$pwd_verify_email', '$pwd_verify_personal_data_ui', 'your_custom_macro'];
CRÍTICO: Estas vulnerabilidades permiten ataques de Cross-Site Scripting (XSS) que podrían:
¿Encontraste un problema o tienes una mejora? Por favor:
Licencia MIT - Siéntete libre de usar, modificar y distribuir.
¡Úsalo bajo tu propio riesgo! Siempre:
Este script se proporciona tal cual, sin garantía. El autor no es responsable de ningún daño o problema causado por su uso.
El script fue generado por ServiceNow Helper por Daniel Aagren Seehartrai Madsen
Creado para ayudar a la comunidad de ServiceNow a abordar vulnerabilidades de seguridad críticas de manera rápida y segura.