Lynis: Auditoría de Seguridad

Lynis: Auditoría de Seguridad

No soy un experto en seguridad pero algo conozco y es que estos dias he estado trabajando mucho con la seguridad en mis servidores y mis aplicaciones, por ello es que voy documentando este tipo de herramientas que son simples de usar y aportan bastante a mantener los servidores expuestos no tan inseguros. Con amenazas cibernéticas en constante evolución, es crucial contar con herramientas que nos ayuden a identificar vulnerabilidades y mejorar la configuración de nuestros sistemas. Aquí es donde entra en juego Lynis, una poderosa herramienta de auditoría de seguridad para sistemas basados en Unix y Linux.

¿Qué es Lynis?

Lynis es una herramienta de auditoría de seguridad de código abierto que realiza análisis exhaustivos en sistemas Unix y Linux, con el objetivo de detectar vulnerabilidades, configuraciones incorrectas y áreas donde se pueden realizar mejoras en la seguridad. Fue creado por Michael Boelen y es ampliamente utilizado tanto por administradores de sistemas como por auditores de seguridad para evaluar y reforzar la seguridad de los sistemas.

Lynis se destaca por ser altamente flexible y no requiere instalación de software complejo ni cambios drásticos en la configuración del sistema. Su enfoque en la mejora continua lo convierte en una herramienta ideal para integrarse en un ciclo de seguridad proactivo.

¿Para qué fue creado Lynis?

Lynis fue diseñado con un propósito claro: facilitar la auditoría de seguridad de sistemas Unix y Linux. A diferencia de otras herramientas de seguridad que se centran únicamente en la detección de malware o la protección en tiempo real, Lynis abarca un enfoque más amplio. Revisa configuraciones, prácticas de seguridad, y cumple con normas de cumplimiento, proporcionando recomendaciones detalladas sobre cómo mejorar el estado de seguridad del sistema.

Casos de Uso Específicos para Lynis

Lynis es versátil y se adapta a varios escenarios, lo que lo hace útil en una amplia gama de casos de uso:

  1. Auditorías Previas a la Implementación de un Nuevo Sistema: Antes de desplegar un nuevo servidor en producción, Lynis puede ayudarte a verificar que el sistema cumple con todas las políticas de seguridad internas. Por ejemplo, puedes asegurarte de que las configuraciones de red, las políticas de contraseñas y las reglas del firewall estén correctamente ajustadas.

  2. Evaluación Post-Incidente: Después de un incidente de seguridad, Lynis es útil para evaluar el estado de seguridad del sistema y determinar si existen otras vulnerabilidades que puedan ser explotadas. Esto es crucial para evitar ataques futuros.

  3. Cumplimiento de Regulaciones: Si tu organización está sujeta a regulaciones como PCI-DSS o HIPAA, Lynis te ayuda a asegurar que tus sistemas cumplan con los requisitos de seguridad necesarios. La herramienta ofrece una auditoría detallada que puede ser presentada durante auditorías de cumplimiento.

Beneficios de Usar Lynis

  1. Auditoría Exhaustiva: Lynis realiza una revisión exhaustiva de tu sistema, evaluando desde la configuración de red hasta la seguridad de las contraseñas y las configuraciones del kernel.
  2. Identificación de Vulnerabilidades: Detecta configuraciones inseguras, archivos con permisos incorrectos y servicios innecesarios que podrían representar un riesgo.
  3. Cumplimiento Normativo: Ayuda a verificar el cumplimiento de estándares como PCI-DSS, HIPAA, y otros, lo cual es esencial para empresas que manejan información sensible.
  4. Mejoras Continuas: Lynis no solo te señala los problemas, sino que también te ofrece recomendaciones sobre cómo solucionarlos y mejorar la seguridad a largo plazo.
  5. Flexibilidad y Facilidad de Uso: Es fácil de usar y no requiere instalación compleja, además de ser altamente personalizable para diferentes necesidades de auditoría.

Desafíos al Usar Lynis

Aunque Lynis es una herramienta poderosa, no está exenta de desafíos:

  1. Interpretación de Resultados: Si bien Lynis ofrece recomendaciones, interpretar los resultados y priorizar las acciones puede ser complicado, especialmente para administradores menos experimentados.
  2. Requiere Permisos de Root: Para obtener un análisis completo, es necesario ejecutar Lynis con permisos de superusuario, lo que puede representar un riesgo si no se gestiona adecuadamente.
  3. No es una Solución Todo en Uno: Aunque Lynis es excelente para auditorías de seguridad, no reemplaza otras herramientas de seguridad, como sistemas de detección de intrusiones o antivirus.

¿Cómo se Instala Lynis?

Instalar Lynis es sorprendentemente sencillo. No requiere dependencias complejas, y en la mayoría de los sistemas Unix y Linux se puede instalar directamente desde los repositorios oficiales o descargando el paquete desde su sitio web oficial.

Para instalar Lynis en una distribución basada en Debian o Ubuntu, puedes usar el siguiente comando:

sudo apt-get install lynis

También puedes descargar la última versión directamente desde GitHub:

wget https://github.com/CISOfy/lynis/archive/master.zip
unzip master.zip
cd lynis-master
sudo ./lynis audit system

Verificaciones que Realiza Lynis

Una vez instalado, puedes ejecutar Lynis con el comando:

sudo lynis audit system

Lynis comenzará a realizar una serie de pruebas que abarcan diferentes aspectos del sistema. Estas pruebas se agrupan en varias categorías:

  1. Información del Sistema: Identifica la distribución, la versión del kernel, y otras características del sistema.
  2. Gestión de Usuarios y Autenticación: Revisa las cuentas de usuario, políticas de contraseñas, y configuraciones de autenticación.
  3. Seguridad del Sistema: Verifica permisos de archivos, configuraciones del kernel y medidas de protección como SELinux o AppArmor.
  4. Red y Configuración de Seguridad: Evalúa configuraciones de red, firewalls, y servicios que están escuchando en puertos abiertos.
  5. Registro y Auditoría: Verifica la configuración de syslog y otros sistemas de registro, asegurándose de que se capturen los logs críticos.
  6. Parcheado y Actualizaciones: Revisa si el sistema tiene parches de seguridad aplicados y si las actualizaciones están configuradas correctamente.

Automatización con Lynis

Uno de los grandes beneficios de Lynis es su capacidad para integrarse en procesos automatizados, lo que permite realizar auditorías periódicas sin intervención manual. Por ejemplo, Lynis se puede integrar en un playbook de Ansible para que se ejecute automáticamente en servidores cada cierto tiempo. Esto asegura que cualquier cambio en la configuración del sistema o nuevas vulnerabilidades se detecten rápidamente.

- hosts: all
  become: yes
  tasks:
    - name: Run Lynis security audit
      command: lynis audit system

Este enfoque no solo simplifica la administración de seguridad, sino que también garantiza que siempre estés al tanto del estado de tus sistemas. Y algo asi es que he creado para automatizar este proceso.

Plugins y Extensiones

Lynis también soporta plugins que permiten extender sus capacidades. Estos plugins pueden ser desarrollados para realizar auditorías específicas de aplicaciones, servicios o configuraciones que no están cubiertas por defecto. Por ejemplo, si tienes una configuración única en tu entorno que requiere monitoreo adicional, puedes crear un plugin personalizado para incluir esas verificaciones en la auditoría de Lynis.

Ejemplo de una Ejecución de Lynis

A continuación, te muestro un ejemplo de cómo se ve una salida típica al ejecutar Lynis:

[+] Initializing program
------------------------------------
  Program version:           3.0.0
  Operating system:          Linux
  Kernel version:            5.4.0-42-generic
  Hardware platform:         x86_64
------------------------------------
  - [ ] Check for updates:  skip

[+] Starting test categories
------------------------------------
  - [ ] Boot and services
  - [ ] Kernel
  - [ ] Memory and Processes
  - [ ] User accounts
  - [ ] Shells
  - [ ] File systems
  - [ ] Storage
  - [ ] Software: Firewalls
  - [ ] Software: Integrity
  - [ ] Software: Malware
  - [ ] Software: File Integrity
  - [ ] Software: Security Frameworks
------------------------------------

[+] Performing test in category: Boot and services
------------------------------------
  - Service manager: systemd
  - Checked: systemd boot targets
  - Checked: active systemd services
  - Result: found 7 services in state 'enabled'

Interpretando los Resultados de Lynis

Una vez que Lynis termina de analizar el sistema, genera un informe detallado. Al final del informe, verás un resumen que incluye un puntaje de seguridad, una lista de advertencias y recomendaciones.

Por ejemplo, podrías ver algo como esto:


[+] System audit is done.

  Lynis security scan details:
  ----------------------------
  Hardening index        : 71 [##############       ]
  Test and install modules from https://cisofy.com to improve hardening index.
  Report data            : /var/log/lynis.log
  Report file            : /var/log/lynis-report.dat

  Suggestions (11):
  ----------------------------
  - Enable process accounting [test: ACCOUNT-9212]
  - Harden the sysctl.conf file [test: KERNEL-6000]
  - Install a file integrity tool to monitor changes [test: FILE-6352]

Aquí, el Hardening index es un puntaje que refleja la fortaleza general de la configuración de seguridad del sistema. Cuanto más alto sea este número, más seguro es el sistema. Las “Suggestions” son recomendaciones específicas que Lynis ha identificado y que deberían abordarse para mejorar la seguridad del sistema.

Importancia de Mantener Lynis Actualizado

Las vulnerabilidades en los sistemas cambian y evolucionan con el tiempo, por lo que es crucial mantener Lynis actualizado para asegurarte de que esté al tanto de las últimas amenazas. Regularmente, se lanzan actualizaciones que incluyen nuevas pruebas, mejoras en la detección de vulnerabilidades y ajustes en las recomendaciones.

Puedes verificar si hay actualizaciones disponibles para Lynis ejecutando:

sudo lynis update info

Esto asegura que siempre estés utilizando la versión más reciente y efectiva de la herramienta.

Conclusión

Lynis es una herramienta invaluable para cualquier administrador de sistemas o profesional de la seguridad que quiera asegurarse de que sus sistemas Unix y Linux estén bien protegidos. Su capacidad para realizar auditorías exhaustivas y proporcionar recomendaciones detalladas hace que sea un componente esencial de una estrategia de seguridad robusta.

Sin embargo, como con cualquier herramienta, es importante interpretar los resultados con cuidado y no depender únicamente de Lynis para la seguridad de tu sistema. Úsalo como parte de un enfoque de defensa en profundidad, complementándolo con otras herramientas y prácticas de seguridad.

Happy coding! :D


Photo by Kutan Ural on Unsplash

Written with StackEdit.

Jack Fiallos

Jack Fiallos

Te gustó este artículo?