Evaluación de Class Bao 2.0: configuración de la base de datos Redis

Evaluación de Class Bao 2.0: configuración de la base de datos Redis

Investigación preliminar

Con respecto a la situación del sistema en la etapa inicial de igual protección, lo que necesitamos saber aquí es la versión de la base de datos.

Verifique la versión de la base de datos: el personal de operación y mantenimiento generalmente configura las variables de entorno del comando redis. Si el siguiente comando no funciona, use buscar para encontrarlo. Algunos conocimientos básicos no se discutirán aquí.

1) Ver localmente en el servidor

redis-server -v

redis-server --version

1620293521_6093b791658dd0aa467f0.png!pequeño?1620293522026

2) Inicie sesión en la base de datos para realizar consultas.

Inicie sesión en la base de datos: redis-cli -h 127.0.0.1 -p 6379 -h seguido de ip, -p seguido de puerto

Generalmente, inicia sesión localmente y puede iniciar sesión directamente a través de redis-cli. Por supuesto, la premisa es que el puerto del servicio Redis no se ha modificado.

Luego de iniciar sesión en la base de datos, ingresamos: info

1620294084_6093b9c4359b26268cae4.png!pequeño?1620294084776

1. Identificación

a) Los usuarios que inician sesión deben estar identificados y autenticados. El identificador de identidad debe ser único y la información de autenticación de identidad debe tener requisitos de complejidad y reemplazarse periódicamente.

1. Identificación e identificación

De forma predeterminada, se puede iniciar sesión en la base de datos de Redis directamente sin contraseña: ingrese directamente redis-cli para iniciar sesión.

1620294168_6093ba18b50d9361da67d.png!¿pequeño?1620294169284

Entonces necesitamos verificar el archivo de configuración de Redis, generalmente redis.conf, en el directorio de inicio de Redis.

Compruebe si el parámetro requirepass no está comentado:

1620294296_6093ba98c2876f972fa11.png!pequeño?1620294297333

Si no está en el estado de comentario, como se muestra en la imagen de arriba, ***y@123 a continuación está la contraseña, que se almacena en texto sin cifrar.

Si se ha establecido una contraseña, se le solicitará

1620294328_6093bab84f5ace66bab03.png!¿pequeño?1620294328832

Nota: Aquí no existe el concepto de usuario, solo se puede agregar una verificación de contraseña.

2. La información de identificación es compleja y cambia periódicamente.

No hay forma de cumplir con este requisito. No hay complejidad de contraseña ni función de configuración del período máximo de uso.

Aquí se comprueba si la complejidad de la contraseña actual del usuario cumple los requisitos.

Extensión: la base de datos de Redis permite la verificación de contraseña

1) Configurar a través del archivo de configuración

Encuentre el parámetro foobared requirepass en redis.conf

1620294568_6093bba8838a0eb19b118.png!pequeño?1620294569177

Cancele el comentario delante de requirepass, cambie foobared a la contraseña correspondiente y luego reinicie la base de datos.

Intente iniciar sesión nuevamente. Puede conectarse pero no puede ejecutar algunos comandos relacionados.

1620294623_6093bbdf3456cab1aba18.png!pequeño?1620294623746

Debe utilizar el comando de autenticación de contraseña para iniciar sesión

1620294652_6093bbfc0726d9a12bb54.png!pequeño?1620294652625

O utilice redis-cli -h 127.0.0.1 -p 6379 -a "mypass" para iniciar sesión (no recomendado)

Porque la contraseña en texto claro se guardará en el historial, lo cual no es seguro.

1620294712_6093bc3841718e454c417.png!pequeño?1620294713030

2) Configurar mediante línea de comando (temporal)

config set requirepass ***y@1234

config get requirepass

1620294770_6093bc7256036059dadbb.png!¿pequeño?1620294771174

Luego intente iniciar sesión en redis con la contraseña anterior configurada en el archivo de configuración y encontrará que la original no está disponible y es rechazada.

1620294802_6093bc92d7285a9bbf9d2.png!¿pequeño?1620294803594

Pero después de reiniciar Redis, se citará la contraseña en el archivo de configuración.

b) Debe tener la función de manejar fallas de inicio de sesión y debe configurar y habilitar medidas relevantes como finalizar la sesión, limitar el número de inicios de sesión ilegales y cerrar sesión automáticamente cuando la conexión de inicio de sesión se agote.

1. Función de manejo de fallas de inicio de sesión

Si esta función no está disponible, pregunte a la gerencia si existen medidas de terceros.

No se cumple el valor predeterminado.

2. Función de salida automática después del tiempo de espera de la operación.

Verifique el archivo de configuración de Redis, generalmente redis.conf, en el directorio de inicio de Redis.

Verifique el valor del tiempo de espera, el valor predeterminado es 0 y nunca salga.

1620294888_6093bce8b4f4647f32d20.png!pequeño?1620294889338

Lo que se establece aquí es exigir la reidentificación después de 120 segundos de la salida.

Pasado este tiempo será necesaria una nueva identificación.

1620294948_6093bd24a354c0544381d.png!¿pequeño?1620294949390

c) Al realizar la gestión remota, se deben tomar las medidas necesarias para evitar que la información de identificación sea escuchada durante la transmisión de la red.

por defecto:

1620347290_6094899ad5b9540dd542f.png!¿pequeño?1620347291872

Los paquetes capturados se transmiten en texto claro.

1620347326_609489be49c376099b106.png!pequeño?1620347327504

Esto requiere preguntar al personal de gestión si han tomado medidas pertinentes para evitar que la información de identificación sea escuchada durante la transmisión.

No se cumple el valor predeterminado.

d) Se deben utilizar dos o más combinaciones de tecnologías de autenticación, como contraseñas, criptografía y biotecnología, para autenticar a los usuarios, y al menos una de las tecnologías de autenticación debe implementarse mediante criptografía.

Generalmente esto no se hace, solo necesitamos verificar en el sitio si utiliza autenticación de dos factores.

2. control de acceso

Dado que la base de datos de Redis no tiene el concepto de usuario, puede iniciar sesión con una sola verificación de contraseña y tener todos los permisos. Por lo tanto, para el punto de control de control de acceso, algunos no son aplicables y otros no cumplen. Creo que esto Se puede determinar de acuerdo con los requisitos de la propia organización para emitir juicios. Después de todo, actualmente no existe un estándar unificado.

a) Se deben asignar cuentas y permisos a los usuarios que hayan iniciado sesión

No existe un concepto de usuario, pase la verificación de contraseña y tenga todos los permisos.

b) Se debe cambiar el nombre de la cuenta predeterminada o eliminarla, y se debe modificar la contraseña predeterminada de la cuenta predeterminada.

No existe ninguna cuenta predeterminada. no aplica

c) Las cuentas redundantes y vencidas deben eliminarse o desactivarse de manera oportuna para evitar la existencia de cuentas compartidas.

Sin concepto de cuenta.

d) Se deben otorgar los permisos mínimos requeridos para los usuarios de administración para lograr la separación de permisos para los usuarios de administración.

No hay manera de descentralizar el poder, no se puede hacer.

e) La política de control de acceso debe ser configurada por el sujeto autorizado, y la política de control de acceso estipula las reglas de acceso del sujeto al objeto.

Ningún sujeto autorizado.

f) La granularidad del control de acceso debe ser tal que el sujeto sea el nivel de usuario o el nivel de proceso, y el objeto sea el nivel de archivo o tabla de base de datos.

Sin concepto de usuario.

g) Se deben establecer marcas de seguridad para sujetos y objetos importantes, y se debe controlar el acceso de los sujetos a los recursos de información con marcas de seguridad.

No puedo hacerlo.

3. Auditoría de seguridad

a) La función de auditoría de seguridad debe estar habilitada, la auditoría cubre a todos los usuarios y se deben auditar los comportamientos importantes de los usuarios y los eventos de seguridad importantes.

Verifique el archivo de configuración de Redis, generalmente redis.conf, en el directorio de inicio de Redis.

Verifique los parámetros de nivel de registro y archivo de registro. La versión que instalé tiene lo siguiente por defecto:

1620347938_60948c227b02201040532.png!pequeño?1620347939589

Redis admite la configuración del nivel de registro a través del elemento de configuración de nivel de registro, que se divide en cuatro niveles, a saber, depuración, detallado, aviso y advertencia.

Redis también admite configurar la ubicación de generación de archivos de registro a través del elemento de configuración del archivo de registro. Si se establece en una cadena vacía, redis generará el registro en la salida estándar y el registro se enviará a /dev/null.

Aquí lo configuramos para enviar el registro al siguiente archivo.

1620347959_60948c3731e6a55a97fac.png!¿pequeño?1620347960188

Después de reiniciar, el registro se escribirá en este archivo.

1620348329_60948da9145f1a8b6bc94.png!pequeño?1620348330433

Entonces aquí necesitamos determinar dos parámetros: nivel de registro y archivo de registro.

Y se debe configurar el archivo de registro, porque si no se configura, el registro correspondiente no se conservará.

b) Los registros de auditoría deben incluir la fecha y hora del evento, el usuario, el tipo de evento, si el evento fue exitoso y otra información relacionada con la auditoría.

De forma predeterminada, la hora del registro sigue la hora del sistema. Por ejemplo, si simplemente reinicio la base de datos, se generará el registro correspondiente.

1620348443_60948e1b9fe6841d70d6f.png!¿pequeño?1620348444645

c) Los registros de auditoría deben protegerse y respaldarse periódicamente para evitar eliminaciones, modificaciones o sobrescrituras inesperadas, etc.

Los permisos de los archivos de registro almacenados en el sistema operativo no deben exceder los 644. No deben eliminarse de forma predeterminada y deben guardarse permanentemente.

1620348496_60948e506422171dad5e7.png!pequeño?1620348497482

Para realizar copias de seguridad periódicas, simplemente pregúntele al administrador si lo ha hecho.

d) El proceso de auditoría debe protegerse contra interrupciones no autorizadas.

Cumple por defecto.

La salida del archivo de registro no se puede interrumpir, pero se puede modificar el nivel de registro.

1620348560_60948e904f0d9eaa0e73b.png!¿pequeño?1620348561399

4. Prevención de intrusiones

Los siguientes términos son: No aplicable

a) Se debe seguir el principio de instalación mínima y solo se deben instalar los componentes y aplicaciones requeridos.

b) Se deben cerrar los servicios de sistema innecesarios, los recursos compartidos predeterminados y los puertos de alto riesgo.

d) Se debe proporcionar una función de verificación de la validez de los datos para garantizar que el contenido ingresado a través de la interfaz hombre-máquina o la interfaz de comunicación cumpla con los requisitos de configuración del sistema.

f) Debería poder detectar intrusiones en nodos importantes y proporcionar alarmas cuando se produzcan intrusiones graves.

Involucrado:

c) Los terminales de gestión gestionados a través de la red deben restringirse estableciendo el método de acceso al terminal o el rango de direcciones de red.

Busque el archivo de configuración de Redis, generalmente redis.conf. Primero puede encontrar RED. Habrá un enlace a continuación.

1620348743_60948f472b50f86c9d49b.png!¿pequeño?1620348744255

En el caso de comentarios es acceso desde cualquier IP, puedes configurar la IP especificada y separarla con espacios. Aquí basta con mirar la dirección IP que sigue al enlace.

e) Debería poder descubrir posibles vulnerabilidades conocidas y parchearlas de manera oportuna después de pruebas y evaluaciones suficientes.

Esto se juzga combinando escaneos faltantes, pruebas y otros métodos. Redis es famoso por sus numerosas lagunas. .

Por ejemplo, las vulnerabilidades de acceso no autorizado se pueden probar con éxito localmente. No entraré en detalles aquí. Dejemos que los ingenieros de penetración echen un vistazo y luego podremos esperar su informe para confirmar si existe una vulnerabilidad correspondiente.

5. Integridad de los datos

Para esta base de datos, los dos elementos siguientes no se cumplen de forma predeterminada. Pregunte a los gerentes si han tomado medidas para garantizar la integridad de los datos.

a) Se debe utilizar tecnología de verificación o tecnología de criptografía para garantizar la integridad de los datos importantes durante la transmisión, incluidos, entre otros, datos de identificación, datos comerciales importantes, datos de auditoría importantes, datos de configuración importantes, datos de video importantes e información personal importante, etc.

b) Se debe utilizar tecnología de verificación o tecnología de criptografía para garantizar la integridad de los datos importantes durante el proceso de almacenamiento, incluidos, entre otros, datos de identificación, datos comerciales importantes, datos de auditoría importantes, datos de configuración importantes, datos de video importantes e información personal importante. etc.

6. Confidencialidad de los datos

La confidencialidad es la misma, para esta base de datos no se cumplen los siguientes dos valores predeterminados. Pregunte a los gerentes si han tomado medidas para garantizar la confidencialidad de los datos.

a) Se debe utilizar tecnología criptográfica para garantizar la confidencialidad de los datos importantes durante la transmisión, incluidos, entre otros, datos de identificación, datos comerciales importantes e información personal importante, etc.

b) Se debe utilizar tecnología criptográfica para garantizar la confidencialidad de los datos importantes durante el proceso de almacenamiento, incluidos, entre otros, datos de identificación, datos comerciales importantes e información personal importante, etc.

7. Copia de seguridad y recuperación de datos

a) Se deben proporcionar funciones de copia de seguridad y recuperación de datos locales para datos importantes.

No hay mucho que decir al respecto, simplemente pregunte al personal de administración cómo se realiza la copia de seguridad y si existen medidas para garantizar que los datos de la copia de seguridad sean válidos (los registros de prueba son suficientes).

b) Se debe proporcionar una función de copia de seguridad en tiempo real fuera del sitio y se debe utilizar la red de comunicación para realizar una copia de seguridad de los datos importantes en el sitio de copia de seguridad en tiempo real.

Pregúntale al administrador

c) Se debe proporcionar redundancia en caliente de los sistemas de procesamiento de datos importantes para garantizar una alta disponibilidad del sistema.

Esto depende de la situación real para determinar si es necesaria la redundancia en caliente. Nadie cree que sea aplicable.

Supongo que te gusta

Origin blog.csdn.net/qq_23435961/article/details/129159780
Recomendado
Clasificación