Seguridad y Respaldos en Base de Datos

REPÚBLICA BOLIVARIANA DE VENEZUELA MINISTERIO DEL PODER POPULAR PARA LA EDUCACIÓN UNIVERSITARIA, CIENCIA Y TECNOLOGÍA IN

Views 72 Downloads 2 File size 233KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

REPÚBLICA BOLIVARIANA DE VENEZUELA MINISTERIO DEL PODER POPULAR PARA LA EDUCACIÓN UNIVERSITARIA, CIENCIA Y TECNOLOGÍA INSTITUTO UNIVERSITARIO POLITECNICO DEL ESTADO BOLÍVAR PROGRAMA NACIONAL DE FORMACIÓN DE (EN) INGENIERÍA EN INFORMÁTICA ADMINISTRACION DE BASES DE DATOS IV-INF-2N

Docente Asesor: Hermes Marcano

Autores: Fabiola Angarita 18.828.000 Anghela Hernández 26.355.270

CIUDAD BOLIVAR, ABRIL DEL 2019

ASPECTOS BASICOS SEGURIDAD EN BASE DE DATOS La seguridad en bases de datos de un Sistema de Gestión de Base de Datos (SGBD), se basa en confidencialidad, integridad y disponibilidad. Estos tres puntos son una base sólida sobre la cual desarrollar toda la seguridad al planificar e implementar sistemas de información, y especialmente en aquellos que son tan importantes como un SGBD. En cualquier caso estos tres aspectos principales, son las distintas vertientes de la seguridad. La confidencialidad: se cumple cuando solo las personas autorizadas (en su sentido amplio podríamos referirnos también a sistemas) pueden conocer los datos o la información correspondiente. La integridad: consiste en que sólo las personas autorizadas puedan variar (modificar o borrar) los datos. Además deben quedar pistas para control posterior y para auditoria. Pensemos que alguien variara datos de forma que perdiéramos la información de determinadas deudas a cobrar (o que sin perderla tuviéramos que recurrir a la información en papel), o que modificara la última parte de los domicilios de algunos clientes. Algunas de estas acciones se podrían tardar en detectar, y tal vez las diferentes copias de seguridad hechas a lo largo del tiempo estarían viciadas, lo que haría difícil la reconstrucción. La disponibilidad: se cumple si las personas autorizadas pueden acceder a tiempo a la información. El disponer de la información después del momento necesario puede equivaler a la no disponibilidad. Otro tema es disponer de la información a tiempo pero que esta no sea correcta, e incluso que no se sepa, lo que puede originar la toma de decisiones erróneas. Otro caso grave es la no disponibilidad absoluta. Por haberse producido algún desastre. En este caso a medida que pasa el tiempo el impacto será mayor, hasta llegar a suponer la no continuidad de la entidad. En relación con ello deben existir soluciones alternativas, basadas en medios propios o contratados, copias actualizadas de la información crítica y de programas en un lugar diferente, y un verdadero plan de continuidad que permitía restablecer las operaciones en un tiempo inferior o igual al prefijo. Para ello los usuarios habrán determinado previamente la criticidad de las aplicaciones y el impacto en sus áreas por parte de un comité, se habrán determinado las prioridades. En la preparación y actualización del plan debemos pensar en situaciones posibles y en el impacto que tendrían en nuestra entidad (en su caso en las de nuestros clientes), especialmente si no disponemos de la información necesaria almacenada en lugares alternativos.

Hoy en día, las bases de datos son componentes cardinales de cualquier aplicación basada en web, permitiendo que los sitios web provean contenido dinámico. Debido a que información considerablemente sensible o secreta puede ser almacenada en tales bases de datos, usted debe considerar seriamente la forma de protegerlas. Para recuperar o almacenar cualquier información necesita conectarse a la base de datos, enviar una consulta válida, recoger el resultado y cerrar la conexión. Hoy en día, el lenguaje de consultas usado comúnmente en estas interacciones es el Lenguaje de Consultas Estructurado (SQL por sus siglas en Inglés). Puede apreciar cómo un atacante puede intentar acometidas con una consulta SQL. Como puede apreciar, PHP no puede proteger su base de datos por sí solo. Mantenga en mente esta simple regla: protección en profundidad. Entre más acciones tome para incrementar la protección de su base de datos, menor será la probabilidad de que un atacante tenga éxito, y exponga o abuse de cualquier información secreta que estuviera almacenada. Un buen diseño del esquema de la base de datos y de la aplicación basta para lidiar con sus mayores temores.

TECNICAS DE SEGURIDAD Existen tres técnicas de copia de seguridad: Copia de seguridad sin conexión (en frío), Copia de seguridad en conexión (en caliente) y Copia de seguridad en conexión activa Copia de seguridad sin conexión (en frío): La base de datos se cierra limpiamente y se pone fuera de conexión. El software de copia de seguridad independiente copia entonces los archivos en los dispositivos de copia de seguridad. Cuando la copia finaliza, la base de datos se puede poner en conexión. Los datos dejan de estar disponibles desde el momento en que la base de datos comienza a cerrarse hasta que se pone de nuevo en conexión. Copia de seguridad en conexión (en caliente): El sistema de administración de la base de datos se está ejecutando y la base de datos está en conexión. Sin embargo, no se está teniendo acceso a la base de datos propiamente dicha y, por lo tanto, no está disponible para que la usen las aplicaciones durante la copia de seguridad. Copia de seguridad en conexión activa: La base de datos está en conexión y se usa activamente. La copia de seguridad se ejecuta durante el procesamiento normal de transacciones. No se requiere ninguna pausa para la copia de seguridad Otra técnica de seguridad es el cifrado de datos que sirve para proteger datos confidenciales que se transmiten por satélite o algún tipo de red de comunicaciones. Asimismo el cifrado puede proveer protección adicional a secciones confidenciales de una base de datos. Los datos se codifican mediante algún algoritmo de codificación. Un usuario no autorizado tendrá problemas para descifrar los datos codificados, pero un usuario autorizado contará con algoritmos para descifrarlos.

GESTION DE SEGURIDAD El Sistema de Gestión de Base de Datos (SGBD) se encarga de proteger el sistema contra las amenazas de las bases de Datos en Seguridad lógica, Seguridad física y Seguridad de acceso Seguridad física: este nivel de seguridad implica mantener la integridad física de los archivos donde se almacena la base de datos y el log de transacciones, en el disco del servidor. Será implementado con procedimientos de resguardo, back-up, y restauración. Dichos procedimientos serán realizados periódicamente por el administrador de la aplicación. Seguridad de acceso: este nivel de seguridad implica restringir el acceso a los datos por parte de usuarios no autorizados. Será implementado tanto en la base de datos como en la aplicación. La administración de la seguridad se realiza con un módulo especialmente diseñado para esa tarea.

CONCESIÓN Y REVOCACIÓN DE PRIVILEGIO Un SGBD cuenta con un subsistema de seguridad y autorización que se encarga de garantizar la seguridad de la BD contra el acceso no autorizado. 

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



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 Base de Datos distribuidas o con acceso por red o internet.



Diferentes tipos de cuentas: en especial del Administrador de Base de Datos (ABD) con permisos para la creación de bases de cuentas, concesiones 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, lo cual facilita la auditoría de la Base de Datos.

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). El Administrador de Base de Datos 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 la instrucción grant option se pueden propagar los privilegios en forma horizontal o vertical.

Obligatoria: sirve para imponer seguridad de varios niveles tanto para los usuarios como para los datos. El problema de la seguridad consiste en lograr que los recursos de un sistema sean, bajo toda circunstancia, utilizados para los fines previstos. Para eso se utilizan mecanismos de protección. Los sistemas operativos proveen algunos mecanismos de protección para poder implementar políticas de seguridad. Entre las obligaciones del Administrador de Base de Datos ABD está otorgar privilegios a los usuarios y clasificar los usuarios y los datos de acuerdo con la política de la organización. Las órdenes privilegiadas del ABD incluyen los siguientes tipos de acciones: 1. Creación de cuentas 2. Concesión de privilegios. 3. Revocación de privilegios. 4. Asignación de niveles de seguridad. La acción 1 de la lista sirve para controlar el acceso al SGBD en general, la 2 y la 3 para controlar las autorizaciones discrecionales y la 4 controla la autorización obligatoria

HERRAMIENTAS DE AUDITORIA DE BASE DE DATOS Auditoría de Bases de Datos La auditoría de base de datos es el proceso que permite medir, asegurar, demostrar, monitorear y registrar los accesos a la información almacenada en las bases de datos incluyendo la capacidad de determinar:      

Quién accede a los datos Cuándo se accedió a los datos Desde qué tipo de dispositivo/aplicación Desde que ubicación en la Red Cuál fue la sentencia SQL ejecutada Cuál fue el efecto del acceso a la base de datos

Herramientas de Auditoría de Bases de Datos Una auditoría se realiza con base a un patrón o conjunto de directrices o buenas prácticas sugeridas. Existen estándares orientados a servir como base para auditorías de informática. Uno de ellos es COBIT (Objetivos de Control de la Tecnologías de la

Información), dentro de los objetivos definidos como parámetro, se encuentra el "Garantizar la Seguridad de los Sistemas". Adicional a este estándar podemos encontrar el estándar ISO 27002, el cual se conforma como un código internacional de buenas prácticas de seguridad de la información, este puede constituirse como una directriz de auditoría apoyándose de otros estándares de seguridad de la información que definen los requisitos de auditoría y sistemas de gestión de seguridad, como lo es el estándar ISO 27001. Es uno de los procesos fundamentales para apoyar la responsabilidad delegada al usuario por la organización frente a las regulaciones y su entorno de negocios o actividad. Las Herramienta de auditorías de seguridad informática permiten conocer en el momento de su realización cuál es la situación exacta de sus activos de información en cuanto a protección, control y medidas de seguridad. NMAP: Ha llegado a ser una de las herramientas imprescindibles para todo administrador de sistema, y es usado para pruebas de penetración y tareas de seguridad informática en general. Como muchas herramientas usadas en el campo de la seguridad informática, es también una herramienta muy utilizada para hacking. NESSUS: Es un programa de escaneo de vulnerabilidades en diversos sistemas operativos. Realiza el escaneo en el sistema objetivo, y el cliente (basado en consola o gráfico) que muestra el avance e informa sobre el estado de los escaneos. BAckTrack: Es una distribución GNU/Linux en formato LiveCD pensada y diseñada para la auditoría de seguridad y relacionada con la seguridad informática en general. ACL: Es la herramienta de software preferida por los profesionales de las finanzas y auditoría para extraer y analizar datos, detectar fraudes y lograr un monitoreo continuo. Meycor CobiT Suite: Es una completa herramienta integral e intuitiva para la implementación del marco Cobit, para la Gobernanza, la Gestión de riesgos tecnológicos, la Seguridad, el Control Interno, y el Aseguramiento de la TI Apex SQL Audit: Provee una herramienta de auditoría activa para empresas que necesitan auditar bases de datos Microsoft SQL Server. Apex SQL Audit: es la solución perfecta de auditoría activa para SQL Server. Trillium Software: Combina el poder de tecnología de vanguardia con un proceso probado de descubrimiento, reingeniería, identificación, estandarización y mejora de los datos.

RESPALDOS Y RECUPERACION DE COPIAS DE SEGURIDAD. Un aspecto totalmente importante que deben considerar las empresas es la protección de datos, es necesario establecer políticas adecuadas de copias de seguridad tanto como para la protección de la información como para la continuidad operativa del negocio. Este aspecto debe considerar 1 elemento importante: Políticas de respaldos de base de datos: Es importante destacar que se deben establecer políticas de respaldo que permitan asegurar una recuperación de la información que nos aseguren continuidad tecnológica y operativa del proceso de negocio al cual estamos soportando. Una “copia de seguridad”, “copia de respaldo” o también llamado “backup” es una copia de los datos originales que se realiza con el fin de disponer de un medio para recuperarlos en caso de su pérdida. Las copias de seguridad son útiles ante distintos eventos y usos: recuperar los sistemas informáticos y los datos de una catástrofe informática, natural o ataque; restaurar una pequeña cantidad de archivos que pueden haberse eliminado accidentalmente, corrompido, infectado por un virus informático u otras causas; guardar información histórica de forma más económica que los discos duros y además permitiendo el traslado a ubicaciones distintas de la de los datos originales. La importancia del respaldo de información radica en que todos los dispositivos de almacenamiento masivo de información están expuestos a la posibilidad de fallar, por lo tanto es necesario que se cuente con una copia de seguridad de la información, ya que la probabilidad de que 2 dispositivos fallen de manera simultánea es menos probable. Los respaldos o copias de seguridad tienen dos objetivos principales: Permitir la restauración de archivos individuales Permitir la restauración completa de sistemas de archivos completos El primer propósito es la base para las peticiones típicas de restauraciones de archivos un usuario accidentalmente borra un archivo y le pide restaurarlo desde el último respaldo. Las circunstancias exactas pueden variar, pero este es el uso diario más común de los respaldos. La segunda situación es la menos deseada para un administrador de sistemas; por la situación que sea que se haya perdido los datos, el sistema productivo se ve afectado generalmente y se observa un hardware que solía ser una parte productiva del centro de datos. Ahora, no es más que unos equipos improductivos, está faltando el software y los datos que usted y sus usuarios habían almacenados por años. La clave es haber realizado un respaldado.

Tipos de Respaldos

Existen diferentes tipos de respaldos posibles, que se pueden complementar entre sí: Respaldos globales (full back-up): Se realiza un respaldo total del disco, se respalda la totalidad de las bases de datos y la totalidad de las operaciones que se mantienen en línea (on–line). Si se realiza diariamente, ante cualquier problema solamente se debe recuperar el respaldo del día anterior. Es el más seguro ya que se tiene la totalidad de los datos, pero también es el que insume mayor cantidad de tiempo y capacidad del soporte magnético. Respaldos incrementales: Se combina con respaldos globales o parciales. Se respalda solamente las modificaciones que han ocurrido desde el último respaldo. Para realizar una recuperación se debe adicionar al último respaldo global todos los respaldos incrementales sucesivos. Es un procedimiento de respaldo ágil y que ocupa poco espacio. El procedimiento de recuperación es complejo, es el más rápido, pero tiene una cantidad de información limitada a un período de tiempo. Para recuperar un sistema determinado o el disco completo, se debe partir del último respaldo parcial o completo y cargar en secuencia cada uno de los respaldos incrementales. Respaldos parciales: Se respalda sólo una parte de la información (solamente una aplicación, una plataforma, los datos críticos o las bases nuevas, etc.) Insume menos tiempo que el global (y puede llevar menos tiempo que el incremental), pero se está limitado a cierto tipo de información. Se suele hacer respaldos globales con menor frecuencia que los parciales. Respaldos diferenciales: Se respalda las modificaciones que han ocurrido desde el último respaldo global o parcial. Para realizar una recuperación se debe adicionar al último respaldo global solamente el último respaldo diferencial. Es un procedimiento de respaldo relativamente ágil y que ocupa poco espacio, con un procedimiento de recuperación de sólo dos etapas, cada respaldo diferencial contiene todos los archivos modificados desde el último respaldo completo, haciendo posible realizar una restauración completa solamente con el último respaldo completo y el último respaldo diferencial. Respaldos simultáneos: Se realiza una copia exactamente igual al mismo tiempo de todos los datos procesados, por ejemplo cuando el sistema de discos espejados es utilizado. Recuperar los datos es simplemente direccionarse a otra unidad de disco. Es el más rápido y tiene la totalidad de la información actualizada, sin embargo interfiere con el procesamiento de los datos y los datos se encuentran en el mismo lugar físico que los datos origen. Almacenamiento de las Copias de Seguridad o Respaldos Una vez que se termine de hacer el respaldo, ¿qué pasa luego? La respuesta obvia es que los respaldos se deben guardar. Sin embargo, lo que no es tan obvio es exactamente qué se debería almacenar y dónde. Para responder a estas preguntas, primero debemos considerar bajo qué circunstancias se utilizaran los respaldos. Hay tres situaciones principales:

1. Peticiones de restauración pequeñas y discretas de los usuarios 2. Restauraciones masivas para recuperarse de un desastre 3. Almacenamiento de archivos que raramente se utilizará otra vez Lamentablemente, hay diferencias irreconciliables entre el primer y segundo caso. Cuando un usuario elimina accidentalmente un archivo, usualmente quiere recuperar su archivo de inmediato. Esto implica que el medio de respaldo no esté más allá que unos pocos pasos del sistema en el cual se restauraran los datos. En el caso de un desastre que necesita una restauración completa de una o más computadoras en su centro de datos, si el desastre fue de naturaleza física, lo que sea que haya sido destruido también habrá destruido los respaldos que estaban al lado de los computadores. Esto sería una situación muy mala. El almacenamiento de los archivos que raramente se utilizan es menos controversial; puesto que las posibilidades de que se vuelvan a utilizar son bastante bajas, si la media de respaldo fue ubicada a muchos kilómetros de distancia del centro de datos no habrá realmente ningún problema. Los enfoques para resolver estas diferencias varían de acuerdo a las necesidades de la organización en el caso. Un acercamiento posible es almacenar varios días de respaldo en el sitio; estos respaldos se toman luego a un sitio de almacenamiento más seguro cuando se creen respaldos diarios más nuevos. Otro enfoque sería mantener dos fondos diferentes de media: Un fondo de provisiones del centro de datos utilizado estrictamente para peticiones de restauración independientes Un fondo fuera del sitio utilizado para el almacenamiento para casos de recuperación en casos de desastres Por supuesto, el tener dos fondos de datos implica la necesidad de ejecutar todos los respaldos dos veces o de hacer copias de los respaldos. Esto se puede hacer, pero los respaldos dobles pueden tomar bastante tiempo y requieren de múltiples unidades de respaldo para procesar las copias (y probablemente un sistema dedicado para efectuar la copia). El reto para un administrador de sistemas es el de encontrar un balance que reúna adecuadamente las necesidades de todos los usuarios, mientras que se asegura que los respaldos estén disponibles aún en las peores situaciones.

Recuperación

La recuperación del backup es uno de los factores más importantes a la hora de planificar cómo hacer copias de seguridad. Cuando hacemos la planificación debemos definir los plazos de recuperación: Recovery Point Objetive (RPO): se refiere al periodo máximo de tiempo en el que los datos se han visto afectados. Cuando hablamos de punto de recuperación, nos referimos al periodo de tiempo que una empresa puede estar sin datos. Dependiendo del tipo de negocio, será un tiempo u otro, por ejemplo, para un banco debería ser entorno a cero, mientras que para una empresa corporativa, donde las modificación de datos es mucho menor, puede llegar a ser de horas a días. Recovery Time Objective (RTO): es el tiempo de recuperación permitido sin disponer de los datos afectados. Definimos “tiempo de recuperación” como el tiempo que transcurre desde que se solicita hacer la restauración de los datos hasta que se notifica que la recuperación se ha realizado con éxito. Los objetivos de RTP y RPO nos van a ayudar a diferenciar qué sistemas son críticos y cuáles no. Cuando definamos nuestro Plan de recuperación debemos tener en cuenta los siguientes pasos: 1. Definir el procedimiento ante la pérdida de datos. El equipo que intervenga debe tener claro qué hacer y cuándo. 2. Realizar un ensayo de recuperación cada cierto tiempo para ajustase a los tiempos establecidos y así asegurarse la validación del backup. 3. Revisar los equipos. Aquí debemos tener presente las pólizas de los seguros contratados, inventarios y todo lo relacionados con la arquitectura del sistema.

TECNICAS DE RECUPERACIÒN Sistemas de Recuperación de Lógica Difusa Permite formular consultas con frases normales y luego la máquina solo procesa las palabras que considera relevantes, no tomando en cuenta signos de puntuación, artículos, conjunciones, plurales, tiempos verbales, palabras comunes (que suelen aparecer en todos los documentos). La recuperación se basa en proposiciones lógicas con valores de verdadero y falso, teniendo en cuenta la localización de la palabra en el documento.

Técnicas de Ponderación de Términos

La ponderación da un valor adecuado a los criterios de búsqueda, dependiendo de los intereses del usuario, por tanto la recuperación de información depende del valor asignado. El documento más pertinente de búsqueda sería aquel que tenga representado todos los términos de búsqueda y además el que más valor tenga repetidos más veces, independientemente de donde se localice en el documento. Técnica de Clustering Es un modelo probabilístico que permite las frecuencias de los términos de búsqueda en los documentos recuperados. Se atribuyen unos valores (pesos) que actúan como agentes para agrupar los documentos por orden de importancia, mediante algoritmos ranking. Las técnicas de análisis de clusters y los sistemas de información tienen un mismo objetivo: organizar temáticamente la información almacenada. Basados en el cálculo de la similitud entre pares de objetos, los métodos, básicamente pueden ser de dos tipos: Métodos heurísticos: Son aquellos que dividen un conjunto de documentos en subconjuntos entre los que no existen relaciones jerárquicas, por medio de parámetros que permiten controlar el proceso de creación de los grupos Métodos jerárquicos: Exigen como punto de partida el cálculo de la similitud entre todos los pares de documentos del sistema de información. La construcción de la jerarquía se realiza a partir de: una técnica divisiva. Técnicas de Retroalimentación por Relevancia Luego de determinar unos criterios de búsqueda y observar los documentos recuperados se repete nuevamente la consulta pero esta vez con los elementos interesantes, seleccionados de los documentos primeramente recuperados. Técnicas de Stemming Elimina las posibles confusiones semánticas que se puedan dar en la búsqueda de un concepto, para ello trunca la palabra y busca solo por la raíz. Técnicas Lingüísticas Pretenden acotar de una manera eficaz los documentos relevantes. Lo consigue mediante una correcta indización en el proceso de tratamiento de los documentos con ayuda de índices, tesauros, etc.; evitando las ambigüedades léxicas y semánticas al establecer las consultas.