Seguridad de Base de DatosLAS AMENAZAS EN BASES DE DATOS MySQL Presentado por: Edith Campos Forrest Sonia De León Ambar Martínez Giancarlo Remón Humberto Williams Agenda • Historia MySQL • Características • Top amenazas en bases de datos MySQL • Conclusión 2 Sonia De León Introducción Internet es actualmente la mayor fuente de información que existe y más del 90% de ella ha sido generada desde el año 2010. Todavía existen muchos datos que necesitan almacenarse para que los usuarios puedan acceder a ellos. Para que se guarden correctamente y conseguir una alta eficiencia al obtenerlos, es necesario un buen diseño, gestión y mantenimiento de las bases de datos. SQL (Structured Query Language) es un lenguaje de acceso a bases de datos relacionales que permite realizar operaciones entre ellas. Mediante el uso del álgebra y el cálculo relacional permite realizar consultas para obtener información. A partir del estándar, muchos sistemas han desarrollado su propio SQL. Y es por su gran uso, que la protección de los datos almacenados son críticos a la hora de protegerlos. 3 Sonia De León Historia MySQL • MySQL fue creado en 1996 y sigue siendo desarrollado en la actualidad por MYSQL AB, una compañía radicada en Suecia. • Fue creado porque se necesitaba una base de datos relacional capaz de manejar grandes cantidades de datos en equipos relativamente baratos. • Es la base de datos de código abierto más popular del mundo. • El propietario actual de MySQL es Oracle Corporation, debido a que en enero del 2008, adquirió la empresa Sun Microsystems, quien era propietario del SGBD; esto convierte a Oracle Corporation, en líder en el mercado de bases de datos. 4 Sonia De León Historia MySQL 5 Sonia De León Características MySQL • Soporta gran cantidad de tipos de datos para las columnas. • Dispone de API’s en gran cantidad de lenguajes (C, C++, Java, PHP, etc.). • Soporta hasta 32 índices por tabla. • Gestión de usuarios y contraseñas, manteniendo un muy buen nivel de seguridad en los datos. • Condición de open source de MySQL hace que la utilización sea gratuita y se puede modificar con total libertad. • Se puede descargar su código fuente. Esto ha favorecido muy positivamente en su desarrollo y continuas actualizaciones. • Es una de las herramientas más utilizadas por los programadores orientados a Internet. • Infinidad de librerías y otras herramientas que permiten su uso a través de gran cantidad de lenguajes de programación. 6 Sonia De León Abusos por privilegios excesivos Cuando a alguien se le otorgan privilegios de bases de datos que exceden los requerimientos de su puesto de trabajo se crea un riesgo innecesario. Los mecanismos de control de privilegios de los roles de trabajo han de ser bien definidos o mantenidos. MySQL usa seguridad basada en listas de control de acceso (ACL) para todas las conexiones, consultas y otras operaciones que un usuario puede intentar realizar. Oracle MySQL for Microsoft Windows FILE Privilege Abuse Exploit/Windows/mysql/mysql_Start_up Este módulo aprovecha un problema de configuración incorrecta de privilegios de archivos específicamente contra servidores MySQL de Windows. Este módulo abusa del privilegio de archivo para escribir una carga útil para todos los usuarios de Microsoft Start Up, el cual es un directorio que se ejecutará cada vez que un 7 usuario inicie sesión. Sonia De León Abusos por privilegios excesivos Opciones del módulo Para mostrar las opciones disponibles, cargue el módulo dentro de la consola Metasploit y ejecute los comandos 'show options' o 'show advanced': 8 Sonia De León Abusos por privilegios excesivos ¿Cómo mitigar? • Definición de buenas políticas de contratación • Control de acceso a nivel de consulta que restringe los privilegios de las operaciones a solo utilizar los datos mínimos requeridos. • Conocer el sistema de privilegios de acceso MySQL. Los comandos GRANT y REVOKE se usan para controlar el acceso a MySQL. • No conceder más privilegios de los necesarios. • Nunca otorgar privilegios a todos los hosts. • Usar el comando SHOW GRANTS y verificar quién tiene acceso a qué. Eliminar aquellos privilegios que no son necesarios usando el comando REVOKE 9 Sonia De León Abuso de privilegios legítimos Los usuarios pueden llegar a abusar de los privilegios legítimos de bases de datos para fines no autorizados, por ejemplo, sustraer información confidencial. Una vez que los registros de información alcanzan una máquina cliente, los datos se exponen a diversos escenarios de violación. ¿Cómo funciona el sistema de privilegios? El sistema de privilegios de MySQL garantiza que todos los usuarios puedan hacer exactamente las cosas que se supone que pueden hacer. Cuando se conecta a un servidor MySQL, su identidad está determinada por el host desde el que se conecta y el nombre de usuario que especifique. El sistema otorga privilegios según su identidad y lo que desea hacer. 10 Ambar Martínez Abuso de privilegios legítimos ¿Cómo mitigar? • No otorgar privilegios de proceso a todos los usuarios. La salida de la lista de procesos mysqladmin muestra el texto de las consultas que se están ejecutando actualmente, por lo que cualquier usuario que tenga permiso para ejecutar ese comando podrá ver si otro usuario emite una consulta UPDATE user SET password = PASSWORD ('not_secure'). • Mysqld reserva una conexión adicional para los usuarios que tienen el privilegio de proceso para que un usuario root de MySQL pueda iniciar sesión y verificar si todas las conexiones normales están en uso. 11 Ambar Martínez Abuso de privilegios legítimos No otorgar privilegios de File a todos los usuarios. Cualquier usuario que tenga este privilegio puede escribir un archivo en cualquier lugar del sistema de archivos con los privilegios del daemon mysqld. Para que esto sea un poco más seguro, todos los archivos generados con SELECT ... INTO OUTFILE son legibles para todos, y no puede sobrescribir los archivos existentes. El privilegio de archivo también se puede usar para leer cualquier archivo accesible para el usuario de Unix con el que se ejecuta el servidor. Esto podría ser abusado, por ejemplo, usando LOAD DATA para cargar /etc/passwden una tabla, que luego puede leerse con SELECT . 12 Ambar Martínez Elevación de privilegios Los atacantes pueden aprovechar las vulnerabilidades en el software de gestión en las bases de datos para convertir los privilegios de acceso de bajo nivel de privilegios, a acceso de alto nivel. Por ejemplo, sin seguridad de bases de datos, un atacante podría aprovechar una vulnerabilidad de desbordamiento de búfer de base de datos para obtener privilegios administrativos. Exploits de elevación de privilegios pueden ser derrotados con una combinación de control de acceso a nivel de consulta, auditoría de base de datos y los sistemas de prevención de intrusiones (IPS) tradicionales. Control de acceso a nivel de consulta puede detectar un usuario que de repente utiliza una operación de SQL inusual, mientras que un IPS puede identificar una amenaza específica de seguridad web documentada dentro de la operación. 13 Ambar Martínez Elevación de privilegios ¿Cómo mitigar? • Establecer que el usuario administrador únicamente debe poder agregar o eliminar privilegios. De la siguiente forma únicamente se da permiso para realizar algunas querys sobre la base de datos. Cabe destacar que el usuario no podría crear nuevas tablas ni nuevas bases de datos: GRANT select,insert,update,delete ON BD.* TO USER@localhost IDENTIFIED BY "PASSWORD"; • Aplicar medidas de hardening y analizar el correcto funcionamiento de los elementos de seguridad. 14 Ambar Martínez Elevación de privilegios • Utilización de herramientas de monitorización host ids, seguridad endpoints y elementos de red para la detección de patrones de escalada de privilegios y explotación hacia otros sistemas. • Monitorizar y controlar las conexiones VPN, Citrix, RDP o VDI entrantes. Es recomendable agregar doble factor de autenticación a todos los grupos autorizados para establecer conexiones remotas y notificar al usuario de la conexión. 15 Ambar Martínez Vulnerabilidades de las plataformas Las vulnerabilidades en los sistemas operativos pueden conducir al acceso no autorizado y a la corrupción de datos. Las herramientas de IPS son una buena manera de identificar y/o bloquear ataques diseñados para aprovechar las vulnerabilidades de la plataforma de base de datos. 16 Ambar Martínez Vulnerabilidades de las plataformas ¿Cómo mitigar? • Si la conexión entre el cliente y el servidor pasa por una red que no es de confianza, se puede usar el protocolo comprimido para hacer que el tráfico sea mucho más difícil de descifrar. También puede usar el soporte SSL interno de MySQL para hacer que la conexión sea aún más segura. • Usar SSH para obtener una conexión TCP/IP cifrada entre un servidor MySQL y un cliente MySQL. • Creación de claves y certificados SSL y RSA. Los archivos de clave RSA permiten a MySQL admitir el intercambio seguro de contraseñas sobre conexiones no cifradas para cuentas autenticadas por el complemento sha256_password o el caching_sha2_password. 17 Ambar Martínez Vulnerabilidades de las plataformas • Invertir en un firewall que permita proteger de los exploits en cualquier software. Colocar MySQL detrás del firewall o en una zona desmilitarizada (DMZ). • Escanear sus puertos desde Internet utilizando una herramienta como nmap. MySQL usa el puerto 3306 por defecto. Este puerto no debería ser accesible desde hosts que no sean de confianza. 18 Ambar Martínez Inyección de SQL La inyección de SQL es un tipo de ataque informático que consiste en la infiltración de código intruso dentro de las sentencias/consultas a ejecutar en la base de datos. Esta infiltración suele ocurrir a través de los parámetros pasados por los usuarios a un programa o a través de un formulario web. El objetivo de la intrusión suele ser malicioso y puede causar daños importantes: revelación de datos, modificación de contenido, suplantación de identidad, borrado y destrucción de datos o estructuras dentro de la base de datos. 19 Edith Campos Inyección de SQL Las sentencias dinámicas son sentencias SQL que se crean como cadenas de texto (strings) y en las que se insertan/concatenan valores obtenidos de alguna fuente (normalmente proveniente del usuario), lo que puede hacer que sean vulnerables a inyección SQL si no se revisan y corrigen las entradas, como por ejemplo: $id_usuario = $_POST["id"]; mysql_query("SELECT * FROM usuarios WHERE id = $id_usuario"); 20 Edith Campos Inyección de SQL Eso es un ejemplo de una vulnerabilidad grave en la seguridad de una aplicación (web o no) porque si el usuario introduce un valor como 1; DROP TABLE usuarios; nos encontraríamos con que la sentencia ejecutada sería: SELECT * FROM usuarios WHERE id = 1; DROP TABLE usuarios; Y se eliminaría la tabla Usuarios con todos los datos contenidos en ella. 21 Edith Campos Inyección de SQL ¿Cómo mitigar? • Soluciones de seguridad de bases de datos, auditoría de base de datos, control de acceso a nivel de consulta detecta consultas no autorizadas inyectadas a través de aplicaciones web y/o procedimientos almacenados. • DESCONFIAR siempre de las entradas del usuario. Se deben reprocesar, sanear o comprobar, pero nunca usarlas directamente. Se debe asumir siempre que el usuario va a intentar atacar una base de datos; se puede pensar que todos los usuarios son buenas personas, pero basta un único usuario malicioso para destruirlo todo. • EVITAR los SQL dinámicos. Son el error más común a la hora de ejecutar sentencias a la base de datos y es lo que aprovechan los usuarios maliciosos para atacar el código. La solución es fácil: no concatenar la consulta SQL con las entradas del usuario. 22 Edith Campos Inyección de SQL ¿Cómo mitigar? • UTILIZAR sentencias preparadas (también llamadas parametrizadas). Ofrecen una estrategia más eficiente y menos propensa a errores. Además, los principales sistemas de bases de datos modernos soportan sentencias preparadas con variables vinculadas. • LIMITAR el acceso a la base de datos. No utilizar superusuarios (root), sino usuarios con acceso personalizado o limitado a la base de datos (aunque esto no siempre está al alcance de todos los desarrolladores). • MODERNIZAR el código. Mantener el código al día en materia de seguridad, no utilizar métodos obsoletos o no recomendados. Hay motivos por los que están obsoletos. • Por ejemplo, un error relacionado con la modernización que se ve frecuentemente en StackOverflow es el caso particular de PHP y las funciones mysql_*, que deberían evitarse y usar MySQLi (mysqli_*) o PDO en su lugar. 23 Edith Campos Pistas de auditorías débiles Las pistas de auditoría débiles de una base de datos representan riesgos en términos de cumplimiento, disuasión, detección, análisis forense y recuperación. El sistema de gestión de bases de datos nativas (DBMS) audita las capacidades que dan lugar a una degradación del rendimiento inaceptable y son vulnerables a los ataques relacionados con el privilegio, es decir, los desarrolladores o administradores de bases de datos (DBA) pueden desactivar los registros de auditoría de las base de datos. 24 Humberto Williams Pistas de auditorías débiles La mayoría de las soluciones de auditoría de una base de datos también carecen del detalle necesario. Por ejemplo, los productos DBMS rara vez registran qué aplicación se utiliza para acceder a la base de datos y los falló de consultas. MySQL a diferencia, nos puede desplegar las direcciones IP de origen . Las soluciones de auditoría para una base de datos, basados en la red son una buena opción. Tales soluciones de auditoría de base de datos no deben tener ningún impacto en el rendimiento de bases de datos, operan de forma independiente de todos los usuarios y ofrecen la recopilación de datos a detalle. 25 Humberto Williams Pistas de auditorías débiles ¿Cómo mitigar? • Comprobación de las últimas fechas de actualización o modificación de los archivos que pueden ser ejecutados por el sistema operativo. • Depuración de cuentas de usuarios que no accedan en largos periodos al DBMS. • Estas dos primeras medidas se efectúan sobre el sistema operativo, y debiera servir como el primer punto que un auditor debe comprobar, aunque el sistema MySQL permite la conexión desde fuera de la red local, se minimizarían los riesgos para acceder a la base de datos desde la propia organización, cuando un usuario ya no debiera hacerlo. • Revocar todos los privilegios que tuviera el administrador (con la sentencia REVOKE) y eliminar el usuario cuando se supiera a ciencia cierta la intención de éste de marcharse o al ser despedido y así evitar posibles complicaciones. 26 Humberto Williams Pistas de auditorías débiles ¿Cómo mitigar? • Auditar a intervalos regulares el sistema y especialmente el área que maneje el empleado, para asegurarse que no ha realizado ninguna acción prohibida. • Revisar los últimos movimientos realizados en el sistema. Utilizando el comando SHOW STATUS se podría observar cuáles han sido los últimos movimientos realizados, cuántas conexiones se han realizado, intentos fallidos de acceso, usuarios conectados, etc. 27 Humberto Williams Pistas de auditorías débiles • Revisar la tabla de usuarios para comprobar que no existe ningún nuevo usuario creado con privilegios excesivos. De la tabla INFORMATION_SCHEMA se podría realizar la consulta de qué usuarios tienen el privilegio de crear nuevos usuarios. SELECT create_user FROM user_privileges WHERE is_grantable=’yes’; • Controlar especialmente los archivos logs, que contienen información privilegiada sobre lo que acontece en la base de datos. En MySQL se guardan registros de las actualizaciones, borrados, modificaciones, etc. Una mala gestión en el acceso a esta carpeta podría suponer que un usuario malintencionado pudiese utilizar estos archivos o eliminarlos. 28 Humberto Williams Pistas de auditorías débiles Los archivos de estado de MySQL son: HOSTNAME.pid Contiene la ID de proceso del servidor. HOSTNAME.err Contiene los eventos de inicio y apagado así como las condiciones de error. HOSTNAME.log Eventos de conexión-desconexión y consulta de información. HOSTNAME.nnn Texto de todas las consultas que modifican el contenido y la estructura de la tabla. Tanto en Windows como en Unix, estos archivos se encuentran por defecto en la carpeta DATA. Deben ser localizados y observar si ha habido algún movimiento extraño que quedase almacenado en el log. 29 Humberto Williams Negación de servicios En internet, un ataque de denegación de servicios (DDoS) es el que se realiza cuando una cantidad considerable de sistemas atacan a un objetivo único, provocando la indisponibilidad de un servicio. Las técnicas más comunes de DoS incluyen desbordamientos de búfer, corrupción de datos, la inundación de la red y el consumo de recursos. La prevención de ataques DoS debería ocurrir en múltiples capas incluyendo las de red, aplicaciones y bases de datos según recomendaciones de cursos de seguridad de bases de datos y seguridad web. 30 Humberto Williams Negación de servicios Recomendaciones sobre las bases de datos incluyen el despliegue de un IPS y controles de la velocidad de conexión. Al abrir rápidamente un gran número de conexiones, los controles de velocidad de conexión pueden impedir que los usuarios individuales usan los recursos del servidor de base de datos. 31 Humberto Williams Negación de servicios ¿Cómo mitigar? • Revisar la configuración de routers y firewalls para detener IPs inválidas, así como también el filtrado de protocolos que no sean necesarios. Algunos firewalls y routers proveen la opción de prevenir inundaciones (floods) en los protocolos TCP y UDP. Es aconsejable habilitar la opción de logs para llevar un control adecuado de las conexiones que existen con dichos routers. • Es muy importante contar con un plan de respuesta a incidentes. Si ocurre algún hecho de este tipo, cada persona dentro de la organización debería saber cuál es su función específica y los pasos a seguir para salvaguardar el servicio. 32 Humberto Williams Negación de servicios • Otras de las alternativas que se deben tener en cuenta es la solicitud ayuda al Proveedor de Servicios de Internet (ISP). Esto puede ayudar a bloquear el tráfico más cercano a su origen sin necesidad de que alcance a la organización. • Contar con IDS e IPS, estos pueden detectar el mal uso de protocolos válidos como posibles vectores de ataque. Se debe tener en cuenta también, la configuración de estas herramientas. Esto debe realizarse con el tiempo necesario y mediante personal capacitado, intentando en lo posible mantener actualizadas las firmas de estos dispositivos. 33 Humberto Williams Vulnerabilidad en protocolos de comunicación de las bases de datos Existe una constante preocupación por la seguridad de la base de datos: Muchas veces la seguridad se ve afectada por la configuración de los procesos de conexión. Las vulnerabilidades en los protocolos de bases de datos pueden permitir el acceso no autorizado a datos, la corrupción o la disponibilidad. 34 Giancarlo Remón Vulnerabilidad en protocolos de comunicación de las bases de datos ¿Cómo mitigar? La primera regla para mantener seguro MySQL es no exponer la base de datos en la red. La mayoría de las distribuciones de Linux configuran el acceso al dominio de MySQL sólo para localhost. En caso de que sea necesario habilitar el acceso remoto al servicio, MySQL también proporciona controles de acceso basados en host. Lo más fácil es modificar el archivo my.cnf con el fin de restringir el acceso al sistema local. Busca la sección [mysqld] y cambia (o añade una nueva línea para configurar) el parámetro “bind-address” a “127.0.0.1”. La siguiente recomendación claramente es actualizar o parchear la base de datos. 35 Giancarlo Remón Autenticaciones débiles La autenticación basada en contraseña es probablemente una de las funciones más importantes que se usan todos los días, sin embargo no se ha evolucionado mucho desde los primeros sistemas informáticos de usuarios múltiples, incluso cuando se desarrollan métodos más seguros. Los esquemas de autenticación débiles permiten a los atacantes asumir la identidad de los usuarios de bases de datos legítimos. Estrategias de ataque específicas incluyen ataques de fuerza bruta, la ingeniería social, entre otros. 36 Giancarlo Remón Autenticaciones débiles La implementación de contraseñas o autenticación de dos factores es una necesidad. Para la escalabilidad y facilidad de uso, los mecanismos de autenticación deben integrarse con las infraestructuras del directorio, gestión de usuarios de la empresa y seguridad web. 37 Giancarlo Remón Autenticaciones débiles ¿Cómo mitigar? MySQL Enterprise Edition admite un método de autenticación que permite al servidor MySQL usar PAM (módulos de autenticación conectables) para autenticar a los usuarios de MySQL. PAM permite a un sistema utilizar una interfaz estándar para acceder a diversos tipos de métodos de autenticación, como contraseñas Unix o un directorio LDAP. 38 Giancarlo Remón Autenticaciones débiles La autenticación PAM proporciona estas capacidades: • Autenticación externa: la autenticación PAM permite que el servidor MySQL acepte conexiones de usuarios definidos fuera de las tablas de concesión de MySQL y que se autentiquen utilizando métodos compatibles con PAM. • Soporte de usuario Proxy: la autenticación PAM puede devolver a MySQL un nombre de usuario diferente del usuario de inicio de sesión, en función de los grupos en los que se encuentra el usuario externo y la cadena de autenticación provista. Esto significa que el complemento puede devolver al usuario de MySQL que define los privilegios que debe tener el usuario externo autenticado con PAM. 39 Giancarlo Remón Exposición de datos de copias de respaldo El robo de información y la filtración de datos confidenciales son noticias del día a día, Algunos ataques recientes de alto perfil han involucrado el robo de cintas de backup de base de datos y discos duros. Es importante que todas las copias de seguridad deben ser cifradas. En el futuro, no se debe admitir la creación de copias de seguridad sin cifrar. El cifrado de base de datos en línea es un pobre sustituto de controles granulares de privilegios de acuerdo a expertos de seguridad de base de datos. 40 Giancarlo Remón Exposición de datos de copias de respaldo 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, cuando se instala MySQL. Para comprobar que dispones de mysqldump, abre una consola de comandos y se debe ejecutar lo siguiente: $ mysqldump 41 Giancarlo Remón Exposición de datos de copias de respaldo ¿Cómo mitigar? • Realizar copias de seguridad a diario de todas nuestras bases de datos. • Cifrar las claves para evitar que un atacante obtenga con facilidad las claves de acceso al FTP o bases de datos. • No utilizar el usuario root para crear copias de respaldo, en su lugar crear un usuario especifico para esta función. • Asignar permisos sobre el servidor (o sobre las bases de datos en concreto que queramos usar), únicamente para SELECT, SHOW DATABASES y LOCK TABLES. 42 Giancarlo Remón Exposición de datos de copias de respaldo Grant SELECT, SHOW DATABASES, LOCK TABLES On *.* To 'backupin'@'%'; Con estos tres permisos estaremos permitiendo que se vea las bases de datos, bloquee las tablas para hacer el select y las lea, que serán permisos suficientes para hacer backups, y en caso de algún problema de seguridad o robo de contraseña no podrán modificar nuestras bases de datos aunque sí leerlas (para eso podemos configurar MySQL para que no permita conexiones externas por ejemplo o solo desde una IP en concreto). 43 Giancarlo Remón Herramientas MySQL MySQL Workbench Es una herramienta visual unificada para arquitectos de bases de datos, desarrolladores y DBA. MySQL Workbench proporciona modelado de datos, desarrollo SQL y herramientas integrales de administración para la configuración del servidor, administración de usuarios, respaldo y mucho más. Diseño MySQL Workbench permite a un DBA, desarrollador o arquitecto de datos diseñar visualmente, modelar, generar y administrar bases de datos. Incluye todo lo que un modelador de datos necesita para crear modelos ER complejos, ingeniería directa e inversa, y también ofrece funciones clave para realizar tareas difíciles de administración y documentación de cambios que normalmente requieren mucho tiempo y esfuerzo. 44 Giancarlo Remón Herramientas MySQL Desarrollar MySQL Workbench ofrece herramientas visuales para crear, ejecutar y optimizar consultas SQL. El Editor de SQL proporciona resaltado de sintaxis de color, autocompletado, reutilización de fragmentos de SQL e historial de ejecución de SQL. El panel de conexiones de bases de datos permite a los desarrolladores administrar fácilmente las conexiones de bases de datos estándar, incluido MySQL Fabric. El buscador de objetos proporciona acceso instantáneo a los objetos y el esquema de la base de datos. Administrar MySQL Workbench proporciona una consola visual para administrar fácilmente los entornos de MySQL y obtener una mejor visibilidad de las bases de datos. Los desarrolladores y DBA pueden usar las herramientas visuales para configurar servidores, administrar usuarios, realizar copias de seguridad y recuperación, inspeccionar datos de auditoría y ver el estado de la base de datos. 45 Giancarlo Remón Herramientas MySQL Tablero de rendimiento visual MySQL Workbench proporciona un conjunto de herramientas para mejorar el rendimiento de las aplicaciones MySQL. Los DBA pueden ver rápidamente los indicadores clave de rendimiento utilizando el Tablero de rendimiento. Los informes de rendimiento brindan una fácil identificación y acceso a puntos de conexión IO, declaraciones SQL de alto costo y más. Además, con 1 clic, los desarrolladores pueden ver dónde optimizar su consulta con el Plan Visual Explain mejorado y fácil de usar. Migración de base de datos MySQL Workbench ahora proporciona una solución completa y fácil de usar para migrar Microsoft SQL Server, Microsoft Access, Sybase ASE, PostgreSQL y otras tablas, objetos y datos de RDBMS a MySQL. Los desarrolladores y DBA pueden convertir rápida y fácilmente aplicaciones existentes para ejecutar en MySQL tanto en Windows como en otras plataformas. La migración también admite la migración de versiones anteriores de 46 MySQL a las últimas versiones. Giancarlo Remón Herramientas MySQL MySQL Workbench 47 Giancarlo Remón Ejemplo de amenazas en base de datos 48 Giancarlo Remón Ejemplo de amenazas en base de datos 49 Giancarlo Remón Ejemplo de amenazas en base de datos 50 Giancarlo Remón Ejemplo de amenazas en bases de datos 51 Giancarlo Remón Conclusión La base de datos ha hecho avances significativos en el manejo de la seguridad contras amenazas y vulnerabilidades en varias aplicaciones que requieren confidencialidad, integridad y autenticidad como: Entidades bancarias, médicas, departamentos gubernamentales, inteligencia militar, etc. Aunque la implementación de seguridad más sofisticada no es tarea fácil, debemos hacer el esfuerzo por lograr que nuestros datos estén completamente seguros. Prácticas de seguridad, integridad y disponibilidad para bases de datos se encuentran muy relacionadas, por lo que es necesario definir un plan estratégico de seguridad de la información que abarque las prácticas mencionadas de manera total. Puesto que, si solo nos enfocamos en una sola actividad, no tendremos resultados efectivos y nuestro riesgo de amenazas a la base de datos será mayor. 52 Muchas Gracias 53