Export Nessus in a Database copy
Export Nessus in a Database copy
¿Cómo exportar los escaneos de Nessus en una Base de Datos?
23 Apr 2021
Previos
Esto no se trata de una guía oficial, es algo que nos ha funcionado y esperamos que sea de utilidad. Run it at your own risk
Luego de instalar y configurar nuestro Tenable Nessus, parte de las configuraciones de seguridad que debemos realizar es habilitar de manera segura el acceso vía la plataforma web, esto lo conseguimos configurando nuestros certificados confiables y Tenable Nessus no muestre el error de Certificados ya conocido.
Estamos asumiendo que Nessus Professional está instalado sobre un Sistema Operativo Linux, sin embargo sería una lógica similar para un Sistema Operativo basado en Windows. Tambien se asume que ya tienes configurado el dominio o subdominio para que resuelva a la dirección IP donde se tiene instalado Tenable Nessus.
Instalar Script de GitHub
En este caso, descargaremos el siguiente repositorio de GitHub Link del Repositorio y seguimos las instruccion de la instalacion.
Generamos las API Key de Nessus
En caso no contemos con la API Key en Nessus, las volvemos a generar y las guardamos para utilizarlas luego. Recordar que si ya se encuentra usando esta API Key en otra aplicacion y volvemos a generarla, deberas importar esta nueva API Key en tu aplicacion
Configurando nuestro MySQL
Primero debemos levantar nuestro servicio de MySQL
sudo service mysql start
Ingresaremos a nuestro MySQL y luego configuraremos la contraseña a nuestro usuario, en este caso usaremos el mismo root.
mysql -u root -p
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NuevaPassword';
FLUSH PRIVILEGES;
Configuracion del Script de Github
Cambiaremos la configuracion del config.ini.example a config.ini y lo editaremos hasta que tenga el siguiente formato:
Colocamos nuestra Access Key y nuestra Secret Key generados en Nessus, tambien colocamos muestro usuario de MySQL y la contraseña configurada previamente.
Ademas ingresamos al MySQL y generamos las base de datos necesaria. El archivo schema.sql se encuentra en la carpeta del repositorio, en caso MySQL no lo encuentre es porque no se encuentra en la misma carpeta del archivo, en ese caso colocar la ruta absoluta del archivo.
mysql -u root -p
source schema.sql;
Ejecutamos el Script
Ejecutaremos el script, lo que hara sera ejecutar cada uno de nuestros scans que se encuentran en nuestros folders.
El script EJECUTARÁ TODOS los escaneos que encuentre en las carpetas, tomar las previciones del caso antes de ejecutarlo.
Luego de finalizado el script, se podra revisar los resultados de todos los escaneos en nuestro MySQL
Verificamos la base de datos
Ingresaremos a MySQL con nuestro usuario y haremos unas consultas para verificar que esten nuestros escaneos.
Verificamos que esten nuestros reportes.
SELECT * FROM nessusdb.scan;
Hacemos un conteo rapido para saber que si se logro la ejecucion del script correctamente y se obtuvieron varias vulnerabilidades
SELECT COUNT(host_vuln_id) FROM nessusdb.vuln_output;
* * *
Si se desea se podria exportar la base de datos con el siguiente comando:
mysqldump -u [username] -p [database name] > [database name].sql
Con la base de datos exportada ya se puede trabajar en nuestra maquina personal si asi se desea, o compartirla entre los miembros de la empresa
think outside the box