juanin

Seguridad Lógica.

 

Introducción.

Seguridad, la podemos entender como una característica de cualquier sistema que nos indica que está libre de todo peligro, daño o riesgo, es decir, que en cierta forma está protegido. En las bases de datos tiene que haber una seguridad, que proteja la información almacenada en ellas. Esta seguridad tiene directa relación con el permiso que los usuarios posean para acceder a dichos datos.

Los sistemas de gestión de base de datos (DBMS), son un tipo de software dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. En la actualidad, éstos soportan uno o ambos enfoques de acuerdo a la seguridad, estos enfoques son el control discrecional y el obligatorio.

El discrecional se refiere al acceso que puede tener un usuario a una información que otro no puede tener y viceversa, sin orden jerárquico. En cambio, el obligatorio, es en base a un orden jerárquico. Sobre ello profundizaremos más en el interior del informe. También se verá en que ayudan las auditorias, en relación a los datos infiltrados.

Dentro de la seguridad de los documentos se definen 4 clases, que son: clase D, C, B y A, que proporcionan protección mínima, protección discrecional, protección obligatoria y protección verificada, respectivamente.

Además encontramos las bases de datos estadísticas, que nos permite sólo ver datos globales de alguna información. Y donde el cifrado de datos jugara un papel fundamental para la seguridad de la información que contiene las bases de datos

Control de acceso discrecional.

Es una forma de controlar el acceso a la información de la base de datos. Esta se centra en los llamados “privilegios” o autorizaciones de los usuarios sobre los objetos que componen dicha base. Esto es debido a que es más fácil definir qué es lo que está autorizado, a definir qué no lo está (si algo está autorizado, entonces no está restringido). Las autorizaciones de los usuarios están definidas por la empresa dueña de la base de datos, por lo tanto es una decisión política y no técnica la implementación de un control discrecional (o uno obligatorio, el cual veremos más adelante).

Las decisiones políticas tomadas por la empresa se almacenan en un “catálogo”, el cual es consultado por el subsistema de seguridad del DBMS para resolver la ecuación “a qué usuarios se les permite realizar qué operaciones sobre qué objetos” en combinación de un ID de usuario (para saber quién es) y una clave (para saber si es quien dice ser).

Un ejemplo bastante gráfico de la estructura de un control de acceso discrecional es el siguiente: el usuario 1 podría estar autorizado para ver a A y no a B; en cambio el usuario 2 podría estar autorizado para ver a B y no a A.

En resumen, el control de acceso discrecional está basado en privilegios (definidos por la empresa) de un usuario para acceder a cierta información que otro usuario no podría y viceversa.

Control de acceso obligatorio.

En ésta estructura, cada objeto tiene un nivel de clasificación y cada usuario un nivel de acreditación, los cuales se corresponden con los niveles de clasificación de los archivos. Supongamos que tenemos los niveles de clasificación “Súper secreto, Secreto y Confidencial” (suponiendo que Súper secreto es el de mayor importancia seguido por Secreto y finalmente por confidencial), un usuario 1 tiene acceso (con su respectiva ID y clave) a todos los archivos Súper secretos, por ende a los Secretos y los Confidenciales; un usuario 2 tiene acceso a los archivos Secretos, por ende a los Confidenciales, pero no a los Súper secretos; y un usuario 3 tiene acceso a los Confidenciales, pero no a los Secretos y menos a los Súper secretos. Esto se llama “propiedad de seguridad simple” y es la primera regla que rige esta estructura.

Hay una segunda regla la cual es necesario aclarar: un usuario 1 tiene acceso a los archivos Súper secretos, Secretos y Confidenciales (siguiendo el ejemplo anterior), pero sólo está autorizado para modificar archivos de clasificación Súper secreto y no a los demás. Esto es porque se podría infiltrar información de clasificación Súper secretos en archivos Secretos o Confidenciales. Así mismo el usuario 2 puede tener acceso a archivos Secretos y Confidenciales, pero sólo tiene autorización de modificar los archivos Secretos y no los Confidenciales.

Podríamos decir (para su fácil entendimiento y a modo de resumen) que los usuarios tienen derecho a trabajar o actualizar los archivos de su propio nivel, pero sólo tienen derecho de “lectura” frente a los demás niveles que están dentro de su alcance.

Registros de auditoría.

Cuando se decide implementar alguna estructura como la de acceso discrecional u obligatoria, hay que tener presente que no son perfectas y que están sujetas a ser violadas de alguna forma, sobre todo con el avance de la tecnología y los “hackers”.

Hay métodos que permiten tener acciones frente a posibles amenazas, por ejemplo si un usuario quiere tener acceso a algún objeto de la base de datos sin tener el permiso para ello lo más lógico es rechazar el intento, pero si los datos a los cuales se está intentando acceder o modificar son muy importantes, lo mejor es contar con un Registro de auditoría. Esto consiste en llevar automáticamente una cuenta de todas las operaciones realizadas por los usuarios sobre los datos.

Un ejemplo de lo que podría contener un registro de auditoría podría ser:

ü Petición.

ü Terminal desde donde fue hecha la petición.

ü El usuario que hizo la petición.

ü Fecha y hora de la petición.

ü Tuplas o atributos afectados.

ü Valores antiguos y valores ingresados.

Bases de datos estadísticas.

Una base de datos estadísticas es aquella que permite sólo mostrar información en general ya sean promedios, sumas, entre otras, es decir, no permite consultas que proporcionen informaciones individuales. Como por ejemplo: se puede pedir promedio de edades de un curso, pero no pedir la edad de una persona en particular.

El problema de estas bases de datos es que alguna persona podría llegar deducir a través de consultas válidas la información que no debe ser entregada. Esto dado que las bases de datos estadísticas tienen vestigios de la información original. Este problema de seguridad se hará cada vez más grave conforme al incremento del uso de data warehouse.

Data warehouse, es un tipo especial de base de datos. Puede ser definido como un almacén de datos orientado a un tema, no volátil y variante en el tiempo, que soporta decisiones de administración, el término no volátil se refiere a que no puede ser modificado, pero si borrados. Los data warehouses se originaron por dos razones; la necesidad de proporcionar una fuente única de datos limpia y consistente para propósitos de apoyo para la toma de decisiones; y por la necesidad de hacerlo sin afectar a los sistemas operacionales.

Para que se entienda más como se puede deducir por medio de consultas válidas, consultas ilegales daremos el siguiente ejemplo:

En una empresa trabaja un grupo de personas que consta de cuatro mujeres y un hombre.

Nombre del trabajador.

Edad del trabajador.

Claudia Salazar.

26 años.

Evelyn Vogel.

26 años.

Marcela Lampre.

33 años.

Fernanda Rocha.

23 años.

Daniel San Martín.

24 años.

Una persona x podría querer saber la edad de ese hombre, lo único que tendría que hacer serían dos consultas válidas, como: ¿Cuál es la suma de edades del grupo de trabajo?, ésta es una consulta global, por lo que es considerada válida. Y la segunda sería ¿Cuál es la suma de edades de las mujeres que trabajan en esa empresa?, ésta también es una consulta válida. Con estas dos respuestas podemos inferir la edad del hombre, con esta simple resta: 132 – 108 = 24.

Suma edades del grupo.

Suma edades de las mujeres del grupo.

132 años.

108 años.

Así de simple obtendríamos la edad del hombre, lo que demuestra que la información individual de esta persona está en peligro. A esta técnica se le llama deducción de información confidencial por inferencia.

Podemos darnos cuenta que la seguridad en una base de datos estadística es un problema real. Aunque se han hecho diversas sugerencias en la literatura, no está claro aún que alguna sea completamente satisfactoria. Una de ellas es el “intercambio de datos”, es decir, el intercambio de valores de atributos entre tupias de una forma que mantenga la precisión estadística, de manera en que si se identifica un valor en particular no se sepa a quién pertenece. El problema de este enfoque es encontrar el conjunto de entradas cuyos valores puedan ser intercambiados de esta manera.

Cifrado de datos.

Como ya sabemos, cualquier usuario puede acceder a un sistema de base de datos (siempre cuando sea un usuario autorizado), pero ¿qué pasaría si el usuario no está autorizado?, para esta amenaza es efectivo el cifrado de datos o también conocido por el nombre de “encriptación”, es decir, el guardado y transmisión de los datos sensibles en forma cifrada.

Para componer la clave de cifrado, debemos descomponer el llamado texto plano (en este caso sería la información que está en la base datos). La clave de cifrado es creada sometiéndose a un algoritmo de cifrado, para más detalle veamos de forma algorítmica un ejemplo:

1. Ingresamos el texto plano y tomamos su clave de cifrado:

Texto plano: matbustaman

Clave de cifrado: oabn

2. Tomamos el texto plano y lo dividimos de forma que quede en bloques que sean de la misma longitud que la clave de cifrado:

matb usta man+ ++++, el signo + muestra los espacio en blanco que sobran o los que pueden existir dentro de la cadena.

3. Luego cambiamos cada carácter del texto plano por un dato entero que va con un rango de 00 a 26, reemplazando el espacio en blanco =00, A=01…, Z=26:

M

A

T

B

U

S

T

A

M

A

N

+

+

+

+

+

13

01

20

02

21

19

20

01

13

01

14

00

00

00

00

00

Lo mismo hacemos con la clave de cifrado:

O

A

B

N

15

01

02

14

4. Ahora tomamos cada bloque numérico y lo sumamos con el bloque numérico de la clave de cifrado, cumpliendo que cada suma no sobrepase los 26, en ese caso se cumple que la suma de los números debe ser divida por 27 y ocupar el módulo de la división:

13

01

20

02

21

19

20

01

13

01

14

00

00

00

00

00

15

01

02

14

15

01

02

14

15

01

02

14

15

01

02

14

01

02

22

16

09

20

22

15

01

02

16

14

15

01

02

14

5. Luego se repite el paso número tres de forma inversa y luego reemplazados por su equivalencia alfabética, quedaría de esta forma:

01

02

22

16

09

20

22

15

01

02

16

14

15

01

02

14

A

B

W

P

I

T

W

O

A

B

P

N

O

A

B

N

Obtendríamos la siguiente cadena: “abwpitwoabpoabn”. Este es el enfoque de sustitución, es uno de los dos que hay, el otro es el de permutación, donde los caracteres del texto plano son solamente reorganizados en una secuencia diferente.

Si los miramos del punto de vista de seguridad, ninguno de estos dos enfoques son seguros, pero su fortaleza es su algoritmo, ya que éstos son los que proporciona su alto grado de seguridad. Unos de estos algoritmos es el estándar de cifrados DES, que fue desarrollado por IBM (llamado LUCIFER con anterioridad) y adoptado como estándar federal en los Estados Unidos en 1977.

DES cifra bloques de 64 bits, mediante permutación y substitución usando una clave de 56 bits y 8 más que son de paridad, produciendo así 64 bits de cifrado. DES consta de 19 etapas, la primera, es la de transposición inicial ó sea de permutación inicial llamada IP, las 16 etapas siguientes son basados en un algoritmo llamado Red de Feistel, que se basan en 4 pasos el primero selecciona el texto plano y lo divide en dos subcadenas, luego toma una función de cifrado y una Ki (la K representa la permutación echa, y la i es la cantidad de veces que se realizaron las permutaciones) para realizar diversas funciones con una de las subcadenas que se obtuvieron y la cadena obtenida reemplaza a la que no se modificó y así se repite en cada ronda el penúltimo paso es cambiar 32 bits de la izquierda y los 32 bits de la derecha y la última etapa, es la inversa de la primera(IP-1).

Otro enfoque de cifrado, es el “cifrado de clave publica” o la “criptografía”, es un sistema asimétrico donde las claves se dan en pares:

ü Una clave pública para el cifrado.

ü Una clave pública para el descifrado.

Este enfoque consta de una clave aleatoria que es privada y conocida sólo por el usuario, y una clave pública que puede ser conocida por otras entidades. La forma de operar de este método es que cuando el usuario desea enviar un mensaje a otro sólo debe cifrar el mensaje al receptor usando la clave pública de éste, y el receptor la podrá descifrar con su clave privada.

Para mostrar la manera en cómo esto funciona nos basaremos en el siguiente enfoque, “el RSA” –elaborado en 1977 por Ron Rivest, Adi Shamir y Len Adleman en el MIT, de ahí proviene su nombre– ellos lo basaron mediante un algoritmo matemático el cual tiene dos hechos:

ü Existe un algoritmo rápido para determinar si un número dado es primo.

ü Pero no existe un algoritmo rápido para encontrar los factores primos de un número compuesto (no primo) dado.

La seguridad de este algoritmo radica en que no hay maneras rápidas conocidas de factorizar un número grande en sus factores primos utilizando computadoras tradicionales. El esquema matemático del RSA funciona de la siguiente forma:

ü Se selecciona al azar dos números primos, que sean diferentes p y q y se calcula el producto, n=p*q.

ü Los valores p y q NO se hacen públicos.

ü Se calcula ϕ n = (p-1)* (q-1).

ü Se calcula la clave pública e de forma que 1 < ϕ e < n y que cumpla con la condición: mcd [e, ϕ (n)] = 1.

ü Cada usuario calcula la clave privada d = inv [e,ϕ(n)].

ü Se hace público el grupo n y la clave e.

ü Se guarda en secreto la clave d.

Niveles de seguridad lógica contra ataques externos

En los últimos años el desarrollo tecnológico impulsado por los procesos de innovación ha crecido de manera considerable, son indudable los beneficios que estas innovaciones traen para las organizaciones a nivel de competitividad y rentabilidad, no obstante se han convertido en un elemento de riesgo, por cuanto que se reportan en las redes de información, situaciones de acceso no autorizado, modificación o eliminación de archivos confidenciales, caída inesperada e inexplicable de los servicios de red y de los servidores.

En la mayoría de los casos estas fallas de seguridad son ocasionadas por personas inescrupulosas que hacen uso de sus habilidades y conocimientos técnicos para infiltrarse a través de las redes telemáticas, estas personas son identificas a nivel mundial con denominaciones como Hackers y Crackers. Cabe destacar que gran parte de estas intromisiones son efectuadas por personal interno de confianza, que de manera no intencional en algunos casos, provocan estas fallas de seguridad.

Políticas de seguridad informática (PSI)

Una política de seguridad informática es una forma de comunicarse con los usuarios y los gerentes. Las PSI establecen el canal formal de actuación del personal, en relación con los recursos y servicios informáticos, importantes de la organización.

No se trata de una descripción técnica de mecanismos de seguridad, ni de una expresión legal que involucre sanciones a conductas de los empleados. Es más bien una descripción de los que deseamos proteger y el por qué de ello.

Amenazas a la seguridad de la información.

Se entiende por amenaza a la seguridad de la información, una condición del entorno del sistema de información que dada una oportunidad, podría producir una violación de la seguridad (confidencialidad, integridad, disponibilidad).

Las amenazas a la seguridad en una red pueden caracterizarse modelando el sistema como un flujo de información que viene desde una fuente, como por ejemplo un archivo ubicado en la memoria principal, a un destino, que puede ser otro archivo o un usuario.

Las amenazas están clasificadas en las siguientes categorías:

Interrupción: un recurso del sistema es destruido o se vuelve no disponible, este ataque es contra la disponibilidad. Ejemplos: destrucción de un disco duro.

Intercepción: una entidad no autorizada consigue acceso a un recurso, éste es contra la confidencialidad.

Modificación: una entidad no autorizada no sólo consigue acceder a un recurso, sino que es capaz de manipularlo.

Fabricación: una entidad no autorizada inserta objetos falsificados en el sistema.

Control de acceso externo.

Los controles de acceso pueden implementarse en el sistema operativo, sobre los de aplicación, en bases de datos, en un paquete específico de seguridad o en cualquier otro utilitario.

Los controles de acceso constituyen una importante ayuda para proteger al sistema operativo de la red, al sistema de aplicación y demás software de la utilización o modificaciones no autorizadas; para mantener la integridad de la información y para resguardar la información confidencial de accesos no autorizados. Entre los tipos de accesos se encuentran:

Dispositivos de control de puertos: autorizan el acceso a un puerto determinado y pueden estar físicamente separados o incluidos en otro dispositivo de comunicaciones, como por ejemplo un módem.

Firewalls o puertas de seguridad: permiten bloquear o filtrar el acceso entre dos redes, usualmente una privada y otra externa, por ejemplo Internet.

Acceso de personal contratado o consultores: debido a que este tipo de personal en general presta servicios temporarios, debe ponerse especial consideración en la política y administración de sus perfiles de acceso.

Accesos públicos: para los sistemas de información consultados por el público en general, o los utilizados para distribuir o recibir información computarizada.

Por otro lado para llevar mayor control de seguridad es importante mantener normas y procesos basados en técnicas aprobadas por grandes empresas de tecnología, tal es caso del próximo punto a tratar.

Defensa en profundidad.

Para lograr esta defensa, Microsoft (2004) creó la estrategia defensa en profundidad, denominada también seguridad en multicapa, procede de un término militar utilizado para describir la aplicación de contramedidas de seguridad con el fin de formar un entorno de seguridad cohesivo sin un sólo punto de error.

Defensa de datos.

A nivel de cliente, los datos almacenados localmente son especialmente vulnerables. Si se roba un equipo portátil, es posible realizar copias de seguridad, restaurar y leer los datos en otro equipo, aunque el delincuente no pueda conectarse al sistema.

Defensa de aplicaciones.

Como una capa de defensa más, el refuerzo de las aplicaciones es una parte esencial de cualquier modelo de seguridad. Muchas aplicaciones utilizan el subsistema de seguridad de Windows 2000 para proporcionar seguridad.

Defensa de host.

El refuerzo de la defensa de los Hosts constituye otra capa de protección importante, por lo que se debe evaluar cada host del entorno y crear directivas que limiten cada servidor sólo a las tareas que tenga que realizar.

Defensa de redes.

Si se dispone de una serie de redes en la organización, éstas deben ser evaluadas individualmente para asegurarse de que se ha establecido una seguridad apropiada.

Defensa de perímetros.

La protección del perímetro de la red es el aspecto más importante para detener los ataques externos. Si el perímetro permanece seguro, la red interna estará protegida de ataques externos.

Tipos de ataque.

A continuación se expondrán diferentes tipos de ataques perpetrados, principalmente, por Hackers. Estos ataques pueden ser realizados sobre cualquier tipo de red, sistema operativo, usando diferentes protocolos, etc.

Ataques de monitorización.

Este tipo de ataque se realiza para observar a la víctima y su sistema, con el objetivo de obtener información, establecer sus vulnerabilidades y posibles formas de acceso futuro.

Ataques de autentificación.

Este tipo de ataque tiene como objetivo engañar al sistema de la víctima para ingresar al mismo; generalmente se realiza tomando las sesiones ya establecidas por la persona u obteniendo su nombre de usuario y password.

Ataques de modificación – daño.

Son particularmente serios cuando el que lo realiza ha obtenido derechos de administrador o supervisor sin autorización en el software instalado de la víctima, con la capacidad de disparar cualquier comando y por ende alterar o borrar cualquier información que puede incluso terminar en la baja total del sistema.

Publicidad por Bligoo.com

Escribe un comentario

¿Quieres usar tu foto? - Inicia tu sesión o Regístrate gratis »
Comentarios de este artículo en RSS