| Artículos | 01 DIC 2006

Confidencialidad e integridad de datos: almacenamiento

Tags: Histórico
Curso de seguridad (IV)
Gonzalo Alvarez.
En este curso de seguridad en bases de datos en cinco entregas se explicarán algunos de los conceptos más importantes para protegerse frente a los ataques más frecuentes y las amenazas más graves. La garantía de la confidencialidad e integridad de los datos resulta de la mayor importancia. En esta entrega se explican las técnicas de cifrado más eficaces para proteger la confidencialidad y los mecanismos internos y externos a la base de datos para asegurar la integridad.

Nivel de dificultad: Alto
Objetivo: Asegurar la confidencialidad de los datos mediante el cifrado
Herramientas: Las propias herramientas que acompañan a la base de datos más herramientas comerciales descritas en el artículo

Son muy frecuentes las noticias en los medios acerca de robos por parte de hackers de bases de datos con información de clientes en todo tipo de empresas, grandes y pequeñas, o la filtración de esta información a la competencia por parte de empleados internos desleales. Se trata de violaciones de la confidencialidad de la información, que en España pueden ser sancionables por contravenir la LOPD. La triste realidad actual es que, en general, la información de las bases de datos no se cifra. Sucesos menos noticiosos, pero que encierran consecuencias incluso más graves, corresponden a la alteración no autorizada de los registros de la base de datos, cambios que pueden pasar inadvertidos. En este caso, se trata de violaciones contra la integridad de la información. En el pasado, implantar soluciones de seguridad que incorporasen controles de confidencialidad e integridad era un proceso altamente costoso, muy complejo y con un gran impacto en el rendimiento. Afortunadamente, el panorama está cambiando. En este artículo aprenderá cómo.

Confidencialidad
La confidencialidad busca garantizar que los datos, objetos y recursos solamente pueden ser accedidos por sus destinatarios legítimos. Los datos o bien se encuentran almacenados en algún tipo de soporte físico, como en el caso de las bases de datos, o bien se encuentran en tránsito entre dos equipos a través de una red de comunicaciones. Ambos estados de los datos, objetos y recursos requieren controles de seguridad únicos y específicos. En esta entrega se tratará la confidencialidad durante el almacenamiento, dejándose para la siguiente la confidencialidad durante el transporte. Entre los ataques más frecuentes contra la confidencialidad se pueden citar:
Los sniffers de red: Estos programas capturan todo el tráfico que circula por una red. Toda información que no se encuentre cifrada, será conocida por el atacante.
El acceso remoto no autorizado a bases de datos: A menudo, los atacantes explotan errores de configuración en el control de acceso a la base de datos o fallos en las aplicaciones que actúan de interfaz entre el usuario y la base de datos. El resultado final es el acceso indiscriminado a la información confidencial almacenada en la misma.
Por su parte, las contramedidas más utilizadas para salvaguardar la confidencialidad frente a éstas y otras posibles amenazas son:
Cifrado de datos: Garantiza que la información no es inteligible para individuos, entidades o procesos no autorizados. Consiste en transformar un texto en claro mediante un proceso de cifrado en un texto cifrado, gracias a una información secreta o clave de cifrado. Cuando se emplea la misma clave en las operaciones de cifrado y descifrado, se dice que el criptosistema es simétrico o de clave secreta (véase la Figura 1). Estos sistemas son muy rápidos, resultando apropiados para funciones de cifrado de grandes volúmenes de datos o de información en tiempo presente, como transmisión de vídeo o voz. Los algoritmos de clave secreta más utilizados son DES, Triple DES, RC4, RC5 y AES. Por el contrario, cuando se utiliza una pareja de claves para separar los procesos de cifrado y descifrado, se dice que el criptosistema es asimétrico o de clave pública. Una clave, la privada, se mantiene secreta, mientras que la segunda clave, la pública, debe ser conocida por todos (véase la Figura 2). El sistema tiene la propiedad de que a partir del conocimiento de la clave pública no es posible descifrar el mensaje por ella cifrado ni determinar la clave privada correspondiente. Los criptosistemas de clave pública, aunque más lentos que los simétricos, resultan adecuados para las funciones de autenticación, distribución de claves y firmas digitales. El algoritmo de clave pública más utilizado es RSA.
Autenticación de usuarios: Asegura la identidad de los sujetos participantes en una comunicación o sesión de trabajo, mediante contraseñas, biometría, tarjetas inteligentes o de banda magnética, o procedimientos similares. La autenticación se trató en la primera entrega del curso.
Autorización de usuarios: Una vez que la identidad del sujeto ha sido correctamente verificada, debe dotársele de privilegios para poder efectuar ciertas operaciones con los datos, objetos y recursos protegidos, tales como leerlos, modificarlos, crearlos, borrarlos, o imprimirlos. Los conceptos básicos de autorización en bases de datos se introdujeron asimismo en la primera entrega del curso.
Clasificación de datos: No todos los datos poseen los mismos niveles de privacidad, sensibilidad o confidencialidad. Algunos datos requieren más seguridad que otros. Por consiguiente, debe destinarse un mayor esfuerzo e inversión a proteger los datos más importantes, mientras se relajan los controles sobre datos menos sensibles. La clasificación de datos ayuda a determinar cuánto esfuerzo, dinero y recursos deben destinarse para proteger los diferentes tipos de datos y controlar su acceso. En el sector privado, la clasificación de datos típicamente consta de cuatro niveles, ordenados de mayor a menor seguridad requerida: confidencial, aplicado a información cuyo uso por personas no autorizadas puede suponer un importante daño a la organización; sensible o restringido, aplicado a información cuya utilización por personas no autorizadas iría contra los intereses de la organización y/o sus clientes; privado o de uso interno, para datos que no necesitan ningún grado de protección para su difusión dentro de la organización; y público, para datos que no necesitan ningún grado de protección para su difusión. La LOPD regula las obligaciones legales en el tratamiento de datos de carácter personal con distintos niveles de seguridad en función de su nivel de sensibilidad. Sólo deben cifrarse aquellos datos que lo requieran: por ejemplo, puede tener sentido cifrar la columna con los números de tarjeta de crédito de los clientes, pero no la columna con los apellidos.

Cifrado incorporado en la base de datos
Existe una importante diferencia entre cifrar y calcular hashes, los cuales se describen más adelante en la sección sobre Integridad. Los hashes calculan un resumen de los datos y son irreversibles. Por lo tanto, la información hasheada no se puede recuperar, a diferencia del cifrado, que sí es reversible.
Con el fin de proteger las contraseñas de los usuarios de la base de datos, los gestores almacenan el hash de la contraseña en lugar de la propia contraseña. De esta manera, aunque un atacante sea capaz de listar la tabla con los usuarios de la base de datos, no obtendrá sus contraseñas, no quedándole más remedio que recurrir a ataques de diccionario o de fuerza bruta contra los ha

Contenidos recomendados...

Comentar
Para comentar, es necesario iniciar sesión
Se muestran 0 comentarios
X

Uso de cookies

Esta web utiliza cookies técnicas, de personalización y análisis, propias y de terceros, para facilitarle la navegación de forma anónima y analizar estadísticas del uso de la web. Consideramos que si continúa navegando, acepta su uso. Obtener más información