Page 1

PRINCIPIOS DE SEGURIDAD EN BASES DE DATOS Y USO HERRAMIENTAS TECNOLÓGICAS PARA GARANTIZAR LA: CONFIDENCIALIDAD, INTEGRIDAD Y DISPONIBILIDAD DE LOS DATOS Autor: Ing. José Martín Cruz Domínguez RESUMEN Hoy en día las empresas buscan proteger toda su información contenida en bases de datos comerciales tales como Oracle, Microsoft SQL Server, Access, entre otros, son consideradas tan valiosas como los activos de la organización, ante esta necesidad se busca encontrar mecánicos o herramientas que permitan garantizar la integridad de los datos, el acceso no autorizado y confidencialidad de la información, considerando que los datos cada vez son más susceptibles a ser vulnerados y en consecuencia atacar bases de datos es uno de los objetivos favoritos para los criminales, por medio de este artículo se obtendrán los principios básicos de la seguridad en base de datos. PALABRAS CLAVE: Seguridad, Base de datos, herramientas, técnicas de protección, encriptación ABSTRACT Today companies seek to protect all your information in commercial databases such as Oracle, Microsoft SQL Server, Access, among others, are considered as valuable as the assets of the organization, to this need is looking to find mechanics or tools to ensure the integrity of data, unauthorized access and confidentiality of information, whereas data are becoming more susceptible to attack and therefore violated databases is one of the favorite targets for criminals, through this article describes the basic principles of security will be obtained database. KEYWORDS Security database, tools, protection techniques, encryption DESARROLLO La protección de datos cada vez toma mayor importancia al ser considerada como un elemento valioso para las organizaciones, es por ello que por medio de este artículo se analizaran los puntos vulnerables que pueden sufrir los sistemas de bases de datos. Partiendo del concepto, una base de datos es considerada como: un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso. En este sentido; una biblioteca puede considerarse una base de datos compuesta en su mayoría por documentos y textos impresos en papel e indexados para su consulta. 1 PRINCIPIOS BÁSICOS DE SEGURIDAD DE BASE DE DATOS En este apartado se darán recomendaciones sobre seguridad en bases de datos, instaladas en servidores propios de la organización como son:

1

http://es.wikipedia.org/wiki/Base_de_datos


Identificar su sensibilidad (no se puede asegurar lo que no se conoce) Confeccione un buen catálogo de tablas o datos sensibles de sus instancias de base de datos. [1] Evalué la vulnerabilidad y 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). 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. Auditorias 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), recordad que cada vez que un cambio se realice, este podría afectar a la seguridad de la base de datos. Monitoreo En tiempo real de la actividad de base de datos es clave para limitar su exposición, aplique o adquiera agentes inteligentes [2] de monitoreo, detección de intrusiones y uso indebido. Autenticación, control de acceso, y Gestión de derechos No todos los datos y no todos los usuarios son creados iguales, por lo tanto se debe autenticar a los usuarios para garantizar la rendición de cuentas por usuario, y administrar los privilegios para de limitar el acceso a los datos, por lo cual se debe Implementar y revisar periódicamente los informes sobre de derechos de usuarios, como parte de un proceso de formal de auditoría.

¿QUÉ HACER PARA GARANTIZAR LA SEGURIDAD DE LA BASE DE DATOS? 1. Como administrador: o Limitar el acceso a los procedimientos a ciertos usuarios. o Delimitar el acceso a los datos y procedimientos para ciertos usuarios. o Declinar la coincidencia de horarios entre usuarios que coincidan. 2. Aplique una política estricta sobre que se puede y que no se puede hacer, pero asegúrese de desactivar lo que no necesita. 3. 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. 4. Implemente y revise periódicamente los informes sobre de derechos de usuarios, como parte de un proceso de formal de auditoría. 5. Utilice el cifrado [3] 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. 6. Realice copias de seguridad de la base de datos de forma periódica de forma local y externa. 7. Instale un buen antivirus para proteger su información SEGURIDAD DE LA BASE DE DATOS Y SU RELACIÓN CON EL DBA (ADMINISTRADOR DE LA BASE DE DATOS) El DBA es la autoridad central del sistema de información que controla todas las transacciones de la base de datos, por lo cual tiene una cuenta privilegiada en el Sistema Manejador de Base de Datos común mente llamada cuenta del sistema, que confiere capacidades extraordinarias para cuentas y usuarios ordinarios de la base de datos, entre las funciones que ejecuta el DBA están:    

Creación de cuentas Concesión de privilegios Revocación de privilegios Asignación de niveles de seguridad

Por lo anterior el Administrador de la base de datos es el responsable de la seguridad global del sistema de base de datos. Violaciones de Seguridad Entre las formas de acceso malintencionado se encuentran:   

La lectura no autorizada de los datos (robo de información) La modificación no autorizada de los datos La destrucción no autorizada de los datos

La seguridad de las bases de datos se refiere a la protección frente a accesos malintencionados. Para proteger la base de datos hay que adoptar medidas de seguridad en varios niveles: • • • • •

Sistema de bases de datos Sistema operativo Red Físico Humano

Cabe mencionar que es importante que se conserve la seguridad en todos estos niveles si hay que asegurar la integridad de la base de datos. En consecuencia la debilidad de los niveles bajos de seguridad (físico o humano) permite burlar las medidas de seguridad estrictas de niveles superiores (base de datos).


Control de acceso Gestiona todos los permisos necesarios al SMBD para imponer seguridad de múltiples niveles clasificando los datos y los usuarios en varias clases de seguridad e implementando después la política de seguridad apropiada de la organización. Consiste en la clasificación de tanto los sujetos como los objetos en el sistema en ‘clases de acceso’ que determinan sus características de confidencialidad. HACIENDO USO DE HERRAMIENTAS DE PROTECCIÓN PARA BASES DE DATOS La mayoría de las aplicaciones, tanto web como de escritorio, interactúan con usuarios que proporcionan información para su almacenamiento y procesamiento. Generalmente, esta información se resguarda en una base de datos y puede ser información personal, registros médicos, información financiera, entre otros. Por ejemplo un banco tiene una página en internet donde se pueden realizar operaciones en línea, en la mayoría de estos casos esta información se almacena en una base de datos que es operada por un Sistema Manejador de Bases de Datos (SMBD). Así, cuando navegamos en el sitio en línea del banco para consultar nuestro saldo, la aplicación web envía nuestra petición al SMBD, el cual nos proporciona acceso a la información contenida en la base de datos, como se observa en la ilustración 1: Ilustración 1: Flujo de comunicación entre el usuario, la aplicación y la base de datos

Fuente: http://revista.seguridad.unam.mx/numero-18/firewall-de-bases-de-datos

Ante esta situación si las aplicaciones web no cuentan con la seguridad necesaria (la cual comienza a implementarse desde que se lleva a cabo el diseño), la información de los usuarios, información de configuraciones, entre otras, podrían quedar expuestas, o bien, algún usuario malicioso podría intentar extraerla para obtener algún tipo de beneficio. Firewall para filtrar peticiones SQL maliciosas Es una aplicación de software que permite filtrar, mediante un conjunto de reglas preestablecidas, las peticiones que llegan al manejador de bases de datos, gracias a la implementación de un firewall se puede identificar de qué lugar provienen los ataques, el horario en que se registran, generando estadísticas que permiten visualizar el posible comportamiento de los ataques y tomar las medidas de seguridad necesarias. El firewall de bases de datos se coloca entre la aplicación web (visible para los usuarios) y el manejador de bases de datos (interactúa con la base de datos para guardar, modificar u obtener información) como se puede ver en la ilustración 2:


Ilustración 2 Flujo de comunicación entre el usuario, la aplicación, el firewall de bases de datos y la base de datos

Fuente: http://revista.seguridad.unam.mx/numero-18/firewall-de-bases-de-datos

GreenSQL Es un software que se instala para fungir como un firewall de base de datos entre la aplicación y el SMBD. Puede instalarse en varios sistemas operativos y configurarse de manera personalizada. Adicionalmente, intenta apegarse al Estándar de Seguridad de la Industria de las Tarjetas de Crédito (PCI DSS). Algunos de los manejadores de bases de datos que puede proteger son: MySQL, MariaDB, PostgreSQL, Microsoft SQL Server, Amazon RDS y la estructura de las bases de datos de Drupal. Funciones:      

Instalación en varias modalidades. Separación de tareas. Funcionamiento como IPS (sistema de prevención de intrusos) Envío de notificaciones por correo en tiempo real. Generación de reportes. Ayuda a optimizar el funcionamiento del manejador de bases de datos.

Oracle Database Firewall Opera sobre bases de datos que se encuentran en Oracle, así como IBM DB2, Sybase, Microsoft SQL Server y MySQL. Busca apegarse a las siguientes legislaciones: Acta Sarbanes-Oxley (SOX), Estándar de Seguridad de la Industria de las Tarjetas de Crédito (PCI DSS) y al Acta de la Ley de Portabilidad y Responsabilidad del Seguro Médico (HIPAA). Funciones:   

Auditoría del manejador de bases de datos, sistema operativo, directorios y otros servicios. Instalación en varias modalidades. Generación de bitácoras para su posterior análisis.


   

Arquitectura escalable. Personalización de los reportes. Funcionar en modo bloqueo o monitoreo. Permite configuraciones para alta disponibilidad.

ModSecurity Es un módulo del servidor de aplicaciones web Apache, cuyo funcionamiento principal se orienta a la protección de aplicaciones web mediante su funcionamiento como firewall, sin embargo, también cuenta con una serie de reglas que pueden emplearse para proteger las peticiones realizadas al manejador de bases de datos. Puede integrarse con otros servidores de aplicaciones web como Nginx, IIS y Java. La implementación de un firewall de bases de datos permite agregar una capa adicional de seguridad, sin embargo, es importante notar que es una medida adicional de seguridad, la cual debe iniciar desde el diseño e implementación de la base de datos. Como recomendación, antes de implementar un firewall de bases de datos, es necesario profundizar un poco más en el tema y tener presente que habrá una etapa de adecuación antes del funcionamiento óptimo. CONCLUSIONES Se puede afirmar que la seguridad implica la protección contra la revelación no autorizada (confidencialidad), la alteración no autorizada (integridad) y la destrucción intencional o involuntaria (disponibilidad), en este sentido la protección está en función de dos tipos de usuarios: • •

Los que tienen derecho de acceso Los que tienen derechos limitados a ciertas funciones

Dicho lo anterior la seguridad implica: los datos a proteger, las operaciones a realizar y los usuarios autorizados para manipular los datos.


FUENTES DE INFORMACIÓN [1] [2] [3] [4] [5]

[6]

[7]

ISO/IEC 17799:2005 - Information technology -- Security techniques [en] http://www.iso.org/iso/catalogue_detailcsnumber=39612 Escolano F. “Inteligencia Artificial”, Editorial Paraninfo, 2003 Aguilera L “Seguridad Informática” 2010, Madrid, Editorial Editex, S.A. Sitio de GreenSQL: http://www.greensql.com Sitio de Oracle Database Firewall: http://www.oracle.com/us/products/database/security/audit-vault-databasefirewall/overview/index.html Referencia técnica sobre Oracle Database Firewall: http://www.oracle.com/technetwork/products/database-firewall/database-firewall-ds161826.pdf Sitio de ModSecurity: http://www.modsecurity.org/

Seguridad en base de datos  
Read more
Read more
Similar to
Popular now
Just for you