Todo lo que necesitas saber sobre la seguridad de SQL Server

La seguridad de los servidores SQL Server siempre ha sido una preocupación acuciante, incluso para el usuario de SQL Server más experimentado. Independientemente de tu versión, la base de datos SQL Server está constantemente amenazada, ya que contiene datos valiosos a los que los hackers maliciosos quieren acceder.

Ataques diarios por vector (SQLi)

Al ser fáciles de implementar y potencialmente peligrosos, los ataques de inyección SQL (SQLi) son la opción favorita de los hackers. El informe "State of the Internet/ Security" revela que solo SQLi representa el 77% de todos los ataques a aplicaciones en 2019. SQLi es cuando los hackers insertan SQL Server arbitrario en la consulta de la base de datos de la aplicación para destruirla.

La seguridad de los entornos de SQL Server se considera una de las principales responsabilidades de los administradores de bases de datos. Afortunadamente, SQL Server está diseñado para ser una plataforma de base de datos segura. Tiene varias características que pueden cifrar los datos, limitar el acceso y la autorización, y proteger los datos contra el robo, la destrucción y otros tipos de comportamiento malicioso.

Sin embargo, innumerables organizaciones siguen experimentando vulnerabilidades en las bases de datos SQL. Como por ejemplo ataques de inyección SQL Server, forzamiento de credenciales SQL Server y otros ataques lanzados para manipular la recuperación de datos.

La amenaza a los servidores SQL Server es omnipresente hoy en día. Pero eso no significa que no podamos hacer nada al respecto. Para proteger a la organización de este tipo de ataques, los administradores de bases de datos y los profesionales de la seguridad deben comprender las posibles amenazas a la plataforma de gestión de bases de datos y tomar medidas proactivas para mitigar los riesgos de seguridad.

Seguridad en Microsoft SQL Server - Sothis
Seguridad en SQL Server

Mejores prácticas de seguridad de SQL Server

SQL Server es una de las plataformas de datos más populares del mundo. Se utiliza para ejecutar las operaciones y procesos críticos de una organización. Como resultado, ofrece una variedad de herramientas de seguridad para la protección contra ataques maliciosos y para asegurar las instancias de SQL Server.

Sin embargo, el uso de la configuración de seguridad por defecto puede dejar huecos de seguridad, dejando la red vulnerable a los ataques.

A continuación, te presentamos una lista de comprobación de seguridad de SQL Server para cortar eficazmente las amenazas a tu plataforma de base de datos.

Seguridad de los datos: cifrado de SQL Server | Microsoft
Seguridad de datos con cifrado de SQL Server

1. Ejecutar múltiples auditorías de seguridad de SQL Server

Las auditorías periódicas de seguridad, inicio de sesión y permisos del servidor son un requisito previo para prevenir posibles ataques y para ayudar en cualquier análisis forense de una posible violación de datos. Sin embargo, una auditoría de seguridad de SQL Server a nivel empresarial no es simplemente una inversión en seguridad, sino que se ha convertido en un requisito legal a raíz de la nueva legislación como HIPAA y GDPR.

Para empezar, defina lo que quiere auditar. Es posible que desee supervisar lo siguiente en sus auditorías de servidores.

  • Los inicios de sesión de los usuarios
  • Auditoría C2
  • Criterios comunes de cumplimiento
  • Auditoría de inicio de sesión
  • Configuración del servidor
  • Cambios de esquema
  • Auditoría de SQL Server
  • Rastreo de SQL
  • Eventos extendidos
  • Captura de datos de cambios
  • DML, DDL y activadores de inicio de sesión

Una auditoría rutinaria puede ayudar a mejorar la salud de tu base de datos y tu red. Por ejemplo, si una consulta no se ejecuta, una auditoría puede señalar la razón subyacente. ¿Apunta a una amenaza de seguridad? ¿Se debe a un error en el orden de las operaciones SQL?

Del mismo modo, los repetidos inicios de sesión fallidos en el servidor, los cambios y eliminaciones en los objetos restringidos de la base de datos y los cambios en las configuraciones y permisos indican que alguien está intentando acceder a tu servidor. Las auditorías de seguridad periódicas (incluida la auditoría de los inicios de sesión) pueden ayudarle a detectar estos signos de posibles ataques al servidor y a detenerlos antes de que causen daños importantes.

2. Ten una política de contraseñas fuertes

Todas las cuentas de administrador de bases de datos deben tener una contraseña fuerte que ayude a combatir los ataques de fuerza bruta.

  • Incluye un mínimo de 10 caracteres, incluyendo números, letras mayúsculas y minúsculas, y caracteres especiales. También puedes utilizar frases de contraseña que consten de un mínimo de 15 caracteres con letras y números.
  • Evita contraseñas fáciles de adivinar como "contraseña", "qwerty" o los nombres y fechas de nacimiento de tu cónyuge. Además, absténte de utilizar la misma contraseña para varios sistemas.
  • Cambia la contraseña periódicamente.

Utilice herramientas de gestión de contraseñas con una clave maestra fuerte para almacenar varias contraseñas.

Monitoring SQL server performance with Paessler PRTG
Supervisión del rendimiento del servidor SQL Server

3. Mantén el sistema delgado

Tener software innecesario y aplicaciones adicionales permite a los hackers explotar tu servidor de base de datos SQL. Además, las aplicaciones múltiples son difíciles de gestionar y pronto quedan obsoletas.

Todos sabemos cómo las aplicaciones obsoletas o sin parches introducen agujeros de seguridad en el sistema, invitando a los atacantes a ejecutar código no autorizado en un servidor SQL a través de una ruta autorizada (inyección SQL).

Limite la instalación de los componentes y funciones de la base de datos SQL a los que sean necesarios para determinadas tareas. Esto reducirá la utilización de recursos por parte de la base de datos y simplificará la administración, minimizando así el riesgo de seguridad.

4. Aplica el principio de privilegio mínimo

Todos conocemos el principio del mínimo privilegio, una frase habitual en el ámbito de la seguridad de la información y la informática. Establece que a una cuenta se le deben dar sólo los privilegios (en este caso, los permisos mínimos y los derechos del sistema) necesarios para que funcione correctamente.

El principio de mínimo privilegio como base de una estrategia de seguridad  - Cloud Center Andalucía
Principio del Privilegio Mínimo

Determina qué cuentas deben tener permiso para ejecutar qué servicios de la base de datos basándote en este principio. Mejor aún, asigne una cuenta separada a un servicio específico. De este modo, si un servicio se ve comprometido, los demás podrán reforzar la seguridad y seguir funcionando con normalidad.

Estas son algunas de las cuentas que puedes tener para los servicios del servidor SQL.

  • Una cuenta de usuario de dominio - Este es el tipo de cuenta más utilizado para ejecutar los servicios de SQL Server, ya que es bastante seguro debido a la ausencia de privilegios de administrador.
  • Cuentas de servicio administrado por el directorio activo - Esta cuenta es más segura que una cuenta de usuario de dominio, ya que no se puede iniciar sesión en el servidor con esta cuenta y no es necesario gestionar manualmente los restablecimientos de contraseña.
  • La cuenta de usuario local - Suele ser una buena opción para entornos sin dominio.
  • Cuenta del sistema local - Estas cuentas tienen amplios privilegios y acceso sin restricciones a todos los recursos del sistema local. La cuenta de sistema local tiene permisos que un servidor SQL no necesita, por lo que se puede evitar su uso para ejecutar servicios.
  • Una Cuenta de servicio de red - Tiene menos privilegios que una cuenta de sistema pero tiene más acceso a los recursos y objetos de red que los miembros del grupo de usuarios. Evite utilizar este tipo de cuenta siempre que sea posible.
  • La Cuenta de servicio virtual - Esta cuenta es similar a la cuenta de servicio gestionada por AD, pero puede utilizarse para gestionar servicios sin un dominio. En términos técnicos, es como una cuenta de servicio de red integrada, que tiene su identificador único. Esto hace que las cuentas de servicio virtuales sean ideales para los servicios SQL.

5. Dispón de una sólida estrategia de copia de seguridad de base de datos

Backup o copias de seguridad, ¿por qué es imprescindible?
Copia de Seguridad

Realiza siempre copias de seguridad de tu base de datos SQL y guárdalas en diferentes ubicaciones fuera de tu red. Cuenta con herramientas de recuperación de SQL de terceros para hacer frente a problemas de bases de datos SQL como la corrupción y la inaccesibilidad de los archivos de la base de datos.

¿Y qué más? Recuerda cifrar las copias de seguridad de la base de datos del servidor SQL. Tu copia de seguridad tiene los mismos datos sensibles que tu base de datos; por tanto, debes estar igualmente protegida. No querrás acabar con unos archivos de copia de seguridad corruptos. Así que aplica los mismos protocolos a ellos, incluyendo la restricción de acceso, el uso de medidas de seguridad y la supervisión/control del acceso a los datos de la copia de seguridad.

6. Utiliza una herramienta de supervisión de SQL Server adecuada

Una sólida herramienta de supervisión de SQL Server debería ser capaz de escanear los procesos de una aplicación de base de datos y supervisar los cambios en la configuración del servidor de base de datos. Debería detectar rápidamente los errores, las sesiones y las sentencias SQL Server individuales que permiten el acceso a información sensible.

No hay que olvidar que la propia herramienta de supervisión puede suponer un riesgo para la seguridad debido a la naturaleza sensible del sistema que supervisa. Por lo tanto, la herramienta debe utilizar prácticas de seguridad modernas, que le permitan mantener la salud a largo plazo de tu base de datos y tu red.

Implante una herramienta de supervisión del servidor SQL Server adecuada para proteger tu servidor de los ataques frecuentes, solucionar los problemas de rendimiento y mantener tu red en funcionamiento.

5 Ways that Windows Admin Center Makes Managing Servers a Breeze
Supervisión de SQL Server

Resumiendo

SQL Server ofrece varias características para soportar y asegurar las aplicaciones de bases de datos. Sin embargo, es imposible predecir qué amenazas de seguridad pueden surgir sobre la marcha. Por lo tanto, es aconsejable conocer las mejores prácticas y las consideraciones de seguridad más comunes para proteger sus aplicaciones de bases de datos.

La información compartida anteriormente le guiará en la construcción de una sólida estrategia de seguridad del servidor SQL Server, lo que le permitirá contrarrestar las amenazas de seguridad comunes.

Si te quedan dudas, pregúntanos aquí o en nuestro Web-Chat.
Si quieres ver más contenido nuestro, pásate por nuestro canal de YouTube.

Entradas de Blog relacionadas

https://licendi.com/blog/sql-server/

https://licendi.com/blog/sql-server-2019/