Arquitectura de seguridad en Pandora FMS · • Deshabilitar configuración remota en los agentes...
Transcript of Arquitectura de seguridad en Pandora FMS · • Deshabilitar configuración remota en los agentes...
c/ Gran Vía 62Madrid, España.
(+34) 91 559 72 22
[email protected] www.pandorafms.com
Arquitectura deseguridad enPandora FMS
El presente documento tiene como objetivo describir los elementos de seguridad de
cada componente de Pandora FMS, para que el administrador los conozca y sepa
cómo utilizarlos para implementar una arquitectura más segura, acorde a normativas
como PCI/DSS, ISO 27001, ENS, LOPD o similares. Además de una descripción espe-
cífica de los mecanismos de seguridad de cada elemento de Pandora FMS se incide
en los posibles riesgos, y su manera de mitigarlos, utilizando las herramientas de que
dispone Pandora FMS u otros mecanismos posibles.
3 pandorafms.com
IMPLEMENTACIÓN DE SEGURIDAD (GENERAL)
Estos puntos aplican a normas internacionales como PCI/DSS, ISO 27001, Esquema de
Seguridad Nacional, LOPD, etc. Pueden servirle para guiar una implementación segura de
Pandora FMS en su entorno.
1. Los componentes de Pandora FMS tienen documentados sus puertos de
entrada y salida, por lo que es posible securizar mediante Firewalls todos los
accesos hacia y desde sus componentes.
2. Tráfico seguro mediante cifrado y certificados: Pandora FMS, a todos los
niveles (operación de usuario, comunicación entre componentes) soporta cifrado
SSL/TLS y certificados en ambos extremos.
3. Sistema de doble autenticación de acceso: se puede implantar un sistema de
doble autenticación. El primero, a nivel de acceso (HTTP) integrado con cualquier
sistema de token opensource o comercial.
4. Sistema de autenticación con terceros: a nivel de aplicación, es gestionada por
Pandora FMS, que se puede autenticar contra LDAP o Active Directory.
5. SSO (Single Sign-On), con SAML.
6. Políticas de seguridad en la gestión de usuarios: la gestión de usuarios está
delimitada por políticas tanto a nivel de perfiles de usuario como a nivel de
perfiles de visibilidad de operaciones, definido como el sistema de ACL Extendido
de la versión Enterprise.
7. Posibilidad de auditorías sobre las acciones de los elementos monitorizados:
Pandora FMS, en su versión Enterprise, audita todas las acciones de los usuarios,
incluyendo la información sobre los campos alterados o borrados. Además,
incluye un sistema de validación por firma de estos registros.
4 pandorafms.com
8. Cesión de datos de auditoría a gestores de logs externos: los logs de auditoría
están disponibles para su exportación mediante SQL y permiten integrarlos en
una 3º fuente para mayor seguridad, en tiempo cercano al real.
9. Separación física de los componentes que ofrecen una interfaz al usuario y
los contenedores de información (filesystem). Tanto los datos almacenados en
BBDD como los filesystem que almacenan la información de configuración de
monitorización pueden estar en máquinas físicas separadas, en distintas redes,
protegidas a través de sistemas perimetrales.
10. Política activa de contraseñas que permiten forzar una política estricta de
gestión de contraseñas de acceso a los usuarios de la aplicación (consola).
11. Cifrado de datos sensibles. El sistema permite guardar de manera cifrada y
segura los datos más sensibles tales como credenciales de acceso.
5 pandorafms.com
SEGURIDAD POR COMPONENTES DE LA ARQUITECTURA
La arquitectura de Pandora FMS, de un modo muy simplificado se puede resumir así:
6 pandorafms.com
SERVIDOR
1. El servidor necesita permisos de root, pero puede ser instalado (con limitaciones)
con permisos no root (solo en sistemas Linux).
2. El servidor necesita acceso directo (lectura y escritura) a los ficheros de configu-
ración remota de los agentes, que se propagan cuando los agentes contactan
con el servidor, de manera periódica. Dichos ficheros están protegidos por el
filesystem, con permisos estándar.
3. El servidor como tal no escucha ningún puerto. Es el servidor de Tentacle quien
escucha en un puerto, el servidor solo accede a los ficheros que éste deja en
disco.
4. El servidor tiene su propio log, muy detallado.
5. El servidor se conecta con la BBDD principal mediante una conexión estándar
MySQL/TCP.
6. Parte del código es accesible en la versión OpenSource y el de la Enterprise se
puede solicitar bajo condiciones específicas de contrato (sólo para clientes).
7 pandorafms.com
Posibles vulnerabilidades y salvaguardas
1. Acceso no autorizado a los archivos de configuración de los agentes. Solución:
• Implementar un contenedor securizado externo para los archivos de
configuración externos, vía NFS.
2. Inyección de comandos en los agentes remotos a través de la manipulación de
los ficheros de configuración almacenados en el contenedor de configuraciones.
Solución:
• Deshabilitar configuración remota en los agentes especialmente sensibles,
después de la configuración y dejarlos funcionando sin poder alterar nada
remotamente, para una seguridad absoluta.
• Monitorización remota -sin agentes- de los dispositivos más delicados.
3. Vulnerable ante ataques de falseo de información, simulando agentes que no
tenemos en el sistema o suplantando su identidad. Para evitarlo podemos
utilizar varios mecanismos:
• Mecanismo de protección de password (que funciona por grupo).
• Limitando la autocreación de agentes, y crearlos de manera manual.
• Limitando la capacidad de autodetectar cambios en el agente y no tomar
información nueva desde los XML a la ya existente.
4. Captura maliciosa de la comunicación entre servidor y consola (captura de
tráfico de red). Solución:
• Activar la comunicación TLS entre servidor y base de datos MySQl.
8 pandorafms.com
TENTACLE
1. Tentacle es un servicio oficial de internet, documentado como tal por IANA1.
Esto significa que puede ser protegido fácilmente con cualquier herramienta
de seguridad perimetral.
2. No necesita root ni privilegios especiales.
3. Tiene cuatro niveles de seguridad: sin cifrado (por defecto), SSL/TLS Básico,
SSL/TLS con certificado en ambos extremos y SSL/TLS con certificado y valida-
ción de CA.
4. Específicamente diseñado para no dar pistas a posibles intrusos en los mensajes
de error y con timeouts específicos para desalentar ataques de fuerza bruta.
5. Tiene un log de auditoría propio.
6. El 100% del código es accesible (bajo licencia opensource GPL2).
Posibles vulnerabilidades y salvaguardas
1. Ataques al filesystem. Debe acceder al contenedor de configuraciones. Soluciones:
• Se protege de la misma manera que el servidor, mediante un sistema NFS
externo securizado.
2. Ataques DoS por sobrecarga. Soluciones:
• Montar una solución de HA sobre el servicio TCP que ofrece para balanceo,
o un cluster activo/activo. Serviría cualquier solución hardware o software
disponible al tratarse de un servicio TCP estándar.
1 https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml?&page=131
9 pandorafms.com
CONSOLA
1. No necesita root, se instala con un usuario sin privilegios.
2. Debe tener acceso al repositorio de configuraciones de agentes (filesystem).
3. Escucha en puertos estándar HTTP ó HTTPS.
4. Registra todas las peticiones via registro de peticiones HTTP.
5. Ofrece una API pública via HTTP/HTTPS, securizada con credenciales.
6. Existe una auditoría específica de aplicación, que registra la actividad de cada
usuario sobre cada objeto del sistema.
7. Se puede restringir el acceso de cada usuario a cualquier sección de la
aplicación, y crear incluso administradores con permisos restringidos.
8. La aplicación incorpora un sistema de doble autenticación.
9. La aplicación incorpora un sistema de autenticación delegada (LDAP, AD).
10. Se puede montar un sistema de solo lectura. Sin acceso a las configuraciones
de dispositivos.
11. La información confidencial (contraseñas) se puede guardar cifrada en la
BBDD.
12. La aplicación se conecta con la BBDD principal mediante una conexión
estándar MySQL/TCP.
13. Parte del código es accesible en la versión OpenSource y el de la Enterprise se
puede solicitar bajo condiciones específicas de contrato (sólo para clientes).
14. Existe una fuerte implementación de políticas de seguridad respecto a las
contraseñas (longitud, cambio forzado, histórico, tipo de caracteres válidos,
etc)
10 pandorafms.com
Posibles vulnerabilidades y salvaguardas
1. Ataques al filesystem. Debe acceder al contenedor de configuraciones. Soluciones:
• Se protege de la misma manera que el servidor, mediante un sistema NFS
externo securizado.
2. Ataques de fuerza bruta o diccionario contra la autenticación de usuario.
Solución:
• Implementar una política de contraseñas dura (punto 14).
• Implementar un mecanismo de doble autenticación (punto 8).
3. Captura de tráfico (eavesdropping) del tráfico a la consola. Solución:
• Implementar SSL/TLS.
4. Captura de tráfico (eavesdropping) del tráfico a la base de datos. Solución:
• Implementar SSL/TLS.
5. Ataques de tipo SQL injection para obtener información confidencial de la
BBDD de la aplicación. Solución:
• Implementar almacenamiento cifrado de datos.
6. Mal uso (intencionado o no) por parte de los usuarios de la aplicación. Solu-
ción:
• Activar el log de auditoría y mostrarle a los usuarios que existe y su precisión.
• Activar el sistema de ACL extendido para restringir al máximo las funciones
de cada usuario.Exportar el log de auditoría a un sistema externo de forma
regular.
7. Ejecución de código malicioso en herramientas locales de la consola,
reemplazando ficheros binarios. Solución:
• Securización del servidor (hardening) del servidor que contiene la aplicación.
11 pandorafms.com
AGENTES
1. Puede ejecutarse sin permisos de superusuario (con funcionalidades limitadas).
2. La gestión remota del agente se puede desactivar (en local y en remoto), de
manera que se puede minimizar el impacto de una intrusión en el sistema
central.
3. El agente no escucha puertos de red, es él el que se conecta al servidor de
Pandora FMS.
4. Existe un registro de cada ejecución.
5. Los ficheros de configuración están protegidos por defecto, mediante permisos
del filesystem. Solo un usuario con permisos de superadministrador puede
modificarlos.
6. El 100% del código es accesible (bajo licencia opensource GPL2).
Posibles vulnerabilidades y salvaguardas
1. Intrusión en el sistema central que permita distribuir ejecución de comandos
maliciosos a los agentes. Soluciones:
• Limitar qué usuarios pueden realizar esas modificaciones de políticas o
configuraciones (vía ACL ordinario de la consola o ACL extendido).
• Activar el modo “readonly” de los agentes (no permiten modificaciones de su
configuración remotamente), para aquellos sistemas especialmente sensibles.
2. Debilidad en el filesystem que permita modificar ficheros.
• Solución:Correcta configuración de permisos.
3. Ejecución de plugins o comandos maliciosos. Solución:
• Limitar qué usuarios pueden subir ejecutables (vía ACL ordinario de la
consola o ACL extendido).
• Realizar una auditoría de plugins nuevos.
12 pandorafms.com
BASE DE DATOS
Es un producto estándar (MySQL).
Posibles vulnerabilidades y salvaguardas
1. Eavesdropping (captura de tráfico de red). Solución:
• Implementación de una conexión segura TLS. MySQL la soporta.
2. Permisos incorrectos. Solución:
• Configuración correcta de permisos de acceso.
3. Vulnerabilidades conocidas de MySQL. Es recomendable establecer un plan de
actualización del servidor MySQL con el que tenerlo lo más actualizado posible
y así evitar posibles vulnerabilidades que puedan tener versiones antiguas.
Limitar qué usuarios pueden subir ejecutables (via ACL ordinario de la consola
o ACL extendido).
13 pandorafms.com
• VERIFICACIÓN PARA MANEJO DE ENTRADA DE DATOS MALICIOSOS
• VERIFICACIÓN PARA LA CRIPTOGRAFÍA EN EL ALMACENAMIENTO
• VERIFICACIÓN DE PROTECCIÓN DE DATOS
Por la tipología de datos que maneja Pandora FMS, según la metodología OWASP 3 el
software de monitorización estaría clasificado como ASVS Nivel 1.
Pandora FMS incorpora un sistema específico para la protección contra ataques de XSS
y SQL injection mediante la codificación de datos en la BBDD, lo cual garantiza que todas
las entradas de usuario sean validadas, al igual que las salidas inseguras que se validarán
también. No se confía en ninguna entrada de datos que pueda ser malinterpretada por la
aplicación.
El acceso a las claves se gestiona de forma segura, codificando los datos con una palabra de
paso personalizada por el cliente. El encriptado utiliza algoritmos OpenSSL para garantizar
la seguridad de los datos. Asimismo, se utiliza un generador de números aleatorios siempre
que es preciso la aleatoriedad, y además se le suma una semilla personalizada, para que
todos los módulos criptográficos fallen de forma segura y los errores sean gestionados
correctamente.
El sistema garantiza la confidencialidad, integridad y disponibilidad de los datos. Para ello
utiliza un extenso sistema de ACL multiperfil, dispone de un sistema de auditoría de grano
fino y tiene varios mecanismos para garantizar la disponibilidad de los datos, incluyendo la
redundancia.
Hay que recordar que Pandora FMS dispone de un sistema de doble autenticación que
limita el riesgo de los accesos indebidos.
CUMPLIMIENTO DE SEGURIDAD DE APLICACIONES OWASP 3.0.1
14 pandorafms.com
• VERIFICACIÓN DE SEGURIDAD EN LAS COMUNICACIONES
• VERIFICAR LOS REQUISITOS DE CONFIGURACIÓN
• VERIFICACIÓN DE LA LÓGICA DEL NEGOCIO
• VERIFICACIÓN PARA CONTROLES MALICIOSOS
• VERIFICAR CONFIGURACIÓN DE SEGURIDAD HTTP
• VERIFICACIÓN DE SERVICIOS WEB REST Y SOAP
Pandora FMS permite un sistema de comunicación seguro basado en SSL/TLS de todos los
componentes de su arquitectura.
La distribución ISO de Pandora FMS incorpora un hardening de serie, además de la versión
actualizada de todos sus componentes, así como una configuración segura por omisión en
la aplicación.
No aplica, OWASP solo se contempla para ASVS Nivel 2 o superior.
No aplica, OWASP solo se contempla para ASVS Nivel 3 o superior.
El servidor de aplicaciones (Apache/PHP) es un estándar de la industria y existen procedi-
mientos para garantizar una implementación segura.
El servidor de aplicaciones (Apache/PHP) es un estándar de la industria y existen proce-
dimientos para garantizar una implementación segura. Los mecanismos de API Rest de
Pandora FMS incorporan diferentes mecanismos de seguridad contemplados en este punto.