Demostración de un ataque iterativo al servidor MYSQL con RidgeBot™: un sistema de prueba de penetración totalmente automatizado

por | Jun 10, 2020 | Demostración de la prueba de penetración automatizada

Muchas herramientas de explotación disponibles en la actualidad solo pueden procesar ataques paso a paso. Para lograr descifrar ataques de múltiples capas o iterativos, los probadores de Pen deben vincular los puntos y ordenar el sistema. A diferencia de estas herramientas, RidgeBot™, un sistema de prueba de penetración totalmente automatizado, es capaz de realizar dinámicamente ataques de varias capas sin la interrupción o mando humano al medio. La ruta de ataque se planifica automáticamente en función del conocimiento que el RidgeBot™ aprendió del objetivo. Permítanme mostrarles un ejemplo.

En este ejercicio, mi objetivo es un servidor MYSQL. Lanzaré un ataque hacia él usando RidgeBot™. Permítanme establecerlo primero como mi objetivo en la plantilla de Tarea. Como sé que es un servidor MYSQL, elijo específicamente los complementos de explotación relevantes para MYSQL y los guardo como una plantilla personalizada. Elijo la plantilla y hago clic en “Ejecutar ahora” … Y ahora me voy a tomar un café y esperar mi resultado.

Listo. Después de la prueba, encontramos tres vulnerabilidades. Una contraseña MySQL muy débil y dos MySQL webshell de exportación. Estas vulnerabilidades generan 4 puntos de riesgo. Primero está el crack de credenciales, segundo está la fuga de información de la base de datos. Puedes ver aquí, todas las tablas que se muestran aquí. Los otros dos tipos de datos de puntos de riesgo son shell. El RidgeBot™ podría obtener acceso al shell web del objetivo y mostrar la información del directorio. Eso significa que RidgeBot™ tiene un control total de este servidor. ¿Cómo llegó el RidgeBot™ aquí?

Déjeme explicar lo que sucedió. En este ejercicio, los pasos de ataque de RidgeBot™ son:

Ruta de ataque:

  1. Se usa Brute-Force para obtener la contraseña raíz de MySQL, si está usando una contraseña débil.
  2. Se prueba la contraseña débil para obtener acceso a MySQL.
  3. Se usa web poc para obtener la información del directorio de la aplicación web.
  4. Se usa MySQL para implantar una carga útil diseñada de PHP en el directorio de la aplicación web.
    1. Mysql> select ‘<?php @eval($_POST[1]);?>’en el archivo de salida ‘/www/bwapp/admin/phpinfo.php ‘>
  5. Cuando se solicita a https://target.com/bwapp/admin/phpinfo.php, se crea un shell web persistente.
  6. Se usa web-shell, para obtener el control

En este plan de ataque, hay algunas vulnerabilidades explotadas:

Vulnerabilidades explotadas:

  1. Contraseña débil de MySQL
  2. Configuración de MySQL para permitir la operación de archivos arbitrarios
  3. PHP webshell
  4. Fugas de información confidencial, como el directorio

Como se puede ver, no hay pare y arranque durante el ataque. RidgeBot™ tomó su propia decisión en el camino basándose en el nuevo aprendizaje de la contraseña débil del objetivo y la búsqueda de un sitio web basado en PHP, y puede lanzar un ataque apropiado, como un acceso con la contraseña débil y la inyección de una carga útil de php. Esto es lo que llamamos “totalmente automatizado”, que es una diferenciación clave de la herramienta RidgeBot™ en el mercado actual.

Y finalmente, RidgeBot™ ofreció una recomendación de remediación. Para este objetivo, se debe hacer lo siguiente para evitar cualquier hazaña de un hacker real.

Recuperación del medioambiente.

  1. Se proporciona una contraseña segura para el acceso raíz a MySQL.
  2. Se actualiza MySQL>5.6.6 con una política de contraseña segura.
  3. Se habilita la protección contra escritura del archivo mysql en la configuración: configure secure_file_priv solo en el directorio dedicado.
  4. Se debe validar todo código PHP con @eval.

Vea la demostración aquí.