Un reciente ataque ha demostrado cómo una vulnerabilidad de SQL Injection en una aplicación web pública puede escalar a un control total sobre un servidor Windows subyacente, utilizando una base de datos Oracle como plataforma de ataque. Los cibercriminales lograron inyectar código Java malicioso directamente en la base de datos, compilándolo para formar un toolkit post-explotación denominado ‘khunt’, y desde allí ejecutar comandos con privilegios SYSTEM. Este método sigiloso afecta a organizaciones que utilizan bases de datos Oracle con aplicaciones web de cara al público.
La cadena de ataque se inició a través de una falla de SQL Injection en un campo de búsqueda de autocompletado en una aplicación web, que permitía la inserción de entrada no validada en la base de datos. La cuenta de conexión a la base de datos, que poseía privilegios excesivos como CREATE PROCEDURE, fue explotada para compilar el código fuente Java dentro de la máquina virtual embebida de Oracle. Esto transformó la base de datos de un mero repositorio de datos en una base de operaciones para el atacante, una técnica sofisticada y poco documentada en la práctica.
El toolkit ‘khunt’, compuesto por varios objetos Java y envoltorios PL/SQL, permitió a los atacantes una amplia gama de acciones maliciosas. Esto incluía la ejecución de comandos del sistema operativo (KhuntCmd), la lectura y descarga de hashes de contraseñas de Oracle (KhuntHash), operaciones de sistema de archivos (KhuntFS), entre otras. Tras ejecutar whoami a través de KhuntCmd y confirmar el acceso SYSTEM, los atacantes procedieron a copiar hives de registro y listar procesos, demostrando un control avanzado sobre el servidor.
Para mitigar este tipo de ataques complejos, es crucial implementar consultas parametrizadas y una validación de entrada rigurosa en todas las aplicaciones web para prevenir la inyección SQL desde el origen. Adicionalmente, se debe aplicar el principio de mínimo privilegio a las cuentas de base de datos, asegurando que las aplicaciones públicas no tengan permisos innecesarios para compilar código o ejecutar comandos del sistema operativo. Es importante destacar que las soluciones tradicionales de detección y respuesta de endpoints (EDR/XDR) a menudo no inspeccionan los procesos internos de una base de datos, lo que permite que estas amenazas operen con un bajo perfil de detección.
Qué significa para tu empresa: Este incidente subraya la sofisticación de los atacantes y la necesidad de una visibilidad profunda en su infraestructura. Dada la capacidad de este toolkit para operar desde el interior de la base de datos y evadir las defensas tradicionales de endpoint, es imperativo contar con sistemas de detección que monitoreen el comportamiento anómalo a nivel de aplicación y base de datos. Contar con un SOC con monitoreo 24/7 es fundamental para una vigilancia constante que permita identificar y responder rápidamente a amenazas que explotan configuraciones débiles y técnicas de evasión tan avanzadas.
Fuente original: The Hacker News — ver artículo →