¿Has oído hablar de OWASP? Bueno, estoy seguro de que lo has hecho y si no es así, si estás interesado en la seguridad de la información, tienes que conocerlo, ya que es la autoridad en todo lo relacionado con la seguridad de la información. Dicho esto, ¿sabías que tienen una herramienta llamada OWASP Nettacker?
El proyecto OWASP Nettacker ha sido creado para automatizar la recopilación de información (information gathering), el escaneo de vulnerabilidades y, finalmente, la generación de un informe para redes, incluyendo servicios, errores, vulnerabilidades, des-configuraciones y otra información.

Este software utilizará los protocolos TCP SYN, ACK, ICMP y muchos otros para detectar y evitar los dispositivos firewall/IDS/IPS. Aprovechando un método único en OWASP Nettacker para descubrir servicios y dispositivos protegidos como SCADA. Esto haría una ventaja competitiva en comparación con otros escáneres haciéndolo uno de los mejores.
Instalación de OWASP Nettacker
OWASP Nettacker es un proyecto basado en Python que ha sido probado en diferentes sistemas operativos incluyendo Linux, MacOS y Windows OS. El framework es compatible con las dos versiones de Python (2 y 3).
OWASP Nettacker depende de diferentes paquetes incluidos en el archivo requirements.txt
incluido en el directorio del código fuente del framework. Aparte de las dependencias incluidas en el archivo requirements.txt
, hay dos paquetes más que necesitan ser instalados antes de la instalación de OWASP Nettacker. Estos paquetes pueden ser instalados como sigue.
apt install libcurl4-openssl-dev libssl-dev
Después de instalar los paquetes (libcurl4-openssl-dev, libssl-dev), clona OWASP Nettacker desde Github. Navega hasta el directorio del framework y ejecuta los siguientes comandos para completar la instalación.
git clone https://github.com/zdresearch/OWASP-Nettacker.git
cd OWASP-Nettacker && pip3 install -r requirements.txt && pip3 install -r requirements-dev.txt

python3 nettacker.py

Haz tu vida más fácil usando docker
Para ejecutar el servidor de la API, basta con ejecutar docker-compose up
. si necesitas ejecutarlo a través de la línea de comandos, utiliza los siguientes comandos.
$ docker-compose up -d && docker exec -it nettacker_nettacker_1 /bin/bash
# python nettacker.py -i owasp.org -s -m port_scan
¿Cómo funciona OWASP Nettacker?
El siguiente comando de ayuda muestra todas las opciones y parámetros necesarios para iniciar el proceso de escaneo.
python nettacker.py --help
La función de idioma en OWASP Nettacker permite escanear en cualquiera de los 21 idiomas disponibles. Podemos cambiar el idioma utilizando el siguiente comando.
python nettacker.py –L <Código de idioma preferido>

OWASP Nettacker tiene la flexibilidad de usar diferentes formatos de comando para escanear objetivos. El siguiente comando muestra los parámetros obligatorios (i
, L
, m
) requeridos para iniciar el proceso de escaneo. Los parámetros opcionales pueden ser añadidos al comando para mejorar su funcionalidad.
python nettacker.py <-i | L > <Objetivos | Text File> <-m> <opción scan>
# python nettacker.py -i owasp.org -s -m port_scan
La i
y la L
representan dos formatos diferentes de selección de objetivos. La opción i
se utiliza cuando los objetivos se proporcionan a través de la línea de comandos. El parámetro L
se utiliza cuando proporcionamos los objetivos a través de un archivo de texto. El parámetro -m
representa diferentes ataques/opciones de escaneo soportadas por el framework.
El siguiente ejemplo muestra algunas de las formas en que podemos utilizar OWASP Nettacker para la recopilación de información y la evaluación de las vulnerabilidades en los hosts objetivo.
- Ejemplo de escaneo de puertos: Podemos encontrar información de puertos abiertos y protocolos soportados usando el siguiente comando.
python3 nettacker.py -i webscantest.com -m port_scan -g 20-100 -t 10
El parámetro -g
en el comando anterior representa los puertos y -t
muestra el número permitido de hilos para conectarse con el host. Los resultados del escaneo se muestran en la pantalla de la consola y se exportan en formato HTML en la carpeta .data
.

OWASP Nettacker también almacena el resultado en un archivo HTML y en una carpeta de base de datos ubicada en el directorio del framework.
- Ejemplo de descubrimiento de subdominios: El siguiente comando explora todos los subdominios disponibles vinculados con el host de destino.
python3 nettacker.py -i vulnweb.com -m subdomain_scan -g 20-100 -t 10
- Opción de escaneo todo en uno: OWASP Nettacker tiene la opción de ejecutar todos los módulos de escaneo en un solo comando.
python3 nettacker.py -i testphp.vulnweb.com -m all -t 10 -M 35 -g 20-100 --graph d3_tree_v2_graph
El comando anterior ejecuta todos los módulos disponibles en el host de destino (testphp.vulnweb.com) para recopilar información del host y listar todas las vulnerabilidades descubiertas por la herramienta.
Puedes probar con otros ejemplos sitios webs vulnerables. Para conocer más, lee el TOP Sitios Web Vulnerables para Pruebas de Penetración.
Puedes encontrar más ejemplos de uso, aquí:
https://github.com/OWASP/Nettacker/wiki/Usage
Resumen
OWASP Nettacker es una herramienta de pruebas de penetración decente con algunas características interesantes como la representación gráfica de los resultados y la generación de informes de pruebas de penetración.
- Los resultados son accesibles desde (https://localhost:5000) o https://nettacker-api.z3r0d4y.com:5000/ (apuntando al localhost)
- La base de datos local es
.data/nettacker.db
(sqlite). - La ruta de resultados por defecto es
.data/results
docker-compose
compartirá tu carpeta de nettacker, así que no perderás ningún dato después dedocker-compose down
- Para ver la clave de la API puedes ejecutar
docker logs nettacker_nettacker_1
. - Más detalles y configuración sin docker https://github.com/OWASP/Nettacker/wiki/Installation
https://github.com/OWASP/Nettacker