Servidores MySQL Expuestos

Por: Felipe Alcantara
Analista de Operaciones Cibernéticas

MySQL: Introducción

MySQL es uno de los sistemas de gestión de base de datos más utilizados en todo el mundo, millones de servidores web lo utilizan para almacenar su información y millones de estos servidores se encuentran con MySQL accesibles desde la internet, este tipo de exposición es una superficie de ataque potencial para actores malignos.

Todos los sistemas de base de datos deben ser protegidos de múltiples amenazas en la internet. Entre los riesgos a los que pudiera estar expuesta una de base de datos está la alteración, robo o perdida de la información.

MySQL: Estadísticas

El equipo de seguridad de ShadowServer ha reportado recientemente que más de 3.6 millones de servidores MySQL se encuentran expuestos a la internet, entre estos, 2.3 millones son accesibles por medio de IPv4 y 1.3 millones por medio de IPv6. En el reporte comentan que escanearon la internet con motivos de ver cuales servidores MySQL se encuentran visibles, pero no tienen información acerca del nivel de protección o autenticación que pudieran tener estos.

Entre los países con más servidores MySQL expuestos se encuentran los siguientes:

  1. Estados Unidos con 740.1k
  2. China con 296.3k
  3. Polonia con 207.8k
  4. Alemania con 174.9k
  5. Francia con 73k

En la República Dominicana a 31 de mayo 2022 existen 1,283 servidores de MySQL expuestos a Internet.

 

 

MySQL: Peligros de un MySQL Accesible

Una base de datos MySQL accesible desde la internet está expuesta a ataques de fuerza bruta, una vez el atacante obtiene credenciales válidas, este podría realizar las siguientes acciones:

Brecha de datos:

Los atacantes al momento de tener acceso a una base de datos con información importante, estos tienden a publicarla o venderla en mercados clandestinos de la internet, todo dependerá de las intenciones del atacante.

Ataques destructivos:

Los atacantes podrían ejecutar ataques destructivos como eliminar, robar o alterar   información contenida en una base de datos, incluso podrían realizar ataques de Ransomware encriptando la información de la base de datos.

Ataques de Acceso Remoto:

Existen técnicas que podrían permitir a un atacante obtener control total del sistema a través de un servidor de base de datos. Un atacante podría llegar a explotar alguna vulnerabilidad conocida o incluso crear archivos maliciosos en el sistema para luego ser ejecutados desde la página web del servidor.

Existen otras formas de obtener credenciales válidas, una de estas sería explotando una vulnerabilidad de inclusión de archivos locales (LFI) en la página web del servidor, lo que permitiría que un atacante puede leer archivos de configuración como el de la conexión a la base de datos.

MySQL: ¿Como evitar ataques?

Lo ideal es que estos sistemas de base de datos sean accesibles a través del localhost (red local interna) o a través de direcciones IP que sean listadas como permitidas.

Entre las medidas que puedes tomar para mitigar esta superficie de ataque se encuentran las siguientes:

  • Es indispensable habilitar la autenticación.
  • Se recomienda limitar los permisos y recursos por usuario.

En caso de ser necesario tener un MySQL accesible desde la internet;

  • Se recomienda crear una configuración de firewall que solo permita conexiones con direcciones IP específicas a través del puerto de MySQL, por defecto el puerto de MySQL es el 3306.
  • Se recomienda limitar los permisos y recursos por usuario.

En caso de no ser necesario tener un MySQL accesible desde la internet;

  • Se recomienda configurar el servidor MySQL para que solo sea accesible desde la red local interna del sistema o localhost.
  • En caso de utilizar la base de datos MySQL para servicios en una red interna de computadoras, se recomienda aplicar controles de firewall evitando que sea expuesta hacia la internet.

MySQL tiene una Guía de implementación segura de MySQL 5.7 y una Guía de implementación segura de MySQL 8.0.

MySQL: Conclusión

Tener una base de datos expuesta a la internet no es una buena opción, y es muy poco probable que se necesite tenerla expuesta. Esto aumenta la superficie de ataque y podría facilitar el trabajo de un atacante.

MySQL: Referencias

 

https://www.shadowserver.org/news/over-3-6m-exposed-mysql-servers-on-ipv4-and-ipv6/ https://www.shodan.io/search?query=port%3A3306+country%3ADO+product%3A%22MySQL%22

Ir al contenido