Examen suave de seguridad crediticia Capítulo 20 Seguridad del sistema de base de datos

1. Descripción general de la seguridad de la base de datos

1.1 Conceptos de seguridad de bases de datos y amenazas de seguridad

  • La base de datos es el software básico del sistema de información de la red, que transporta varios datos y se convierte en la plataforma de soporte del sistema de aplicación. La seguridad de la base de datos significa que se puede garantizar la confidencialidad, la integridad y la disponibilidad de la base de datos, e implica principalmente la seguridad de la gestión de la base de datos, la seguridad de los datos, la seguridad de la aplicación de la base de datos y la seguridad de la operación de la base de datos.

Los principales sistemas de bases de datos extranjeros incluyen MS SQL, MySQL, Oracle, DB2, etc. Los sistemas de bases de datos nacionales incluyen principalmente Dajincang, Dameng, etc.

  • La seguridad de la base de datos que actualmente enfrenta incluye principalmente:

  (1) Abusos de autoridad. Los usuarios legítimos roban, modifican o destruyen recursos confidenciales más allá de su autoridad, y los usuarios autorizados otorgan indebidamente sus propios derechos de acceso a otros usuarios.

  (2) Inferencia Lógica y Agregación . Los elementos de datos individuales pueden no ser confidenciales o importantes, pero cuando se recopilan suficientes elementos de datos individuales, se puede inferir información confidencial.

  (3) Mascarada . Un atacante se hace pasar por un usuario normal para obtener acceso a la base de datos.

  (4) Control de derivación (Bypassing Controls). Configure una puerta trasera en la base de datos para eludir el control de acceso de seguridad del sistema de la base de datos

  (5) Canales encubiertos . Use canales de comunicación anormales para transmitir datos para evadir el control de los mecanismos de seguridad de la base de datos, como compartir memoria y archivos temporales.

  (6) Ataque de inyección SQL (inyección SQL)

  (7) Descifrado de contraseñas de la base de datos (diccionario, credencial de la base de datos)

  (8) Ataques de hardware y medios (lanzamiento de ataques físicos)

1.2 Riesgos de seguridad de la base de datos y requisitos de seguridad

  • Los riesgos de seguridad que enfrenta la base de datos son:

  (1) Peligros ocultos de la cuenta de usuario y la contraseña

  (2) Peligros ocultos de los procedimientos almacenados extendidos en el sistema de base de datos. (El intruso puede obtener la autoridad de operación de la base de datos mediante la ejecución de un procedimiento almacenado extendido construido maliciosamente)

  (3) Vulnerabilidades del software del sistema de base de datos y del programa de aplicación

  (4) Peligros ocultos en la asignación de permisos del sistema de base de datos (se asignan permisos excesivos a los usuarios, lo que hace que los usuarios eliminen datos por error o filtren datos confidenciales)

  (5) Débil conocimiento de la seguridad de los usuarios del sistema de base de datos (los usuarios del sistema de base de datos usan contraseñas débiles o las guardan incorrectamente)

  (6) El contenido de la comunicación de la red se transmite en texto claro (vulnerabilidad del contenido de la comunicación sin cifrar entre la base de datos y la aplicación, y los intrusos de la red roban datos confidenciales, como datos específicos de la aplicación o credenciales de inicio de sesión de la base de datos)

  (7) El mecanismo de seguridad del sistema de la base de datos no es perfecto (algunas bases de datos no proporcionan el cambio de nombre de la cuenta del administrador, el límite de tiempo de inicio de sesión y el bloqueo de la cuenta. Por ejemplo, MS SQL Server no puede eliminar la cuenta sa, y sa tiene una contraseña vacía por defecto. )

  • El objetivo de seguridad del sistema de base de datos es proteger el funcionamiento seguro del sistema de base de datos y la seguridad de los recursos de datos. En términos generales, los requisitos de seguridad de la base de datos son principalmente los siguientes.

  (1) Identificación y autenticación de la base de datos (para la identificación y autenticación del usuario)

  (2) Control de acceso a la base de datos (autorización de acceso y control de violaciones para recursos y operaciones)

  (3) Auditoría de seguridad de la base de datos (registrar operaciones de la base de datos para formar archivos de auditoría)

  (4) Copia de seguridad y recuperación de la base de datos

  (5) Cifrado de la base de datos (la base de datos debe tener un mecanismo de cifrado que pueda cifrar datos confidenciales en la base de datos. Y el administrador autorizado normalmente no puede descifrar los datos cifrados y almacenados por otros usuarios.

  (6) Restricciones de recursos (evitar que los usuarios autorizados utilicen recursos como el procesador del servidor de la base de datos (CPU), la memoria caché compartida y los medios de almacenamiento de la base de datos sin restricciones, limitar el número de sesiones paralelas de cada usuario/administrador autorizado y evitar la denegación de servicio de la base de datos ataque)

  (7) Fortalecimiento de la seguridad de la base de datos (inspección de vulnerabilidades y parches)

  (8) Gestión de la seguridad de la base de datos (mecanismo centralizado de gestión de la seguridad para realizar una configuración y gestión centralizadas de las políticas de seguridad de la base de datos)


2. Mecanismo de seguridad de la base de datos y tecnología de implementación.

2.1 Mecanismo de seguridad de la base de datos

  La base de datos es un software básico de alta complejidad, y sus mecanismos de seguridad incluyen principalmente:

imagen

2.2 Tecnología de implementación

  • Cifrado de base de datos .

  Cifre los datos almacenados o transmitidos en la base de datos, y almacene o transmita en texto cifrado. Hay dos métodos principales de encriptación de bases de datos:

  (1) Los datos cargados en la red de la base de datos se realizan utilizando el protocolo SSL

  (2) Los datos almacenados en la base de datos se realizan a través del cifrado de almacenamiento de la base de datos

  De acuerdo con la relación entre el componente de carga y el sistema de administración de la base de datos, el cifrado del almacenamiento de la base de datos se puede dividir en dos métodos de cifrado: cifrado en la tienda y cifrado fuera de la tienda.

  • cortafuegos de base de datos

  El cortafuegos de la base de datos es como se muestra en la siguiente figura. A través del análisis del protocolo SQL, permite que las operaciones SQL legales pasen de acuerdo con las políticas de permisos y prohibiciones predefinidas, bloquea las operaciones ilegales, forma un círculo de defensa periférico para la base de datos e implementa medidas anti-hueso proactivas. y auditoría de operaciones SQL peligrosas.

imagen

  Las funciones de seguridad del cortafuegos de la base de datos son las siguientes

  • Proteger el canal de acceso directo a la base de datos (prevenir el ataque a la base de datos por el canal oculto de la base de datos)
  • Autenticación mejorada. (Cortafuegos de base de datos y autenticación de dos niveles de la propia base de datos)
  • detección de ataques
  • Prevenir la Explotación
  • Prevenir operaciones internas de alto riesgo
  • Evite que se filtren datos confidenciales. (A través del firewall, puede limitar la consulta de la base de datos y la descarga de datos, y limitar los usuarios, lugares y horas de acceso a datos confidenciales)
  • Auditoría de seguridad de la base de datos
  • desensibilización de datos

  El uso de tecnología de desensibilización de datos para transformar los datos en la base de datos, manteniendo el objetivo de usar la base de datos bajo demanda, también puede evitar la fuga de datos confidenciales. La desensibilización de datos se refiere a la transformación de datos confidenciales de acuerdo con las reglas de desensibilización, la eliminación de datos de identificación y la anonimización de datos, a fin de realizar la protección de datos confidenciales. Por ejemplo, suponga que los datos de identificación libres de enfermedad son los siguientes:

imagen


3. Protección y análisis de seguridad de la base de datos de Oracle

  • Oracle es un producto de base de datos relacional , que puede ejecutarse en una variedad de plataformas de hardware y admitir una variedad de sistemas operativos. Oracle sigue los estándares de la industria para lenguajes de almacenamiento de datos, sistemas operativos, interfaces de usuario y protocolos de comunicación de red.
  • Usos de la base de datos Oracle

  (1) Autenticación de usuario (los mecanismos de autenticación de Oracle son diversos. Admite la autenticación del sistema operativo, la autenticación de red, la autenticación de varios niveles, la autenticación SSL)

  (2) Control de acceso (control de acceso a la red integrado interno y control de autorización de objetos de datos)

  (3) Bóveda (establecer un Database Vault,DVmecanismo de bóveda de base de datos, que se utiliza para proteger datos confidenciales y tiene las funciones de evitar cambios no autorizados en los sistemas de datos, autorización de confianza de múltiples factores, segregación de funciones y privilegio mínimo.

  (4) Auditoría de seguridad y firewall de datos (con la capacidad de auditar actividades internas, como se muestra en la figura a continuación. Hay tres tipos de actividades que pueden ser auditadas por los datos de Oracle: intentos de inicio de sesión, actividades de la base de datos y adquisición de objetos).

imagen

  (5) Funciones de seguridad avanzadas (proporcionar cifrado de datos transparente y mecanismos de protección de datos para proteger la seguridad de los datos)

imagen

  • Mejores prácticas de seguridad de Oracle

(1) Mejorar la seguridad del sistema operativo del servidor de la base de datos de Oracle (minimizar los servicios del sistema, mantener actualizados los parches y cerrar los puertos de comunicación de la red que no requieren comunicación)

(2) Minimice la instalación de Oracle y elimine los componentes innecesarios

(3) Instale el último parche

(4) Eliminar o modificar la contraseña de usuario predeterminada

(5) Habilitar mecanismo de autenticación

(6) Establecer contraseña y política de contraseña

(7) Establecer permisos mínimos

(8) Limite la dirección IP que se conecta a Oracle

(9) Cifrado de transmisión

(10) Habilitar la auditoría de Oracle

(11) Verifique regularmente la información de publicación de vulnerabilidades de Oracle y parchee las vulnerabilidades a tiempo

(12) Implementar el plan de recuperación ante desastres de Oracle (supervisión del funcionamiento seguro de la base de datos, respaldo periódico de datos, especificación de registros de emergencia de seguridad para posibles incidentes de seguridad

4. Análisis y protección de la seguridad de la base de datos MS SQL

  • Con origen en Sybase, Microsoft SQL Server es un sistema de puerta de enlace de base de datos relacional a gran escala basado en la estructura de Windows NT, uno de los sistemas de administración de bases de datos líderes en la industria y un componente central del producto de Microsoft.
  • El mecanismo de seguridad proporcionado por MS SQLServer incluye principalmente los siguientes aspectos

  (1) Autenticación de la identidad del usuario

  (2) Control de acceso. (Se adopta un mecanismo de control de acceso basado en roles. Los roles de SQL Server se dividen en tres tipos, a saber, roles de servidor fijo Fixed Server Roles, roles de base de datos fijos Fixed Database Rolesy roles de emergencia Application Roles)

  (3) Cifrado de base de datos (proporcionar función Transacat-SQL, clave asimétrica, clave simétrica, certificado, mecanismo de cifrado de datos transparente)

  (4) Mecanismo de respaldo y recuperación

  (5) Auditoría de seguridad (este mecanismo contiene múltiples componentes, que se pueden usar para auditar todo el uso de permisos

  • Prácticas recomendadas de seguridad de MS SQL Server

  (1) Configure la política de seguridad de la contraseña de la base de datos (rechace las contraseñas vacías, como MS SQL Slammer es usar la contraseña del administrador para estar vacía para atacar)

  (2) Fortalecer la gestión de los procedimientos almacenados extendidos y eliminar los procedimientos almacenados innecesarios (los procedimientos almacenados del sistema de SQL Server se aprovechan fácilmente para elevar los privilegios y destruirlos, así que asegúrese de eliminar los procedimientos almacenados innecesarios)

  (3) Transmisión de datos encriptados en Internet (el protocolo Tabular Data Stream se usa para transmitir datos en texto claro, lo que puede conducir fácilmente a la fuga de datos, y se recomienda usar SSL)

  (4) Modifique el número de puerto TCP/IP predeterminado de la base de datos (SQL Server tiene como valor predeterminado el puerto 1433, se recomienda modificarlo a otros puertos)

  (5) Restricciones de IP en las conexiones de red para el acceso a la base de datos SQL

  (6) Habilite la auditoría de registros de SQL Server, registre todos los accesos de los usuarios y analice los registros de eventos de seguridad

  (7) Verifique regularmente la información de publicación de vulnerabilidades de MS SQL Server y parchee las vulnerabilidades a tiempo

  (8) Garantizar la seguridad del sistema operativo de MS SQL Server (reducir la seguridad del sistema operativo)

  (9) Detección de seguridad de MS SQL Server, formular un plan de respaldo de recuperación ante desastres de seguridad.

Cinco, análisis y protección de la seguridad de la base de datos MySQL

  • MySQL es un sistema de base de datos clave basado en red, que tiene las ventajas de muros funcionales, uso fácil, administración conveniente y velocidad de operación rápida.Los usuarios pueden escribir programas para acceder a bases de datos MySQL en varios idiomas, especialmente en combinación con PHP y Apache, y son ampliamente utilizados en el campo de Internet
  • Los mecanismos de seguridad proporcionados por MySQL incluyen principalmente los siguientes:

  (1) Autenticación de la identidad del usuario (nombre de usuario/contraseña de inicio de sesión)

  (2) Autorización de acceso (los administradores de MySQL pueden usar los comandos otorgar y revocar para crear, eliminar usuarios, autorizar y revocar operaciones)

  (3) Auditoría de seguridad (MySQL tiene un mecanismo de auditoría incorporado que puede registrar el estado de ejecución de MySQL

  • Prácticas recomendadas de seguridad de MySQL

  (1) Instalación de MySQL . Cree usuarios y grupos separados para iniciar MySQL. Instale el último paquete de software MySQL, seleccione los parámetros estáticos apropiados para compilar la base de datos MySQL

  (2) Establecer el entorno operativo MySQL Chrooting . (Formar un mecanismo de protección de "caja de arena" para mejorar la capacidad del sistema para resistir la penetración)

  (3) Cierre la conexión remota de MySQL . (Cierre el puerto de escucha predeterminado 3306 de Mysql, los usuarios locales pueden mysql.sockconectarse a través de él y la copia de seguridad de mysql se ejecuta a través de ssh)

  (4) Prohibir que MySQL importe archivos locales . (El comando "LOAD DATA LOCAL INFILE" está prohibido)

  (5) Modifique la ID de usuario raíz y la contraseña de MySQL

SET PASSWORD FOR root@localhost=PASSWORD('new_password');

  (6) Elimine el usuario predeterminado y la base de datos de MySQL (elimine la prueba de base de datos predeterminada. Elimine todo excepto la raíz)

  (7) Cambie el nombre de usuario raíz de MySQL para evitar el descifrado de contraseñas por fuerza bruta

update user set uesr="dsb" where user="root"; #将管理员用户名从root修改为dsb
flush privileges; #刷新MySQL的系统权限相关表

  (8) Establecer una base de datos y una cuenta de usuario para uso separado de la aplicación (dicha cuenta solo puede acceder a la base de datos utilizada por el programa correspondiente)

  (9) Monitoreo de seguridad (monitoreo del estado de ejecución y parcheo de vulnerabilidades a tiempo)

  (10) Copia de seguridad (copia de seguridad regular)

  • Los principales tipos de vulnerabilidades de MySQL son denegación de servicio, ejecución de código, desbordamiento, evasión, adquisición de privilegios, etc. Por lo tanto, es necesario instalar el paquete de parches de vulnerabilidad a tiempo.

6. Análisis y protección de la seguridad de la base de datos nacional

  • La base de datos nacional se refiere al sistema de base de datos desarrollado por la fuerza nacional independiente de investigación y desarrollo, que tiene una fuerte capacidad de control y seguridad. Se han formado bases de datos tradicionales como Shenzhou Data, Renmin University Jincang y Dameng, así como la base de datos en tiempo real Anjie del Instituto de Software de la Academia de Ciencias de China.
  • Los principales riesgos de seguridad que enfrenta el sistema de base de datos nacional se analizan a continuación

  (1) Lagunas en la seguridad de las bases de datos nacionales

  (2) Las bases de datos nacionales dependen de la seguridad de los componentes del sistema de terceros (por ejemplo, las vulnerabilidades de seguridad del protocolo Open SSL tienen un impacto en la seguridad de la transmisión de la red de la base de datos)

  (3) Seguridad de la configuración de seguridad del sistema de base de datos doméstico (la configuración incorrecta constituye seguridad del sistema)

  (4) La seguridad de la plataforma de soporte de la base de datos doméstica (limitada por los problemas de seguridad causados ​​por el sistema operativo)

  • Medidas de mejora de la seguridad de las bases de datos nacionales

  (1) Minería y escaneo de vulnerabilidades de seguridad de bases de datos nacionales (se ha establecido un laboratorio de ataque y defensa de bases de datos en China, y se ha iniciado el trabajo de investigación de minería de seguridad de bases de datos nacionales)

  (2) Cifrado de base de datos nacional (el sistema de puerta de enlace de la base de datos de Dameng proporciona un conjunto de funciones de cifrado de almacenamiento de información fáciles de usar, flexibles y confiables, como cifrado de algoritmo interno, cifrado de almacenamiento de software y hardware de terceros, cifrado transparente, cifrado semitransparente y cifrado no transparente)

  (3) Base de datos de seguridad nacional (la versión de seguridad KingbaseES de la base de datos Jincang del Congreso Nacional del Pueblo sigue los requisitos técnicos de cuarto nivel del estándar de base de datos de seguridad nacional GB/T 20273-2019, desarrollado de forma independiente con referencia al modelo de seguridad en la industria, como se muestra en la figura)

imagen

Supongo que te gusta

Origin blog.csdn.net/qq_43632414/article/details/127352455
Recomendado
Clasificación