Hace unas semanas hablaba sobre una herramienta que permite identificar si faltan paquetes de actualización en sistemas con
Microsoft Windows. Este tipo de herramientas, como la citada
Windows Exploit Suggester, pueden ayudar, y mucho, en la comprobación del nivel de actualización de nuestros servidores y equipos cliente en la empresa. Además, esta herramienta en concreto era capaz de darnos información sobre
exploits públicos disponibles, e incluso nos informaba de la existencia de algún módulo de
Metasploit disponible que se aprovechara de la falta de un paquete de actualización.
|
Figura 1: Lynis, audita y fortificar servidores GNU/Linux |
Hoy vamos a hablar de otra herramienta que sirve para auditar sistemas, en este caso
fortificar GNU/Linux. La herramienta se denomina
Lynis y permite realizar auditoria de seguridad y fortificación de los sistemas basados en
Unix.
Lynis realiza un escaneo profundo sobre el sistema en el que se lanza, aunque juntándola con
SSH podríamos lanzarla de forma sencilla en otros servidores de la organización. El objetivo de
Lynis es detectar fallos de seguridad y errores de configuración o debilidades en el propio sistema. Estos resultados se utilizarán para fortificar a posteriori el sistema. El reporte que proporciona la herramienta ayudará a la toma de decisiones que habrá que tomar para la
fortificación o hardening de los servidores GNU/Linux.
La herramienta también escanea de forma general el sistema detectando la falta de software actualizado o la existencia de paquetes de software vulnerables y los errores de configuración en la máquina.
Lynis es utilizado por el blue team de una empresa, para mejorar las defensas de los servidores. Además, la herramienta proporciona una forma automatizada de auditar el servidor en modo caja blanca, realizar o llevar a cabo test de compliance, cumplimiento de
PCI-DSS,
HIPAA, etcétera, y detectar vulnerabilidades conocidas y debilidades.
¿Qué es lo que podemos sacar?
Descargarse
Lynis es sencillo, podemos bajarlo de
Github con la instrucción
git clone
https://github.com/CISOfy/lynis.git. Tal y como se puede ver en la imagen se obtienen diversos archivos, pero su ejecución es rápida y sencilla
./lynis –help.
|
Figura 2: Estructura de ficheros de Lynis |
Lynis ofrece multitud de opciones para ser ejecutado. Una de las que llaman la atención es la posibilidad de auditar un
dockerfile, es decir, un contenedor que tiene todas las dependencias de una aplicación en un formato estandarizado. Su ejecución en modo audit es sencilla. Debemos ejecutar la instrucción
./lynis audit system y la herramienta comenzará a realizar diferentes tests. Cada test está implementado en un
plugin, los cuales pueden ser enumerados en la carpeta
plugins, una vez descargado
Lynis versión
Enterprise.
|
Figura 3: Lanzamiento de auditoría de un servidor |
Por cada tramo de evaluación que hace la herramienta, ésta se detendrá para que podamos evaluar lo que se nos presenta en pantalla. Lanzando
Lynis sobre una
Kali Linux 2.0 lo primero que se nos proporciona es información sobre el sistema operativo. El uso de los
plugins puede ser muy interesante, ya que se añade más información, aunque para ello debamos utilizar la versión
Enterprise.
Lynis lanzará pruebas sobre los siguientes elementos y nos irá mostrando por pantalla los resultados parciales que va detectando:
• Boot y servicios.
• Evaluación de la configuración del kernel.
• Comprobación de memoria y procesos.
• Configuración de las políticas de usuarios, grupos y métodos de autenticación.
• Shells.
• Evaluación del sistema de archivos.
• Almacenamiento.
• Ports & Packages.
• Networking.
• Configuración del software: servidor web, SSH, SNMP, motores de base de datos, PHP, configuración del logging de la máquina, etcétera.
• Evaluación de los valores que fortifican el kernel.
• Por último, resultados.
En la siguiente imagen vemos cómo se lanza una serie de pruebas sobre los elementos de
boot y los servicios y la herramienta nos proporciona rápidamente los resultados. Se detecta, por ejemplo, que el
GRUB no está protegido con contraseña, por lo que cualquier usuario con acceso físico a la máquina podría editarlo y conseguir una
shell como
root de forma sencilla.
|
Figura 5: Resultados de auditoría del boot y los servicios |
En la siguiente imagen se puede ver los test que se pasan a la política y configuración de usuarios, grupos y los métodos de autenticación. El color amarillo nos indica qué hay cosas que son mejorables, y serán tomadas en cuenta por
Lynis en el reporte final, dónde nos entregarán una puntuación y nos recopilarán todos los fallos que deben ser resueltos.
|
Figura 6: Resultados de auditoría de usuarios, grupos y sistemas de autenticación |
Por último, se presentan los resultados y la evaluación mediante un número que indica el nivel de fortificación de la máquina.
|
Figura 7: Resumen sumario de la auditoría |
Además, se hace un recopilatorio de los tests realizados y los plugins habilitados. Además, la herramienta nos realiza una serie de sugerencias para mejorar el
hardening de la máquina, lo cual es realmente interesante.
|
Figura 8: Recomendaciones extras de fortificación |
Lynis es una herramienta muy útil para hacer
hardening de los sistemas GNU/Linux y para poder evaluar su nivel de seguridad actual. Cómo mencioné anteriormente, es una herramienta con la que deben contar todos los
Blue Teams para poder tomar decisiones con las que se mejore la seguridad de la empresa.
Autor: Pablo González Pérez (@pablogonzalezpe)
Escritor de los libros "Metasploit para Pentesters", "Ethical Hacking" y “Pentesting con Powershell”
6 comentarios:
Ya tengo juguete para el finde y mas alla!!! ñ.ñ gracias por la info Pablo!
Saludos!
Muy bueno pero yo cree la propia no es nada dificil hacer un shell bash scripting para esto !
Comparte!a manuel
lastAudit permite realizar auditoria de un sistema operativo Windows. Saludos :)
Manuel, si dices que tienes una propia, compártela con todos. De lo contrario pensaría que eres un hablador.
Publicar un comentario