Administración
de base de datos
Como en toda
empresa lo que se busca es la información esté disponible, que la información
sea segura, esto no solo en los sistemas sino también en las bases de datos, también
se busca que sea segura y una buena administración de las mismas.
¿Pero qué es
una base de datos? Es un sistema que almacena datos que están relacionados.
La gran mayoría de los datos sensibles del mundo están
almacenados en sistemas gestores de bases de datos comerciales tales como
Oracle, Microsoft SQL Server entre otros, y atacar una bases de datos es uno de
los objetivos favoritos para los criminales.
Por eso es
importante como un buen administrador tener en cuenta los siguientes principios
básicos sobre la protección de las base de datos.
1.
Identifique su sensibilidad
Elabore muy
bien el 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.
2.
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.
3.
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.
4.
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.
5.
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.
6.
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.
7.
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.
Referencias
ISO/IEC 27001:2005 - Information technology -- Security
techniques [en]http://www.iso.org/iso/catalogue_detail?Csnumber=42103
ISO/IEC 17799:2005 - Information technology
-- Security techniques [en] http://www.iso.org/iso/catalogue_detailcsnumber=39612
Malware -
Ataque a la Base de Datos [en] http://ataquebd.blogspot.mx/
Inyección de
código SQL - MSDN – Microsoft [en] http://msdn.microsoft.com/es-es/library/ms161953.aspx
No hay comentarios.:
Publicar un comentario