REPÚBLICA BOLIVARIANA DE VENEZUELA MINISTERIO DEL PODER POPULAR PARA LA EDUCACIÓN UNIVERSITARIA, CIENCIA Y TECNOLOGÍA INSTITUTO UNIVERSITARIO DE TECNOLOGÍA AGRO INDUSTRIAL PLAN NACIONAL DE FORMACION EN INFORMATICA EXTENSIÓN ZONA NORTE
SEGURIDAD Y RESPALDO EN BASE DE DATOS GRUPO N° 1
Autores: T.S.U Colmenares Rubén C.I: 16.320.394 T.S.U Chaparro Henrry C.I: 14.368.465 T.S.U Guerrero Carlos C.I: 20.60.8851
San Juan de Colón, Marzo 2016
2
Introducción Las organizaciones dependen cada vez más de los sistemas de información distribuidos para ganar productividad y ventajas de eficiencia, pero al mismo tiempo son cada vez más vulnerables a las amenazas a la seguridad. Los sistemas de bases de datos son un componente integral de este sistema de información distribuido y por ello se debe mantener seguros todos los datos que permite al sistema funcionar. Una base de datos se puede definir como un conjunto compartido de datos relacionados lógicamente y una descripción de los mismos diseñado para satisfacer las necesidades de información de una organización. Un sistema de base de datos se considera como un conjunto de datos relacionados manejado por el sistema de gestión de base de datos (DBMS) que es un software que gestiona (definir, crear y mantener) y controla el acceso a la base de datos, y una colección de aplicación (es) de base de datos. Las organizaciones han adoptado sistemas de bases de datos como la tecnología clave de gestión de datos para la toma de decisiones y las operaciones del día a día. Las bases de datos están diseñadas para contener grandes cantidades de datos y la gestión de datos implica tanto las estructuras que definen para el almacenamiento de información como el establecimiento de mecanismos de manipulación de la información. A medida que los datos van a ser compartidos entre varios usuarios del sistema, este debe evitar resultados anómalos y garantizar la seguridad de la información almacenada a pesar de los fallos del sistema y los intentos de acceso no autorizado. Los datos en cuestión aquí pueden ser altamente sensible o confidenciales, con lo que la seguridad de los datos gestionados por estos sistemas es aún más crucial, ya que cualquier violación de la seguridad no sólo se ve afectada una sola aplicación o usuario, sino que puede tener consecuencias desastrosas en toda la organización. Un número de técnicas de seguridad han surgido en largos período de tiempo para hacer frente a los problemas de seguridad.
3
Aspectos básicos de la seguridad en bases de datos La seguridad en las base datos es una función clave ya que esta incluye varios aspectos fundamentales como lo son la confidencialidad , accesibilidad e integridad de las cuales la primera se refiere a no poner los datos e información de los usuarios a la vista de todos, la segunda se refiere a que dichos datos debe estar disponibles siempre para
consulta y uso de los
dueños de la información ya sea personal en caso de que cada usuario quiera consultar o modificar su información y la tercera hace referencia a que los datos o información debe estar protegidos siempre de cualquier fallo de software o error de seguridad que pueda ocurrir en el sistema o en la base de datos. Otros aspectos básicos a tomar en cuenta serian: o Establecer cuentas de usuario o contraseñas o niveles de acceso para los usuarios Estos otros aspectos no sirven para evitar el acceso de personas que no tenga la debida autorización para acceder a la base de datos ya que si no establecen dichos parámetros cualquier persona podría acceder a la información de los usuario o empresa para propósitos indebidos; es por ello que gran parte de los errores en cuanto a la seguridad en base de datos suele producirse por la falta de preocupación en los procedimientos sencillos, ya que estos a la larga se tornan en grandes inconvenientes que afectan a las base de datos. En este orden de ideas se deben tomar en cuentas medidas de seguridad generales para lograr un gran desenvolvimiento y uso de la información en las base de datos.
4
Medidas de control en una base datos: Las medidas de control más importantes que se implementan en una base de datos son: o Conocimientos de los riesgos a que está expuesta la instalación en particular. o Conocimiento y corrección de los problemas detectados o reportados en las diferentes versiones del sistema operativo y sistemas implementados ya que estos mecanismos parten de la instalación inicial. o Concientización de los usuarios a los riesgos que están expuestos la instalación y el papel de cada uno en la protección, ya que el 99% de los ataques a las base de datos se basan en los fallos de seguridad de la base de datos. o Auditoria, monitoreo a tráfico y acceso a cambios del sistema. Los usuarios en la base de datos constituyen una parte fundamental en las base datos ya que estos se componen de 4 tipos los cuales son :
5
Usuario Programadores de aplicaciones
Interacción con la BD profesionales en computación que escriben programas en lenguajes de aplicación usando un lenguaje de programación
donde
incorporan
llamadas en DML, las cuales tendrán un formato propio del lenguaje estos no escriben programas ya que
Usuarios sofisticados
solo escriben las preguntas en un lenguaje de consulta de base datos escriben aplicaciones de bd que no
Usuarios especializados
encajan en el marco tradicional de procesamientos de datos ; sistemas de
diseño
ayudados
por
computadoras, sistemas expertos y basados en
conocimientos
entre
otros usuarios comunes que interactúan
Usuarios standar
con el sistema utilizando a uno de los programas de aplicación
Técnicas de seguridad Las técnicas de seguridad se realizan a través de respaldo de información por medio de la obtención de copias de los datos de tal manera que a partir de dicha copia es posible restaurar el sistema al momento de haber realizado el respaldo. Por
lo tanto los respaldos deben hacerse con regularidad con la
frecuencia establecida
y de la manera indicada a efectos de hacerla
correctamente es por ello que en general hay 3 técnicas de copia seguridad
Copia de seguridad sin conexión (en frío):
6
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
Tipos de Seguridad en base de datos Los tipos de seguridad de una BD abarcan desde que software usa como sistema manejador, sistema operativo
y protecciones
internas
y
externas así que a continuación se nombran los 3 tipos de seguridad. o 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
7
procedimientos serán realizados periódicamente por el administrador de la aplicación. o 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. o Seguridad lógica: se refiere al uso
de software y los sistemas de
protección de los datos, procesos y programas, así como la del acceso ordenado y autorizado de los usuarios a la información. La seguridad lógica involucra a todas aquellas medidas establecidas por los administradores de recursos en tecnología de información para miniar los riesgos en la seguridad asociados con las operaciones que se llevan a cabo diariamente
Niveles de Seguridad Informática El estándar de niveles de seguridad más utilizado internacionalmente es el TCSEC Orange Book(2), desarrollado en 1983 de acuerdo a las normas de seguridad en computadoras del Departamento de Defensa de los Estados Unidos. Los niveles describen diferentes tipos de seguridad del Sistema Operativo y se enumeran desde el mínimo grado de seguridad al máximo. Estos niveles han sido la base de desarrollo de estándares europeos (ITSEC/ITSEM) y luego internacionales (ISO/IEC). Cabe aclarar que cada nivel requiere todos los niveles definidos. Así el subnivel B2 abarca los subniveles B1, C2, C1 y el D. o Nivel D: Este nivel contiene sólo una división y está reservada para sistemas que han sido evaluados y no cumplen con ninguna especificación de seguridad. Sin sistemas no confiables, no hay
8
protección para el hardware, el sistema operativo es inestable y no hay autentificación con respecto a los usuarios y sus derechos en el acceso a la información. Los sistemas operativos que responden a este nivel son MS-DOS y System 7.0 de Macintosh. o Nivel C1: Protección Discrecional: Se requiere identificación de usuarios que permite el acceso a distinta información. Cada usuario puede manejar su información privada y se hace la distinción entre los usuarios y el administrador del sistema, quien tiene control total de acceso. o Nivel C2: Protección de Acceso Controlado: Este subnivel fue diseñado
para
solucionar
las
debilidades
del
C1.
Cuenta
con
características adicionales que crean un ambiente de acceso controlado. Se debe llevar una auditoria de accesos e intentos fallidos de acceso a objetos. o Nivel B1: Seguridad Etiquetada: Este subnivel, es el primero de los tres con que cuenta el nivel B. Soporta seguridad multinivel, como la secreta y ultrasecreta. Se establece que el dueño del archivo no puede modificar los permisos de un objeto que está bajo control de acceso obligatorio. o Nivel B2: Protección Estructurada Requiere que se etiquete cada objeto de nivel superior por ser padre de un objeto inferior. La Protección Estructurada es la primera que empieza a referirse al problema de un objeto a un nivel más elevado de seguridad en comunicación con otro objeto a un nivel inferior. Así, un disco rígido será etiquetado por almacenar archivos que son accedidos por distintos usuarios. o Nivel B3: Dominios de Seguridad: Refuerza a los dominios con la instalación de hardware: por ejemplo el hardware de administración de memoria se usa para proteger el dominio de seguridad de acceso no autorizado a la modificación de objetos de diferentes dominios de seguridad. o Nivel A: Protección Verificada: Es el nivel más elevado, incluye un proceso de diseño, control y verificación, mediante métodos formales (matemáticos) para asegurar todos los procesos que realiza un usuario sobre el sistema. Para llegar a este nivel de seguridad, todos los componentes de los niveles inferiores deben incluirse. El diseño requiere
9
ser verificado de forma matemática y también se deben realizar análisis de canales encubiertos y de distribución confiable. El software y el hardware son protegidos para evitar infiltraciones ante traslados o movimientos del equipamiento.
Protección de los datos Un aspecto totalmente importante que deben considerar las empresas es este ítem, 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 de la operativa de la BD
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. De esta manera hay algún aspecto a considerar entre los cuales tenemos: o o o o o o o o o o o o
Plan Del respaldo. Cuáles datos se deben incluir Tipos de respaldos Cantidad de copias a realizar Modalidad de copia Dónde guardarlas Quienes los manejan Verificación del respaldo Registro Cuándo hacerlo El respaldo completo del disco Soporte físico a utilizar para el respaldo
Tipos de respaldo
10
Existen diferentes tipos de respaldos posibles, que se pueden complementar entre sí, como son: a) 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. b) 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.) 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. c) 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. d) 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.
11
Cómo hacer copias de seguridad de una base de datos MySQL El método más utilizado para crear copias de seguridad de MySQL se basa en el uso del comando mysqldump. Este comando se incluye dentro de las utilidades del propio servidor MySQL, por lo que ya se instaló cuando instalaste MySQL. Para comprobar que dispones de mysqldump, abre una consola de comandos y ejecuta lo siguiente:
Si se produce un error de tipo "command not found", es posible que no hayas instalado MySQL correctamente o que tengas que indicar la ruta completa hasta donde se encuentre el comando, como por ejemplo:
o Copia de seguridad básica Ejecuta el siguiente comando para realizar una copia de seguridad completa de la base de datos llamada NOMBRE_BASE_DE_DATOS. No olvides reemplazar TU_USUARIO y TU_CONTRASEÑA por las credenciales que utilizas para acceder al servidor de base de datos:
12
Si por ejemplo el usuario es root, la contraseña también es root y la base de datos se llama acme, el comando que debes ejecutar es el siguiente:
Si por motivos de seguridad no quieres escribir la contraseña como parte del comando, puedes reemplazar la opción --password=XX por -p. Al hacerlo, MySQL te pedirá que escribas la contraseña a mano cada vez que realices una copia de seguridad:
o Recuperando una copia de seguridad Las copias de seguridad sólo son útiles si se pueden recuperar fácilmente los datos cuando se produce un error. Suponiendo que los datos a recuperar se encuentran en el archivo copia_seguridad.sql, el comando que debes ejecutar para recuperar la información de la base de datos es el siguiente:
Observa cómo en este caso se ejecuta el comando mysql y no el comando mysqldump. Utilizando los mismos datos que en el ejemplo anterior, el comando a ejecutar sería:
En este comando no hace falta indicar el nombre de la base de datos que se está recuperando, porque los archivos generados por mysqldump ya contienen esa información. De hecho, al ejecutar este comando de recuperación se borra la base de datos original y toda la información de sus
13
tablas, para después insertar toda la información contenida en el archivo copia_seguridad.sql. Si la copia de seguridad la haces en una versión de MySQL moderna y la recuperación de la información se realiza en una versión un poco antigua, es mejor que añadas la opción --skip-opt al realizar la copia de seguridad, para desactivar algunas opciones modernas e incompatibles:
o Copias de seguridad de más de una base de datos Normalmente el comando mysqldump se utiliza para realizar la copia de seguridad de una única base de datos. No obstante, en ocasiones es necesario copiar varias bases de datos. Para ello, utiliza la opción --databases e indica el nombre de todas las bases de datos separados por un espacio en blanco:
Si lo que quieres es realizar una copia de seguridad de todas las bases de datos, utiliza en su lugar la opción --all-databases:
14
Conclusiones. La necesidad de proteger los sistemas informáticos es primordial y la seguridad de los datos debe ser parte de un plan general de seguridad informática. Cantidades crecientes de datos sensibles están siendo retenidos en las bases de datos y más de estas bases de datos se hacen accesibles a través de Internet. A medida que se hacen más disponibles los datos electrónicamente, se puede suponer que las amenazas y vulnerabilidades a la integridad de los datos van a aumentar también. La seguridad de la Base de datos se está convirtiendo en un tema cada vez más importante y desde estudiantes a informáticos necesitan desarrollar entendimientos fundamentales en esta área. Los objetivos principales de la seguridad de base de datos son evitar el acceso no autorizado a los datos, evitar su alteración, y asegurar que permanecen disponibles. Los conceptos relacionados con la seguridad de base de datos son múltiples. En su esencia, la seguridad de base de datos se esfuerza por asegurar que sólo los usuarios autenticados realcen actividades autorizadas en
los
momentos
autorizados.
Incluye
el
sistema,
los
procesos
y
procedimientos que protegen una base de datos de la actividad no deseada. La información Agencia de Sistemas de Defensa del Departamento de Defensa de Estados Unidos (2004), en su Guía de Implementación de Seguridad Técnica de base de datos, establece que la seguridad de base de datos debe proporcionar ", acceso protegido controlado al contenido de su base de datos y, en el proceso, preservar la integridad, la consistencia y la calidad global de los datos "(p. 9). El objetivo es simple, el camino para lograr el objetivo, un poco más complejo. Tradicionalmente la seguridad de base de datos se centró en la autenticación de usuarios y la gestión de los privilegios de usuario a los objetos de base de datos. Esto ha demostrado ser insuficiente dado el creciente número de incidentes de piratería informática de base de datos y el aumento en el número de la pérdida de datos confidenciales de informes organizacionales.
15
Referencias. http://www.monografias.com/trabajos26/seguridad-base-datos/seguridadbase-datos2.shtml http://librosweb.es/tutorial/como-hacer-copias-de-seguridad-de-una-basede-datos-mysql/ http://alfonzoabache.blogspot.com/2011/07/bases-de-datos.html http://www.ukessays.com/essays/information-technology/aspects-ofdatabase-security-information-technology-essay.php http://www.ukessays.com/essays/security/database-security-andencryption.php http://www.cse.msu.edu/~bezawada/db/DBSecWhatStudentsNeedtoKnow JITEv9IIPp061-077Murray2007.pdf www.cse.msu.edu/~bezawada/db/DBSecWhatStudentsNeedtoKnowJITEv 9IIPp061-077Murray2007.pdf