You are on page 1of 37

Seguridad en Bases

de Datos
Isabel Besembel C.
Departamento de Computación. GIDyC. Escuela de
Ingeniería de Sistemas. Facultad de Ingeniería.
Universidad de Los Andes.
Mérida, Venezuela.
I Jornadas de Tecnología Aplicadas a las
Telecomunicaciones (JOTATEL) 11-14/7/02.
Reconocimiento especial Reinaldo Mayol (criptografía) y Willie
para: Zayas (prototipo)
Agenda
¾ Aspectos generales
¾ Seguridad en bases de datos relacionales
¾ Seguridad en bases de datos orientadas por
objetos
¾ Seguridad en bases de datos con acceso por
red
¾ Prototipo
¾ Conclusiones

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Aspectos generales
¾ Diferentes requerimientos de protección
para los datos en la BD
¾ Autorización
¾ Control de concurrencia
¾ Recuperación y respaldo
¾ Cifrado de datos

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Protección de datos
¾ Los datos tiene diferentes requerimientos
de protección
¾ Datos accedidos por todos
¾ Datos accedidos por usuarios específicos
¾ Datos accedidos por todos excepto por
ciertos usuarios

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Autorización
¾ Se expresa a través de los derechos de acceso
¾ Usuario: humano o agente autónomo
¾ Rol: función de trabajo o cargo con alguna
semántica asociada según su autoridad y
responsabilidad
¾ Permiso: aprobación de un modo particular de
acceso a los datos o algún privilegio para
realizar acciones específicas

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Control de concurrencia
¾ Concurrencia: varios programas pueden estar en la cola de
procesamiento para ejecutarse en forma intercalada.
¾ Transacción: unidad atómica de trabajo que se realiza por
completo o bien no se efectúa en absoluto.
¾ Propiedades de las transacciones (ACID)
¾ Atomicidad: T se realiza completamente o no se realiza en absoluto.
¾ Consistencia: Toma una BD consistente y devuelve una BD
consistente. Una BD consistente es una BD cuyos valores
almacenados cumplen con todas las restricciones de integridad.
¾ Aislamiento: Cada T debe evitar que sus actualizaciones sean vistas
por otras T, mientras ella no haya sido confirmada.
¾ Durabilidad: Las operaciones realizadas por una T confirmada no
deben perderse.

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Control de concurrencia
leer
inicio escribir con firmar

Activa Semi-con firmada Con firmada

fin

abo rtar

Fallida Termin ada

[inicio, T] marca el inicio de T


[escribir, T, X, anterior, nuevo] indica que T cambió el valor
de X de anterior a nuevo
[leer, T, X] indica que T leyó X
[confirmar, T] marca el fin exitoso de T y que se puede
confirmar toda su actividad
[abortar, T] indica que se abortó T

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Recuperación y respaldo
Recuperación: restauración de la base de
datos a algún estado anterior antes de la falla.
Tipos de fallas:
1. Del computador (caída del sistema)
2. Errores detectados por la Ti o en el control de la concurrencia
3. Falla de disco
4. Falla catastrófica

Respaldo:
¾ Manejo de las fallas catastróficas o fallas de disco.
¾ La BD y la bitácora se copian periódicamente en
cinta, al haber la falla se debe montar el último
respaldo y reiniciar el sistema.
Procedimientos de respaldo
Reconocimiento especial Reinaldo Mayol (criptografía) y Willie
para: Zayas (prototipo)
Cifrado de datos
¾ Clave corta+algoritmos complejos y secretos vs. Clave
larga+algoritmos públicos
¾ Cifrado mediante un algoritmo, cuya fortaleza viene
dada por el número de bits de la clave utilizada. (2048
bits se considera inviolable)
¾ Tipos de cifrado:
¾ Cifrado simétrico (o de clave privada): Se utiliza la misma
clave para cifrar y descifrar.
¾ Cifrado asimétrico (o de clave pública):Se utilizan claves
diferentes e interdependientes para cifrar y descifrar
Reconocimiento especial Reinaldo Mayol (criptografía) y Willie
para: Zayas (prototipo)
Cifrado de mensajes

Clave de Texto
Texto cifrado K cifrado C
plano P
laste st
este es Algoritmo de ueno
un cifrado E extoe
texto pn
plano

Para cifrar: Ek(P) =C


Para descifrar: Dk(Ek(P))=Dk(C) = P
Reconocimiento especial Reinaldo Mayol (criptografía) y Willie
para: Zayas (prototipo)
Seguridad en bases de datos relacionales
Un Sistema de Gestión de Bases de Datos (SGBD)
cuenta con un subsistema de seguridad y autorización
que se encarga de garantizar la seguridad de porciones
de la base de datos (BD) contra el acceso no autorizado,
esto implica:
¾Identificar y autorizar a los usuarios:
¾ uso de códigos de acceso y palabras claves,
¾ exámenes,
¾ impresiones digitales,
¾ reconocimiento de voz,
¾ barrido de la retina, etc.

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Seguridad en bases de datos relacionales

¾ Autorización: usar derechos de acceso dados:


¾ por el terminal,
¾ por la operación que puede realizar o
¾ por la hora del día.
¾ Uso de técnicas de cifrado:
¾ para proteger datos en BD distribuidas o
¾ con acceso por red o internet.

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Seguridad en bases de datos relacionales

¾ Diferentes tipos de cuentas: en especial la del ABD


con permisos para:
¾ creación de cuentas,
¾ concesión y revocación de privilegios y
¾ asignación de los niveles de seguridad.
¾ 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,
para facilitar la auditoría de la BD.

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Modelos de seguridad
¾ Discrecional: se usa para otorgar y revocar
privilegios a los usuarios a nivel de archivos,
registros o campos en un modo determinado
(consulta o modificación).
¾ Obligatoria: sirve para imponer seguridad de
varios niveles, tanto para los usuarios, como para
los datos.

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Seguridad en bases de datos relacionales
¾ El ABD asigna el propietario de un esquema,
quien puede otorgar o revocar privilegios a otros
usuarios en la forma de consulta (select),
modificación o referencias.
¾ A través del uso de las instrucciones grant y
revoke se pueden propagar los privilegios en forma
horizontal o vertical.
¾ Ejemplo en SQL:
grant select on Empleado to códigoUsuario
revoke select on Empleado from códigoUsuario

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Seguridad en bases de datos orientadas por
objetos

El modelo integrado de seguridad en bases de datos


orientadas por objetos
¾ Origen en el modelo de seguridad discrecional y
obligatoria para bases de datos orientadas por objetos.
¾ Las políticas de acceso de un usuario se definen a
partir de:
¾ la identificación del mismo y de las reglas que
especifican para cualquier usuario y objeto en el
sistema, el tipo de acceso (lectura, escritura o
ejecución) que tienen sobre el objeto.

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Seguridad en bases de datos orientadas por
objetos

La verificación de una autorización puede realizarse de


dos formas:
¾ usando el cálculo explícito, es decir, existe una
autorización para cada tipo de acceso y por ello, de
no existir tal autorización significa que el usuario no
está autorizado; o
¾ debe utilizarse el cálculo implícito, donde una
autorización almacenada no implica directamente la
negación de la misma.

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Seguridad en bases de datos orientadas por
objetos
Modelo de control de acceso basado en roles (RBAC)
¾ Permisos asociados a roles
¾ Positivos, posibilidad de ejecutar acciones
¾ Negativos, se modelan como restricciones
¾ Usuarios miembros de roles
¾ Un rol puede tener varios permisos
¾ Un permiso puede ser asignado a varios roles
¾ Roles organizados según un orden parcial, X ≥ Y
indica que X hereda los permisos de Y
¾ En una sesión, un usuario indica su rol.
¾ Un usuario puede tener abiertas varias sesiones,
cada una con un rol indicado.
Reconocimiento especial Reinaldo Mayol (criptografía) y Willie
para: Zayas (prototipo)
Modelo basado en roles
¾ Principios de seguridad:
¾ El último privilegio: solo los permisos requeridos para la
ejecución de una tarea se asignan al rol
¾ Separación de tareas: roles mutuamente exclusivos son
necesarios para ejecutar una tarea delicada
¾ Jerarquía de roles: refleja la jerarquía organizacional
según responsabilidades y autoridades
Director
Administador
Delegado
Analista

Usuario
Reconocimiento especial Reinaldo Mayol (criptografía) y Willie
para: Zayas (prototipo)
Cifrado simétrico

CLAVE
ÚNICA

$TG $TG
5e RED 5e
Cifrador Descifra
dor

Pero: ¿Cómo transferimos la clave?

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Cifrado asimétrico
Esquema de cifrado asimétrico o clave pública

CLAVES
DIFERENTES

$TG $TG
5e RED 5e
Cifrador Descifra
dor

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
¿Cómo funciona?
¾ El sistema funciona con un par de claves, una para
cifrar y otra para descifrar
¾ Una clave es secreta y nunca es transmitida
¾ La otra clave es pública y puede ser difundida por la
red sin peligro
¾ Si un texto es cifrado con una clave, sólo puede
ser descifrado con su pareja
¾Si un texto puede ser descifrado
satisfactoriamente con una clave, sólo puede
haber sido cifrado
Reinaldo
con(criptografía)
Mayol
su pareja y Willie
Reconocimiento especial
para: Zayas (prototipo)
Ejemplo
Reinaldo desea enviar un mensaje cifrado a Maruja
Reinaldo:
•Cifra el mensaje con la clave pública de Maruja.
Maruja:
•Descifra el mensaje utilizando su clave privada
Pedro Elchismoso quiere también enterarse
Pedro Elchismoso tiene:
•Su clave privada, no le sirve
•La clave pública de Reinaldo, no le sirve
•La clave pública de Maruja, no le sirve
•La clave pública de cualquiera, no le sirve
Por lo tanto: Pedro Elchismoso se queda con las ganas
Reconocimiento especial Reinaldo Mayol (criptografía) y Willie
para: Zayas (prototipo)
Ejemplo gráfico
Reinaldo está seguro que nadie cambiará su mensaje a Maruja

19 5 =2476099 /119
19
=208807 resto 66

Clave pública: 5,119


Texto Cifrado 66

66 77 =1.27..X10 140 /119


19
=1.06 x10138 resto 19

Clave privada 77,119


Maruja está segura que nadie ha leido o modificado su mensaje, pero…
¿Cómo sabe Maruja que fue realmente Reinaldo quien lo envió?
Reconocimiento especial Reinaldo Mayol (criptografía) y Willie
para: Zayas (prototipo)
Firma digital
Clave privada de Maruja Clave pública de Maruja

$TG $TG
Descifra
5e RED 5e dor
Cifrador

Maruja Reinaldo
Cualquiera puede descifrarlo, pero...
Si se logra descifrar correctamente significa:
1. Que el mensaje fue cifrado con la clave privada de Maruja
2. Y solo Maruja tiene su clave privada
3. Se asegura que quien lo envió fue Maruja
Reconocimiento especial Reinaldo Mayol (criptografía) y Willie
para: Zayas (prototipo)
Conexión segura con firma
digital Un pequeño
cambio en
el mensaje
Mensaje Mensaje de entrada
Clave pública Clave pública (incluso de
del destinatario del remitente un sólo bit)
produce un
número
hash hash c

+ hash
Mensaje totalmente
firmado diferente.
Clave privada
ifrado

del remitente

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Requisitos de una transacción
¾ Autenticidad: ambas partes involucradas en la transacción
son quienes dicen ser.
¾ Integridad: mensaje enviado = mensaje recibido.
¾ Confidencialidad: el mensaje enviado solo puede ser
leido por el destinatario.
¾ Imposibilidad de negar la transacción: los
mensajes tienen la misma validez a aquellos escritos en papel y
firmados.
¾ Certificados digitales: emitidos por empresas
autorizadas y confiables.

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Conexión segura en Internet
¾ Aspectos: ¾ Funcionamiento:
¾ Intercambio de ¾ Establecimiento de la
conexión
información segura ¾ Solicitud de conexión segura
¾ Imposibilidad de ¾ Envío del certificado
acceso a lugares electrónico
privados ¾ Establecimiento de la
comunicación segura, basada
¾ Servidor seguro: en una clave simétrica,
servidor web que establece una generada en cada sesión y
conexión con el cliente donde la que solo ambas máquinas
información viaja codificada. conocen.

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Prototipo
¾ Tareas:
Creación de bases de datos, de clases, instancias de clases y
métodos.
¾ Componentes:
Aplicación cliente en Java, applet incrustado en una página web
Aplicación servidor en servlets de Java
Base de datos en Sybase adaptive server anywhere 6.0
Conexión basada en sockets
• El applet se concibió como un puente de comunicación entre el
usuario y el sistema de gestión de bases de datos, es auto
configurable ya que sus funciones están limitadas por el nivel de
acceso o rol del usuario que se conecta al sistema.
• El paquete AWT contiene componentes gráficos básicos.

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Prototipo: pantalla inicial

Paneles de
aplicación
y controles Menú
Principal
de la
aplicación

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Prototipo: usuarios del sistema

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Prototipo: permisos a clases

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Prototipo: permisos a métodos

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Prototipo: roles

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Prototipo: creación de métodos

Reconocimiento especial Reinaldo Mayol (criptografía) y Willie


para: Zayas (prototipo)
Conclusiones
¾ Integración de los modelos de seguridad,
discrecional y obligatoria.
¾ Acceso por red a la BD implica uso de técnicas
de criptografía.
¾ Visión sistémica que incluya:
¾ Modelos de seguridad
¾ Manejo de respaldos
¾ Técnicas de criptografía
¾ Control de concurrencia y recuperación es tarea del
SMBD
Reconocimiento especial Reinaldo Mayol (criptografía) y Willie
para: Zayas (prototipo)
Reconocimiento especial Reinaldo Mayol (criptografía) y Willie
para: Zayas (prototipo)

You might also like