Docs Menu
Docs Home
/ /

Lista de comprobación de seguridad para implementaciones autogestionadas

Este documento proporciona una lista de medidas de seguridad que debe implementar para proteger su instalación de MongoDB. La lista no está destinada a ser exhaustiva.

  • Active el control de acceso y especifique un mecanismo de autenticación.

    La comunidad MongoDB admite una serie de Mecanismos de autenticación que los clientes pueden utilizar para verificar su identidad:

    Además de los mecanismos precedentes, MongoDB Atlas y MongoDB Enterprise son compatibles con los siguientes mecanismos:

    Estos mecanismos permiten que MongoDB se integre en su sistema de autenticación existente.

Tip

  • Crea un administrador de usuarios primero, luego crea usuarios adicionales. Crea un usuario único de MongoDB para cada persona o aplicación que acceda al sistema.

  • Sigue el principio del mínimo privilegio. Crea roles que definan los derechos de acceso exactos requeridos por un conjunto de usuarios. Luego, crea usuarios y asígnales solo los roles que necesiten para realizar sus operaciones. Un usuario puede ser una persona o una aplicación cliente.

    Nota

    Un usuario puede tener privilegios en diferentes bases de datos. Si un usuario requiere privilegios en múltiples bases de datos, crea un único usuario con roles que otorguen los privilegios de base de datos aplicables en lugar de crear al usuario múltiples veces en diferentes bases de datos.

  • Configure MongoDB para usar TLS/SSL en todas las conexiones entrantes y salientes. Use TLS/SSL para cifrar la comunicación entre... mongod mongos Componentes y de una implementación de MongoDB, así como entre todas las aplicaciones y MongoDB.

    MongoDB utiliza las librerías nativas de TLS/SSL OS:

    Plataforma
    Biblioteca TLS/SSL

    Windows

    Canal seguro (Schannel)

    Linux/BSD

    OpenSSL

    macOS

    Transporte seguro

  • Puedes cifrar los datos de la capa de almacenamiento con el cifrado en reposonativo del motor de almacenamiento WiredTiger.

  • Si no estás utilizando el cifrado en reposo de WiredTiger, los datos de MongoDB deben cifrarse en cada host mediante cifrado de sistema de archivos, de dispositivo o físico (por ejemplo, dm-crypt). También debes proteger los datos de MongoDB utilizando permisos del sistema de archivos. Los datos de MongoDB incluyen archivos de datos, archivos de configuración, registros de auditoría y archivos de claves.

  • Puedes utilizar Queryable Encryption o Cifrado a nivel de campo del lado del cliente para cifrar campos en documentos del lado de la aplicación antes de transmitir datos a través de la red al servidor.

  • Almacena los registros en un almacén central de registros. Estos registros contienen intentos de autenticación de la base de datos, incluidas las direcciones IP de origen.

  • Asegúrate de que MongoDB se ejecuta en un entorno de red confiable y configura el firewall o los grupos de seguridad para controlar el tráfico entrante y saliente de tus instancias de MongoDB.

  • Desactiva el acceso root directo por SSH.

  • Permite que solo los clientes confiables accedan a las interfaces de red y puertos en los que las instancias de MongoDB estén disponibles.

Tip

  • Realizar un seguimiento del acceso y los cambios en las configuraciones y datos de la base de datos. MongoDB Enterprise incluye una función de auditoría del sistema que permite registrar eventos del sistema (incluidas operaciones de usuario y eventos de conexión) en una instancia de MongoDB. Estos registros de auditoría permiten realizar análisis forenses y que los administradores ejerzan los controles adecuados. Puede configurar filtros para registrar solo eventos específicos, como los de autenticación.

  • Ejecuta los procesos de MongoDB con una cuenta de usuario del sistema operativo dedicada. Asegúrate de que la cuenta tenga permisos para acceder a los datos, pero no permisos innecesarios.

  • MongoDB es compatible con la ejecución de código JavaScript para ciertas operaciones del lado del servidor: mapReduce, $where, $accumulator, y $function. Si no utilizas estas operaciones, desactiva el script del lado del servidor mediante la opción --noscripting.

  • Mantén activada la validación de entrada. MongoDB activa la validación de entradas por defecto mediante la configuración net.wireObjectCheck. Esto garantiza que todos los documentos almacenados por la instancia mongod sean BSON válidos.

  • La Guía de Implementación Técnica de Seguridad (STIG) contiene directrices de seguridad para las implementaciones dentro del Departamento de Defensa de los Estados Unidos. MongoDB Inc. proporciona su STIG, previa solicitud.

  • Para aplicaciones que requieren el cumplimiento de la HIPAA o PCI-DSS, consulta Arquitectura de referencia de seguridad de MongoDB para aprender más sobre cómo utilizar las capacidades clave de seguridad de MongoDB para compilar una infraestructura de aplicaciones compatible.

Si se usa un escáner antivirus (AV) o un escáner de detección y respuesta de endpoint (EDR), se debe configurar el escáner para excluir el database storage path y el database log path del escaneo.

Los archivos de datos en el database storage path están comprimidos. Además, si utiliza el motor de almacenamiento cifrado, los archivos de datos también están cifrados. Los costos de E/S y CPU para escanear estos archivos pueden disminuir significativamente el rendimiento sin ofrecer ningún beneficio de seguridad.

Si no excluye los directorios en su database storage path y database log path, el escáner podría poner en cuarentena o borrar archivos importantes. Los archivos faltantes o en cuarentena pueden corromper su base de datos y hacer que su instancia de MongoDB se bloquee.

  • Revise periódicamente el CVE de productos MongoDB y actualice sus productos.

  • Se debe consultar las fechas de fin de vida útil y actualizar la instalación de MongoDB según sea necesario. En general, hay que intentar mantenerse en la última versión.

  • Es necesario garantizar que las políticas y los procedimientos del sistema de gestión de seguridad de la información se extiendan a la instalación de MongoDB, incluida la realización de lo siguiente:

    • Se deben aplicar periódicamente parches a la máquina.

    • Se debe realizar una revisión de los cambios en políticas y procedimientos, especialmente en las normas de la red para evitar la exposición involuntaria de MongoDB a Internet.

    • Revisa los usuarios de base de datos MongoDB y rótalos periódicamente.

Si sospechas que has identificado un error de seguridad en algún producto de MongoDB, informa el problema a través del Formulario de envío de errores de MongoDB.

Volver

Seguridad

Obtén una insignia de habilidad

¡Domina el curso "Seguridad en Redes: Autogestionada" gratis!

Más información