Mejores Prácticas de las Reglas de DataSunrise
Introducción
DataSunrise Database Security es una solución poderosa de Monitoreo de Actividad de Base de Datos/Auditoría de Datos y Protección de Datos en tiempo real y Firewall de Base de Datos que aumenta significativamente el nivel de seguridad de los datos y la base de datos tanto en instalaciones locales como en la nube. A menudo, es difícil entender qué datos deben protegerse, dónde se encuentran esos datos en su base de datos y cómo configurar el conjunto de herramientas de DataSunrise para obtener el nivel más alto posible de protección.
Este documento contiene una descripción detallada de las mejores prácticas de las Reglas de DataSunrise que lo ayudarán a crear la configuración de seguridad de datos más efectiva y adecuada.
Características y Capacidades Clave de DataSunrise
1. Monitoreo de Actividad de Base de Datos / Auditoría de Datos
El monitoreo de actividad de base de datos de DataSunrise (DAM) permite el seguimiento en tiempo real de todas las acciones de los usuarios y los cambios realizados en una base de datos. Mientras que la auditoría de bases de datos se utiliza principalmente para la investigación de violaciones de datos, el monitoreo continuo de la actividad de la base de datos ayuda a detectar intentos de abuso de derechos de acceso y prevenir preparativos de violaciones de datos por adelantado.
Además, DataSunrise utiliza algoritmos inteligentes de autoaprendizaje y análisis de comportamiento para acelerar el proceso de implementación del firewall de base de datos. DataSunrise analiza el comportamiento típico de usuarios y aplicaciones y crea una “lista blanca” de consultas SQL consideradas seguras por defecto.
2. Protección de Datos y Firewall de Base de Datos
El módulo de Seguridad de Datos de DataSunrise es la herramienta principal para defender las bases de datos corporativas contra acciones dañinas y hostiles y garantizar el cumplimiento normativo. Equipado con monitoreo continuo de tráfico y algoritmos avanzados de análisis SQL, DataSunrise detecta inyecciones SQL e intentos de acceso no autorizados en tiempo real. Cuando el firewall de base de datos de DataSunrise detecta una violación de la política de seguridad, bloquea inmediatamente la consulta SQL maliciosa y notifica a los administradores a través de SMTP o SNMP.
3. Gestor de Cumplimiento
El Gestor de Cumplimiento garantiza el cumplimiento con una serie de normas y regulaciones de seguridad nacionales e internacionales como HIPAA, PCI DSS, ISO 27001, GDPR y SOX. La funcionalidad del Gestor de Cumplimiento ejerce control total sobre el acceso a las bases de datos corporativas para prevenir el procesamiento ilegal de datos, modificación no autorizada de datos o pérdida accidental de datos.
La funcionalidad del Gestor de Cumplimiento se basa en un descubrimiento automático de datos sensibles en una base de datos objetivo, asignando ciertos roles a los usuarios de la base de datos objetivo e implementando políticas de seguridad, enmascaramiento y auditoría según estos roles, así como informes de cumplimiento periódicos para la revisión continua de la actividad de la base de datos.
4. Descubrimiento de Datos Sensibles
El Descubrimiento de Datos de DataSunrise identifica datos sensibles en bases de datos corporativas y ayuda a establecer la protección más efectiva de estos datos. Permite a las empresas entender qué nivel de control es apropiado para cada tipo de datos sensibles que contienen sus bases de datos. Además, esta característica ayuda a cumplir con las exigencias de regulaciones como GDPR, HIPAA, SOX, PCI DSS y otras.
5. Enmascaramiento Dinámico de Datos
DataSunrise previene la exposición de datos sensibles con su Enmascaramiento Dinámico de Datos (DDM).
DataSunrise DDM asegura información crítica para el negocio al ofuscar los datos de interés en toda la base de datos o solo en tablas o columnas seleccionadas para usuarios no deseados. DataSunrise enmascara los datos reemplazando las entradas reales de la base de datos con valores generados aleatoriamente o predefinidos por el usuario.
Para prevenir posibles fugas de datos, las entradas de base de datos especificadas por un usuario de DataSunrise se enmascaran sobre la marcha antes de que los datos se extraigan de la base de datos.
Gestor de Cumplimiento
El Gestor de Cumplimiento es una buena herramienta para crear una configuración inicial de DataSunrise. En resumen, automatiza los pasos de configuración de DataSunrise realizando un Descubrimiento de Datos y creando entidades de configuración basadas en los resultados del Descubrimiento de Datos. El Gestor de Cumplimiento crea las siguientes entidades:
- Regla de Auditoría para objetos de base de datos que contienen datos sensibles
- Regla de Seguridad para bloquear inyecciones SQL
- Regla de Seguridad para bloquear el acceso a datos sensibles a todos excepto a ciertos usuarios incluidos en grupos de usuarios de base de datos definidos durante la operación del Gestor de Cumplimiento
- Regla de Seguridad para bloquear todas las consultas administrativas emitidas por usuarios de base de datos que no pertenecen a los grupos de usuarios “permitidos”
- Reglas de Enmascaramiento para ofuscar datos sensibles para usuarios de base de datos no incluidos en grupos de usuarios “permitidos” y no autorizados para procesar los datos originales.
Además del conjunto de reglas descrito anteriormente, el Gestor de Cumplimiento también crea los siguientes informes:
- Informe de Auditoría sobre casos de acceso a objetos de base de datos sensibles
- Informe de Seguridad sobre intentos de acceso a datos sensibles por usuarios no autorizados a manejarlos
- Informe de Errores sobre consultas que no se ejecutaron debido a errores de cualquier origen
- Informe de Eventos del Sistema sobre eventos ocurridos en DataSunrise durante el período de interés
- Informe de Enmascaramiento sobre casos de acceso a datos sensibles que resultaron en la ofuscación de datos para usuarios que no tienen permitido manejar los datos originales sensibles.
Tenga en cuenta que el Gestor de Cumplimiento no puede garantizar una cobertura del 100% de todos los datos inseguros contenidos en una base de datos objetivo. El gestor de cumplimiento le proporciona una configuración que puede usar como base, una configuración de primera estimación para su caso. Aunque este enfoque le proporciona una configuración lista para usar para su suite de seguridad DataSunrise, es posible que encuentre que el modelo de roles sugerido no es adecuado para su caso particular. En este caso puede personalizar las opciones de Filtrar Sesiones de sus Reglas.
Descubrimiento de Datos Sensibles
El Descubrimiento de Datos Sensibles le ayuda a buscar datos sensibles contenidos en su base de datos. Es prudente configurar una tarea periódica de Descubrimiento de Datos que descubra continuamente datos sensibles de acuerdo con los múltiples estándares de seguridad integrados. Usar los resultados del Descubrimiento de Datos le permite asegurar sus datos sensibles de acuerdo con sus políticas de seguridad excluyendo la búsqueda y aseguramiento manual de tales datos al mismo tiempo.
Para tener una representación visual de los datos sensibles encontrados, se recomienda configurar tareas de generación de informes PDF/CSV periódicas también.
No obstante, ejecutar una tarea de Descubrimiento de Datos no garantiza un descubrimiento del 100% de datos sensibles. Consultar con el DBA también es uno de los pasos importantes que deben realizarse para no dejar ningún dato sensible inseguro.
Aunque el Descubrimiento de Datos tiene un impacto menor en la base de datos (en comparación con una aplicación cliente que consulta las primeras N (N=100 por defecto) filas de cada tabla en cada base de datos, puede reducir el conjunto de muestreo usando la opción “Conteo de Filas Analizadas” en Configuraciones Avanzadas.
Reglas de Auditoría y Reglas de Seguridad
Tenga en cuenta que la configuración de las Reglas de Auditoría y las Reglas de Seguridad es similar, excepto por la sección de Acciones. Esto significa que puede monitorear o bloquear la actividad de base de datos de su interés según su elección sin perder ninguna posibilidad.
Cuando se trata de ajustar finamente las reglas de Auditoría y Seguridad, la recomendación general es evitar crear reglas generales “todo en uno”, ya que puede proporcionar demasiados datos para el análisis generados por procesos de terceros o por una herramienta de consultas SQL (como PGAdmin para PostgreSQL o SQL Server Management Studio para Microsoft SQL Server).
Considere establecer el monitoreo solo para objetos de la base de datos que contienen datos sensibles u observar el acceso a datos que requieren una observación y registro de acceso a los datos estrictos. Puede usar la función Grupos de Objetos para organizar estos objetos de base de datos como tablas, vistas, procedimientos almacenados y funciones en grupos.
Usar Grupos de Objetos en sus reglas de Auditoría/Seguridad le permite establecer control y monitoreo sobre sus partes de almacenamiento de datos de interés para obtener datos de auditoría claros y relevantes.
A continuación, puede encontrar algunas “recetas” sobre cómo configurar las Reglas de DataSunrise para abordar los problemas más comunes que pueden causar problemas en su base de datos o pueden ser los primeros signos de un ataque a su Almacenamiento de Datos.
Auditoría/Bloqueo de un Intento de Conexión Sospechoso (Intento de Inicio de Sesión)
A pesar de que las aplicaciones pueden establecer muchas conexiones con una base de datos, es importante monitorear el conteo de conexiones anormal o las fallas de conexión o incluso restringir este tipo de actividad que se origina en hosts y inicios de sesión sospechosos. A continuación, puede encontrar algunos consejos sobre cómo crear una Regla de Auditoría/Seguridad que cubra todos los casos principales de intentos de inicio de sesión sospechosos, que a menudo significan que un individuo malintencionado está intentando realizar un ataque de fuerza bruta en su base de datos.
1. Auditoría/Bloqueo de conexiones exitosas/fallidas frecuentes (dentro de un período de tiempo)
Para monitorear las conexiones exitosas a una base de datos a través de un proxy de DataSunrise, use Eventos de Sesión de Auditoría con la opción “Auditar Conexiones Frecuentes” habilitada para auditar casos cuando hay muchas conexiones frecuentes provenientes de un determinado usuario+host o host.
Para prevenir intentos frecuentes de conexión exitosos o fallidos bloqueando su fuente por host+nombre de usuario o por host, habilite la opción “Bloquear DDOS o Ataque de Fuerza Bruta” en la sección de Eventos de Sesión de su Regla.
2. Bloqueo de consultas que provienen de fuera de un RANGO de IP permitido
Para bloquear consultas originadas desde direcciones IP potencialmente peligrosas, use las opciones de Filtrar Sesiones para configurar su Regla de Seguridad para que se active con cualquier consulta NO proveniente de los hosts incluidos en su lista de Hosts de DataSunrise.
3. Prevención de conexiones inseguras
Un proxy de DataSunrise se puede configurar para aceptar solo conexiones SSL habilitando “Aceptar Solo Conexiones SSL” en la Configuración del Proxy de su perfil de base de datos objetivo en la Consola Web.
4. Monitoreo de conexiones de Usuario Raíz y Privilegiado
La observación de la actividad general de conexión del Usuario Raíz se puede llevar a cabo creando un Grupo de Objetos de Auditoría predeterminado o una regla de Tipo de Consulta y configurando la configuración de Filtrar Sesiones en función del nombre de usuario de la base de datos raíz (por ejemplo, “root” para MySQL, “system/sys” para Oracle, etc.) o nombre de usuario de la base de datos con privilegios de administrador si necesita evitar usar una cuenta de usuario raíz.
Recomendaciones para Consultas (Sesión)
1. Consultas de Lenguaje de Modificación de Datos
Las Reglas de Auditoría/Seguridad de Grupo de Objetos son preferibles sobre las Reglas de Tipo de Consulta. Estas permiten establecer monitoreo y/o bloquear las principales operaciones CRUD realizadas en una base de datos al agregar los objetos necesarios ya sea desde el Navegador de Objetos eligiendo objetos listados en la regla para ser procesados o especificando un Grupo de Objetos creado con anticipación manualmente o utilizando el Descubrimiento de Datos. Si se requiere observar o restringir tipos de consultas particulares, use una regla de Auditoría/Seguridad de Tipo de Consulta. Tenga en cuenta que también es posible monitorear la ejecución de los tipos de consulta elegidos en ciertos objetos de base de datos especificando un Grupo de Objetos en la configuración de la Regla. Además, todas las Reglas se pueden configurar para ser activadas solo por consultas de una determinada aplicación, usuario, usuario de aplicación, host, asegurando así que la regla de seguridad creada no se active incorrectamente. Para esto, configure la configuración de Filtrar Sesiones de la Regla.
2. Reglas de Auditoría y Seguridad de tipo Inyección SQL
DataSunrise cuenta con un mecanismo de detección de inyección SQL basado en puntos de penalización (sanciones) que le permite establecer su propio nivel de consultas “permitidas” dirigidas a su base de datos.
Recomendamos configurar una Regla de Auditoría de Inyección SQL para monitorear consultas sospechosas y configurar una Alerta en la sección de Notificaciones de la Regla de Auditoría. Los valores de penalización de su filtro deben corresponder a consultas de inyección SQL “débiles” que no pueden hacer daño a una base de datos.
Junto con las Reglas de Auditoría con Alertas configuradas, es necesario configurar una Regla de Seguridad de tipo Inyección SQL que bloquee consultas de inyección SQL que excedan el número especificado de puntos de penalización.
Tenga en cuenta que el número de sanciones debe corresponder a consultas de inyección SQL que pueden causar un daño significativo a una base de datos. Los valores de penalización deben ser superiores a los de la Regla de Auditoría.
3. Consultas que devuelven un número enorme de filas
Un gran número de filas afectadas/obtenidas cuando no hay consultas correspondientes utilizadas por la aplicación o por herramientas de BI puede indicar que hay una actividad sospechosa ocurriendo en la base de datos o la aplicación fue comprometida. Para evitar que tales consultas se ejecuten, use una regla de tipo Seguridad de Grupo de Objetos con “Activar la Regla Solo si el Número de Filas Afectadas/Obtenidas no es Inferior a” habilitado seguido por el número de filas afectadas/obtenidas que se considere anormal en su entorno. Una forma alternativa es usar una Regla de Auditoría con filtro de tipo Grupo de Objetos configurado y un Suscriptor adjunto para recibir notificaciones sobre este tipo de eventos que ocurren en la base de datos.
4. Consultas que se ejecutan durante demasiado tiempo
Cuando sus consultas tardan demasiado en ejecutarse, puede llevar a problemas de rendimiento, mala experiencia del usuario y también puede ser un signo de un insider intentando robar sus valiosos datos, ya que esos datos se obtienen consultando una tabla completa, lo que puede llevar un tiempo. Use una Regla de Auditoría con Eventos de Sesión configurados: habilite “La ejecución de la consulta toma más de” y establezca un valor (duración en segundos) que se considera anormal y dicha consulta de larga ejecución necesita ser auditada e informada usando la función de Suscriptores.
5. Consultas con sintaxis incorrecta (las que devuelven un error)
Para monitorear consultas que no se ejecutaron debido a un error de sintaxis de algún tipo, use un tipo de Regla de Eventos de Sesión de Auditoría con la opción “Auditar Errores de Operación” habilitada. Configure la frecuencia de error que se considere sospechosa y requiera la atención del equipo de DBA o Seguridad. Adjunte un Suscriptor para informar al personal encargado sobre los errores de SQL que ocurren con frecuencia durante el establecimiento de conexiones.
6. Consultas que acceden a tablas sensibles
Para limitar el acceso a una gama de objetos de base de dados, se recomienda utilizar una regla de tipo Seguridad de Grupo de Objetos. Usar este tipo de reglas de seguridad le permite limitar el acceso a ciertos objetos de la base de datos utilizando ya sea una lista de objetos que se puede seleccionar a través del Navegador de Objetos o usando un Grupo de Objetos que contiene objetos de base de datos de interés. Para proporcionar un nivel razonable de restricción de acceso a los datos, se recomienda configurar Filtrar Sesiones para habilitar esta regla para activarse o omitirse para ciertos usuarios de aplicación/base de datos/usuario de aplicación/host y grupos de usuarios de base de datos/usuarios de aplicación/hosts.
7. Tabla Trampa
Considere crear una tabla (tablas) que contenga datos sensibles falsos que actuará como un señuelo para los hackers. En caso de que se dirija una consulta a esta tabla, la fuente de la consulta debería ser permanentemente bloqueada. También puede aplicar una Regla de Aprendizaje para obtener más información sobre la estrategia de los atacantes (consultas, hosts, aplicaciones, etc.). En general, considere crear una base de datos trampa en una instancia de base de datos separada en su entorno y ponerla detrás de otra instancia de DataSunrise con Almacenamiento de Auditoría y bases de datos de Diccionario separados.
8. Bloqueo de consultas no deseadas
Para rastrear y/o bloquear ciertas declaraciones SQL que no desea que se ejecuten, use los Grupos de Consultas de DataSunrise. Puede configurarlos ya sea como plantillas de consulta (utilizando expresiones regulares) o como consultas exactas que serán verificadas y auditadas/bloqueadas en su ejecución. Se debe configurar una Regla de Seguridad para verificar si una consulta entrante está incluida en el Grupo de Consultas adjunto a la Regla utilizando la lista desplegable “Procesar Grupo de Consultas”. Se debe tener en cuenta que un Grupo de Consultas debe crearse con anticipación para ser seleccionable desde la lista mencionada. Usar Grupos de Consultas para establecer monitoreo y/o restringir el uso de ciertas consultas como declaraciones de OTORGACIÓN.
9. Consultas dirigidas a manipulaciones de privilegios
Puede usar la función de Grupos de Consultas para crear conjuntos de consultas SQL que deben identificarse en el tráfico de la base de datos y luego auditarse y/o bloquearse. Sin embargo, la mejor opción para monitorear consultas de OTORGACIÓN es usar Reglas de Auditoría/Seguridad configuradas como Tipo de Consulta con los tipos de consulta correspondientes especificados. Esto le permite establecer un control completo sobre los tipos de consulta de interés mediante el monitoreo y la restricción de la ejecución de las categorías de consulta elegidas. Considere combinar Grupos de Consultas y Reglas de Tipo de Consulta para lograr el nivel deseado de control sobre la actividad de la base de datos.
10. Manejo de consultas SQL SELECT *
SELECT * FROM TABLE no es una consulta común. En muchos casos, tales consultas pueden significar que alguien está intentando obtener tanta información como sea posible para descargar el conjunto de resultados de la base de datos. Esto puede resultar en una fuga de datos. Se recomienda controlar tales consultas restringiendo su ejecución en la base de datos. Para manejar consultas SELECT *, use una Regla de Seguridad con la opción “Consulta incluye la expresión “SELECT *” activada. Cuando esta opción está activada, DataSunrise verifica y bloquea consultas como SELECT * FROM TABLE y SELECT * FROM TABLE WHERE CONDITION=VALUE.
Si se requiere que se ejecuten tales consultas, limpie la lista de usuarios/aplicaciones/usuarios de aplicaciones/hosts permitidos utilizando las opciones de Filtrar Sesiones.
Reglas de Enmascaramiento Dinámico
Recomendaciones generales
- Combine Reglas de Auditoría con Reglas de Enmascaramiento para proporcionar una cobertura completa del acceso a datos sensibles
- Use la opción “Filtrar Sesiones” de una regla de Enmascaramiento para evitar que la Regla se active por usuarios no deseados.
- Utilice el filtro “Usuario de Aplicación” para los casos en que la Regla de Enmascaramiento Dinámico se utilice para ofuscar datos accedidos por Usuarios de Aplicación en sistemas complejos como SAP ECC y Oracle EBS.
- Si se requiere enmascarar valores incluidos en una fila completa, considere usar la funcionalidad “Ocultar Filas” en lugar del Enmascaramiento Dinámico regular. Usar Ocultar Filas permite ocultar filas completas que cumplen con los requisitos de la Regla de Enmascaramiento. Use Filtrar Sesiones para definir bajo qué condiciones se activará su Regla de Enmascaramiento Dinámico de tipo Ocultar Filas.
Conclusión
Este documento acumula las recomendaciones en forma de Casos de Uso que los usuarios pueden encontrar al usar la Seguridad de Base de Datos. Las sugerencias y Casos de Uso proporcionados no son obligatorios, pero pueden usarse como referencia al crear una configuración personalizada de DataSunrise.
El documento cubre los principales consejos y recomendaciones sobre qué tipos de Reglas y qué Opciones usar para aprovechar el Monitoreo de Actividad de Base de Datos, el Firewall de Base de Datos y el Enmascaramiento de Datos.