·
Monitoreo
Monitoreo en tiempo real de la actividad de base de datos es clave para
limitar su exposición, aplique o adquiera agentes inteligentes de
monitoreo, detección de intrusiones y uso indebido.
Por ejemplo, alertas sobre patrones inusuales de acceso, que podrían
indicar la presencia de un ataque de inyección SQL, cambios no autorizados a
los datos, cambios en privilegios de las cuentas, y los cambios de
configuración que se ejecutan a mediante de comandos de SQL.
Recuerde que el monitoreo usuarios privilegiados, es requisito para la
gobernabilidad de datos y cumplimiento de regulaciones como SOX y
regulaciones de privacidad. También, ayuda a detectar intrusiones, ya que
muchos de los ataques más comunes se hacen con privilegios de usuario de alto
nivel.
El monitoreo dinámico es también un elemento esencial de la evaluación
de vulnerabilidad, le permite ir más allá de evaluaciones estáticas o forenses.
Un ejemplo clásico lo vemos cuando múltiples usuarios comparten credenciales
con privilegios o un número excesivo de inicios de sesión de base de datos.
·
Identificar su sensibilidad
Confeccione un buen catálogo de tablas o datos sensibles de sus
instancias de base de datos. Además, automatice el proceso de identificación,
ya que estos datos y su correspondiente ubicación pueden estar en constante
cambio debido a nuevas aplicaciones o cambios producto de fusiones y
adquisiciones.
Desarrolle o adquiera herramientas de identificación, asegurando éstas
contra el malware, colocado en su base de datos el resultado de los ataques de
inyección SQL; pues aparte de exponer información confidencial debido a
vulnerabilidades, como la inyección SQL, también facilita a los atacantes
incorporar otros ataques en el interior de la base de datos.
·
Evaluación de la vulnerabilidad y la configuración
·
Evalúe su configuración de bases de datos, para asegurarse que no tiene huecos
de seguridad.
Esto incluye la verificación de la forma en que se instaló la base de
datos y su sistema operativo (por ejemplo, la comprobación privilegios de
grupos de archivo -lectura, escritura y ejecución- de base de datos y bitácoras
de transacciones).
Asimismo con archivos con parámetros de configuración y programas
ejecutables.
Además, es necesario verificar que no se está ejecutando la base de
datos con versiones que incluyen vulnerabilidades conocidas; así como impedir
consultas SQL desde las aplicaciones o capa de usuarios. Para ello se pueden
considerar (como administrador):
-Limitar el
acceso a los procedimientos a ciertos usuarios.
-Delimitar el
acceso a los datos para ciertos usuarios, procedimientos y/o datos.
-Declinar la
coincidencia de horarios entre usuarios que coincidan.
·
Endurecimiento
Como resultado de una evaluación de la vulnerabilidad a menudo se dan
una serie de recomendaciones específicas. Este es el primer paso en el
endurecimiento de la base de datos. Otros elementos de endurecimiento implican
la eliminación de todas las funciones y opciones que se no utilicen. Aplique
una política estricta sobre que se puede y que no se puede hacer, pero
asegúrese de desactivar lo que no necesita.
·
Autenticación, control de acceso, y Gestión de derechos
No todos los datos y no todos los usuarios son creados iguales. Usted
debe autenticar a los usuarios, garantizar la rendición de cuentas por usuario,
y administrar los privilegios para de limitar el acceso a los datos.
Implemente y revise periódicamente los informes sobre de derechos de
usuarios, como parte de un proceso de formal de auditoría.
Utilice el cifrado para hacer ilegibles los datos confidenciales,
complique el trabajo a los atacantes, esto incluye el cifrado de los datos en
tránsito, de modo que un atacante no puede escuchar en la capa de red y tener
acceso a los datos cuando se envía al cliente de base de datos.
Medidas de seguridad del DBA:
-Físicas: Controlar el acceso al equipo. Tarjetas de acceso, etc.
-Personal: Acceso sólo del personal autorizado. Evitar sobornos, etc.
-SO: Seguridad a nivel de SO
-SGBD (sistema de gestión de base de datos): Uso herramientas de
seguridad que proporcione el SGBD. Perfiles de usuario, vistas, restricciones
de uso de vistas, etc.
-Uso de técnicas de cifrado: para proteger datos en Base de Datos
distribuidas o con acceso por red o internet.
-Diferentes tipos de cuentas.
-Manejo de la tabla de usuarios con código y contraseña, control de las
operaciones efectuadas en cada sesión de trabajo por cada usuario y anotadas en
la bitácora, lo cual facilita la auditoría de la Base de Datos.
·
Audite
Una vez que haya creado una configuración y controles de endurecimiento,
realice auto evaluaciones y seguimiento a las recomendaciones de auditoría para
asegurar que no se desvíe de su objetivo (la seguridad).
Automatice el control de la configuración de tal forma que se registre
cualquier cambio en la misma. Implemente alertas sobre cambios en la
configuración. Cada vez que un cambio se realice, este podría afectar a la
seguridad de la base de datos.
·
Pistas de Auditoría
Aplique pistas de auditoría y genere trazabilidad de las actividades que
afectan la integridad de los datos, o la visualización los datos sensibles.
Recuerde que es un requisito de auditoría, y también es importante para
las investigaciones forenses.
La mayoría de las organizaciones en la actualidad emplean alguna forma
de manual de auditoría de transacciones o aplicaciones nativas de los sistemas
gestores de bases de datos. Sin embargo, estas aplicaciones son a menudo
desactivadas, debido a:
-su
complejidad
-altos costos operativos
-problemas de
rendimiento
-la falta de
segregación de funciones y
-la necesidad
mayor capacidad de almacenamiento.
Afortunadamente, se han desarrollado soluciones con un mínimo de impacto
en el rendimiento y poco costo operativo, basado en tecnologías de agente
inteligentes.