Herramientas Open Source para aplicar en ciberseguridad
Descubre siete herramientas de código abierto que automatizan tareas o procesos para que profesionales, novatos y curiosos de la ciberseguridad optimicen su tiempo en las actividades del día a día.
En el mundo del ciberespacio existe software que busca ser accesible para todo tipo de público, es decir, que el usuario pueda utilizarlo, modificarlo, adaptarlo y distribuirlo para aquello que considere conveniente, sin necesidad de contar algún permiso especial o licencia; a esto se le denomina una herramienta Open Source (Código Abierto por su traducción del inglés).
¿Qué es lo que hace tan valioso a una herramienta Open Source?
Este tipo de herramientas basan su desarrollo en modelos descentralizados y colaborativos, así su dependencia y mejora continua está ligada siempre a la retroalimentación de la comunidad, y no forzosamente a una empresa.
Muchas de estas herramientas pueden ser localizadas en GitHub, en donde miles de usuarios acceden a los repositorios o código fuente y realizan aportes para la mejora de estos proyectos.
Su contraparte son las herramientas propietarias o también llamadas de código cerrado, que están legalmente protegidas por la empresa u organismo que las desarrolla, y limitan su acceso y modificación solo a propietarios del código fuente. Para que el usuario final pueda disponer de estas herramientas tiene que pagar por su uso a través de una suscripción o licencia, pero no tiene la autorización de modificarlas para usos nuevos ni compartirlas con terceros.
¿Existen herramientas Open Source para la ciberseguridad?
Es bastante amplia la variedad de herramientas a las cuales se puede acceder, a continuación, se enlistarán algunas que le pueden ser útiles a cualquier entusiasta de la ciberseguridad:
Noir
Es un detector de superficie de ataque Open Source.
- Es multilenguaje y hace uso de varios frameworks que van desde Python, Ruby, JavaScript hasta Django, Spring, Express respectivamente.
- Actualmente, su implementación es solo para sistemas macOS y basados en Linux.
- 1. Puede asignarse automáticamente el lenguaje y el framework del código fuente.
- 2. Localiza el API de Endpoints y páginas web mediante análisis de código.
- 3. Las salidas que arroja son de datos estructurados como JSON y HAR permitiendo una interacción con otras herramientas.
- 4. También maneja formatos de salida tales como texto plano, JSON, curl y httpie.
- Para más detalles puede visitar su repositorio.
Ejemplo de una consulta realizada con Noir. Fuente: GitHub.
Associated-Threat-Analyzer
Identifica direcciones IPv4 maliciosas y nombres de dominio asociados con su aplicación web mediante dominios maliciosos locales y listas de IPv4 mediante línea de comandos.
- Solo está disponible para sistemas basados en Linux.
- Su uso es sencillo a través de línea de comandos y se respalda de otros proyectos Open Source para su funcionamiento.
- Se encuentra en su versión 1.0 y puede visitar su repositorio en este enlace.
Imagen 2: Captura de pantalla obtenida del repositorio oficial de Associated-Threat-Analyzer. Fuente: GitHub.
DNSWatch
Esta herramienta en Python permite rastrear y analizar el tráfico DNS (Sistema de nombres de dominio) en una red determinada. Escucha las solicitudes y respuestas de DNS y proporciona información sobre la actividad de este.
- Solo está disponible para sistemas basados en Linux.
- Entre sus características más relevantes son la inspección detalla de los paquetes que son analizados y el filtrado personalizado de DNS para la IP destino.
- El desarrollador indica que la finalidad de la herramienta está destinada con fines educativos y de evaluación, por lo que se deslinda de cualquier actividad maliciosa que se pueda realizar con ella.
Imagen 3: Captura de pantalla obtenida del repositorio oficial de DNSWatch. Fuente: GitHub.
Holehe OSINT
En el ámbito de la ciberinteligencia se encuentra esta herramienta, que comprueba si un correo electrónico es verdadero, y todo lo vinculado con él, en más de 120 plataformas, entre las cuales destacan X (ex Twitter), Instagram, Amazon entre otros.
- Cuenta con una versión online.
- De los sitios que tiene registrados hay un límite de consultas, por lo que sugiere el desarrollador cambiar de red o conectarse a una VPN.
- En el siguiente ejemplo se hizo una prueba de concepto con un teléfono de soporte de Guatemala:
Imagen 4: Versión online de Holehe. Fuente: OSINT INDUSTRIES.
Bryobio
Permite optimizar el análisis de captura de red (PCAP) para personal del SOC.
- Su uso es a través de línea de comandos.
- Trabaja en sistemas operativos Linux, probados principalmente en Debian y Ubuntu.
- Entre sus funciones más destacadas están la obtención de correos electrónicos, los puertos más usados y detalles de conexión.
Imagen 5: Captura de pantalla obtenida del repositorio oficial de Bryobio. Fuente: GitHub.
Bashfuscator
Es un framework de ofuscación de Bash modular y extensible programado en Python. Facilita la generación de comandos y scripts Bash altamente ofuscados.
- Está pensado para que el equipo Red Team determine la capacidad de evasión que un ciberatacante pueda llegar a obtener si las soluciones implementadas en las organizaciones no detectan de comandos ofuscados en Bash para sistemas operativos Linux.
- En cuanto al equipo de Blue Team, le permitiría generar nuevas políticas de detección de amenazas a partir de las pruebas realizadas por el Red Team.
Imagen 6: Captura de pantalla obtenida del repositorio oficial de Bashfuscator. Fuente: GitHub.
MsLDAPDump
Simplifica la enumeración LDAP en un entorno de dominio al empaquetar la biblioteca lpap3 de Python en una interfaz de PowerShell.
- Entre sus funciones está la exploración de subred para sistemas con los puertos 389 y 636 abiertos, información básica del dominio como permisos actuales de usuario, SID de dominio, política de contraseñas, entre otros.
- Actualmente, tiene errores en sistemas Unix por lo que su versión estable solo es en Windows.
Imagen 7: Ejemplo de la conexión anónima a través de msLDAPDump. Fuente: GitHub.
La importancia de las herramientas Open Source en la ciberseguridad
En el ámbito de la ciberseguridad, las herramientas de código abierto permiten a los profesionales y comunidades utilizarlas, modificarlas, adaptarlas y distribuirlas de acuerdo con sus necesidades, sin dejar de mencionar que, al estar al alcance de todo el público, cualquier vulnerabilidad u optimización del código puede ser identificada y corregida rápidamente. Así que su importancia es clave para promover la innovación y automatización de tareas o procesos de ciberseguridad.