Introducción
En este laboratorio, aprenderá a gestionar e informar hallazgos utilizando Kali Linux con Git para el control de versiones y Dradis para la elaboración de informes estructurados. Inicializará un repositorio Git, importará resultados de muestra en Dradis, organizará los hallazgos por severidad y exportará un informe profesional. Estos pasos le ayudarán a desarrollar habilidades esenciales de ciberseguridad en un entorno controlado. Todas las operaciones se realizarán dentro de un contenedor Kali Linux, que se configura automáticamente para usted. Cuando abra la terminal, estará conectado directamente al shell del contenedor Kali Linux, listo para comenzar a practicar.
Configuración del Entorno e Instalación de Herramientas Requeridas
En este primer paso, configurará su entorno de trabajo dentro del contenedor Kali Linux e instalará las herramientas necesarias para el laboratorio. Cuando abra la terminal en el entorno de la máquina virtual (VM) de LabEx, se conectará automáticamente al shell del contenedor Kali Linux. No es necesario iniciar manualmente el contenedor ni entrar en el shell; el entorno ya está configurado para usted.
Comencemos actualizando la lista de paquetes e instalando herramientas esenciales como git para el control de versiones y otras utilidades que se utilizarán más adelante. Dado que estamos trabajando en un contenedor Kali Linux nuevo, necesitamos asegurarnos de que todo el software requerido esté instalado.
Ejecute los siguientes comandos en la terminal para actualizar la lista de paquetes e instalar git:
apt update
apt install -y git
El comando apt update actualiza la lista de paquetes de los repositorios configurados, asegurando que tenga la información más reciente sobre los paquetes disponibles. El comando apt install -y git instala git sin solicitar confirmación. Este proceso puede tardar unos segundos en completarse.
Salida Esperada (ejemplo, la salida real puede variar):
Hit:1 http://mirrors.cloud.aliyuncs.com/kali kali-rolling InRelease
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
...
Setting up git (1:2.39.2-1) ...
Esta salida indica que la lista de paquetes se ha actualizado y git se ha instalado correctamente. Con git instalado, está listo para inicializar un repositorio en el siguiente paso. Esta configuración fundamental asegura que todas las operaciones subsiguientes se puedan realizar sin problemas dentro del contenedor Kali Linux.
Inicialización de un Repositorio Git
Ahora que tiene git instalado en su contenedor Kali Linux, inicializará un repositorio Git para gestionar los archivos de su proyecto. Git es un sistema de control de versiones que ayuda a rastrear los cambios en sus archivos a lo largo del tiempo, facilitando la colaboración y el mantenimiento de diferentes versiones de su trabajo.
Ya se encuentra en el shell del contenedor Kali Linux, ya que la terminal lo conecta automáticamente al abrirse. De forma predeterminada, comienza en el directorio /root dentro del contenedor. Para mayor consistencia, creemos un directorio dedicado para nuestro proyecto en /root/project e inicialicemos el repositorio Git allí.
Ejecute los siguientes comandos para crear el directorio e inicializar un repositorio Git:
mkdir -p /root/project
cd /root/project
git init
El comando mkdir -p /root/project crea el directorio /root/project si aún no existe. El comando cd /root/project lo navega a este directorio. Finalmente, git init inicializa un nuevo repositorio Git en esta ubicación, creando una carpeta oculta .git para almacenar la información de control de versiones.
Salida Esperada para git init (ejemplo, la salida real puede variar):
Initialized empty Git repository in /root/project/.git/
Esta salida confirma que el repositorio Git se ha creado correctamente en el directorio /root/project. La inicialización de un repositorio Git es el primer paso en el control de versiones, lo que le permite rastrear los cambios en los archivos a medida que los agrega en pasos posteriores. En el siguiente paso, creará datos de muestra para simular la importación de resultados en Dradis, basándose en esta configuración del repositorio.
Creación de Resultados de Ejemplo para la Importación en Dradis
En este paso, creará datos de muestra para simular la importación de resultados en Dradis, una herramienta utilizada para la colaboración y la generación de informes en evaluaciones de seguridad. Dradis ayuda a centralizar los hallazgos de varias herramientas y a organizarlos para la elaboración de informes. Dado que configurar una instancia completa de Dradis dentro del contenedor Kali Linux es complejo, simularemos el proceso creando archivos de texto estructurados que representen los resultados del escaneo.
Ya está trabajando en el directorio /root/project dentro del contenedor Kali Linux. Creemos un subdirectorio llamado results para almacenar estos hallazgos de muestra y agreguemos un archivo de texto con datos simulados. Este paso se basa en el repositorio Git que inicializó anteriormente, lo que le permite rastrear estos archivos bajo control de versiones.
Ejecute los siguientes comandos para crear el directorio results y un archivo de muestra:
mkdir -p /root/project/results
nano /root/project/results/scan_results.txt
El comando mkdir -p /root/project/results crea el subdirectorio results dentro de su carpeta de proyecto. El comando nano /root/project/results/scan_results.txt abre el editor de texto nano para crear y editar un archivo llamado scan_results.txt en ese directorio.
En el editor nano, escriba el siguiente contenido para simular un resultado de escaneo básico:
Sample Scan Results
Vulnerability: Open Port 80
Severity: Medium
Description: HTTP service detected on port 80.
Para guardar y salir de nano, presione Ctrl+O, luego presione Enter para escribir el archivo y, finalmente, presione Ctrl+X para salir del editor.
Ahora, agregue este archivo a su repositorio Git para rastrearlo ejecutando:
cd /root/project
git add results/
git commit -m "Add sample scan results for Dradis import"
El comando git add results/ prepara el directorio results y su contenido para el control de versiones. El comando git commit -m "Add sample scan results for Dradis import" confirma los cambios con un mensaje descriptivo.
Salida Esperada para git commit (ejemplo, la salida real puede variar):
[master (root-commit) xxxxxx] Add sample scan results for Dradis import
1 file changed, 4 insertions(+)
create mode 100644 results/scan_results.txt
Esta salida confirma que el archivo de resultados de muestra se ha confirmado correctamente en su repositorio Git. Al crear y rastrear este archivo, está simulando el proceso de importación de datos en Dradis, que normalmente implica la carga de resultados de herramientas de seguridad. En el siguiente paso, organizará estos hallazgos en categorías, imitando cómo Dradis estructura los datos para la elaboración de informes.
Organización de Hallazgos por Severidad
Habiendo creado resultados de muestra en el paso anterior, ahora organizará estos hallazgos en categorías basadas en la severidad, simulando cómo Dradis estructura los datos para la elaboración de informes. En una configuración real de Dradis, categorizaría problemas como vulnerabilidades en grupos como críticos o medios dentro de una interfaz web. Aquí, imitaremos este proceso creando subdirectorios y archivos dentro de su directorio /root/project en el contenedor Kali Linux.
Creemos un directorio findings con dos subdirectorios, critical y medium, para representar diferentes niveles de severidad. Luego agregará archivos de hallazgos específicos a cada categoría y los rastreará usando Git.
Ejecute los siguientes comandos para crear la estructura de directorios:
mkdir -p /root/project/findings/critical
mkdir -p /root/project/findings/medium
Estos comandos crean el directorio findings con los subdirectorios critical y medium dentro de él. Ahora, agreguemos un hallazgo de muestra a la categoría critical creando un archivo de texto. Ejecute:
nano /root/project/findings/critical/critical_issue.txt
En el editor nano, escriba el siguiente contenido para representar un hallazgo crítico:
Critical Finding
Issue: Unencrypted Database Connection
Severity: Critical
Description: Database connection on port 3306 is not encrypted.
Recommendation: Enable TLS for database connections.
Guarde y salga de nano presionando Ctrl+O, luego Enter y finalmente Ctrl+X.
A continuación, agregue un hallazgo de muestra a la categoría medium ejecutando:
nano /root/project/findings/medium/medium_issue.txt
En el editor nano, escriba el siguiente contenido:
Medium Finding
Issue: Open HTTP Port
Severity: Medium
Description: HTTP service detected on port 80.
Recommendation: Redirect HTTP to HTTPS.
Guarde y salga de nano como antes. Ahora, confirme estos archivos en su repositorio Git ejecutando:
cd /root/project
git add findings/
git commit -m "Organize findings into critical and medium categories"
El comando git add findings/ prepara los nuevos archivos, y el comando git commit guarda los cambios con un mensaje.
Salida Esperada para git commit (ejemplo, la salida real puede variar):
[master xxxxxx] Organize findings into critical and medium categories
2 files changed, 10 insertions(+)
create mode 100644 findings/critical/critical_issue.txt
create mode 100644 findings/medium/medium_issue.txt
Esta salida confirma que los archivos que representan los hallazgos categorizados se han confirmado en su repositorio. La organización de los hallazgos por severidad es un paso clave en la preparación de informes estructurados, ya que ayuda a priorizar los problemas para su remediación. En el siguiente paso, simulará la exportación de estos hallazgos como un informe, basándose en la estructura que ha creado.
Simulación de la Exportación de un Informe de Dradis
En este paso final, simulará la exportación de un informe desde Dradis creando un archivo de texto consolidado que resume los hallazgos que ha organizado. En un escenario del mundo real, Dradis le permite exportar los hallazgos como un informe PDF formateado a través de su interfaz web. Debido a las limitaciones del entorno del contenedor Kali Linux, imitaremos este proceso creando manualmente un archivo de texto en el directorio /root/project que represente el contenido de dicho informe.
Creemos un directorio reports y un archivo de texto llamado dradis_report.txt para resumir los hallazgos. Ejecute los siguientes comandos para configurar el directorio y crear el archivo:
mkdir -p /root/project/reports
nano /root/project/reports/dradis_report.txt
El comando mkdir -p /root/project/reports crea un directorio reports para almacenar el informe simulado. El comando nano abre el editor para crear dradis_report.txt dentro de este directorio.
En el editor nano, escriba el siguiente contenido para resumir los hallazgos como si se exportaran desde Dradis:
Dradis Report - Security Assessment
Generated on: [Current Date]
1. Critical Findings
Issue: Unencrypted Database Connection
Severity: Critical
Description: Database connection on port 3306 is not encrypted.
Recommendation: Enable TLS for database connections.
2. Medium Findings
Issue: Open HTTP Port
Severity: Medium
Description: HTTP service detected on port 80.
Recommendation: Redirect HTTP to HTTPS.
Summary: This report consolidates findings from the security assessment for review and action.
Guarde y salga de nano presionando Ctrl+O, luego Enter y finalmente Ctrl+X. Ahora, confirme este archivo de informe en su repositorio Git ejecutando:
cd /root/project
git add reports/
git commit -m "Add simulated Dradis report file"
El comando git add reports/ prepara el archivo de informe, y el comando git commit guarda el cambio.
Salida Esperada para git commit (ejemplo, la salida real puede variar):
[master xxxxxx] Add simulated Dradis report file
1 file changed, 14 insertions(+)
create mode 100644 reports/dradis_report.txt
Esta salida confirma que el archivo de informe simulado se ha confirmado en su repositorio. La creación de este archivo simula el proceso de exportación de un informe estructurado desde Dradis, lo cual es una habilidad crítica para presentar los hallazgos a las partes interesadas en proyectos de ciberseguridad. Este paso completa el flujo de trabajo desde la inicialización de un repositorio Git hasta la producción de un informe final dentro del contenedor Kali Linux.
Resumen
En este laboratorio, ha aprendido a gestionar e informar hallazgos utilizando Kali Linux con Git para el control de versiones y Dradis para la elaboración de informes estructurados. Comenzó configurando su entorno e instalando las herramientas necesarias como Git dentro de un contenedor Kali Linux. Luego, inicializó un repositorio Git, creó resultados de muestra para simular la importación de datos en Dradis, organizó los hallazgos por severidad y, finalmente, simuló la exportación de un informe. Estos pasos proporcionaron una comprensión fundamental del control de versiones y la elaboración de informes estructurados, habilidades esenciales para los profesionales de la ciberseguridad que trabajan en entornos controlados.


