免责申明
- 该软件是为自动渗透测试和信息收集而创建的。贡献者对任何非法使用概不负责。
Nettacker是一款集渗透测试、开源漏洞扫描和漏洞管理于一身的自动化工具,该工具全称为OWASP Nettacker,旨在以自动化的形式执行信息收集、渗透测试和漏洞扫描等安全任务,并自动生成最终的安全分析报告。报告内容包括目标应用程序的服务、错误、漏洞、错误配置和其他信息。
Nettacker支持利用TCP SYN、ACK、ICMP和许多其他协议来检测和绕过防火墙/IDS/IPS设备。广大研究人员可以通过利用OWASP Nettacker中的独特方法来发现受保护的服务和设备,如SCADA。与其他扫描工具相比,它更具有竞争优势,也是红队和蓝队研究人员的最佳扫描工具之一。
功能介绍
1、Python多线程和多进程网络信息收集漏洞扫描;
2、服务和设备检测(SCADA、受限区域、路由器、HTTP服务器、登录和验证、无索引HTTP、Paradox系统、摄像头、防火墙、UTM、WebMails、VPN、RDP、SSH、FTP、TELNET服务、代理服务器和许多设备,如Juniper、Cisco、交换机等…);
3、资产发现和网络服务分析;
4、服务爆破测试;
5、服务漏洞测试;
6、HTTP/HTTPS爬虫、模糊测试、信息收集;
7、提供了API接口;
8、有好的图形化用户界面GUI;
工具依赖
libcurl4-openssl-dev
libcurl4-gnutls-dev
librtmp-dev
libssl-dev
python3-dev
libpq-dev (如果你想使用PostgreSQL数据库的话)
libffi-dev
musl-dev
make
gcc
git
在使用本软件之前,请按照以下步骤安装要求:
首先安装 Python 3:
apt-get update
apt-get install -y python3 python3-dev python3-pip
pip3 install --upgrade pip3
安装要求。
apt-get update
apt-get install -y < requirements-apt-get.txt
pip3 install --upgrade pip
pip3 install -r requirements.txt
pip3 install -r requirements-dev.txt
请注意:运行Nettacker v.3.9.2需要Python 0.0.3或更高版本。您可以通过运行以下命令检查安装的 Python3 版本:
python3 -V
如果你有Python v3.9.2或更高版本,你应该能够通过命令运行OWASP Nettacker。python3 nettacker.py
使用 docker 让您的生活更轻松
要运行 API 服务器,只需运行 .如果需要通过命令行运行,请使用以下命令。docker-compose up
docker-compose up -d && docker exec -it nettacker_nettacker_1 /bin/bash
工具安装&下载
首先,我们需要在本地设备上安装并配置好Python 3环境。接下来,广大研究人员可以使用下列命令将该项目源码克隆至本地:
git clone https://github.com/OWASP/Nettacker.git
运行下列命令安装Python 3及其工具所需的依赖组件:
apt-get update apt-get install -y python3 python3-dev python3-pip pip3 install --upgrade pip3 apt-get update apt-get install -y < requirements-apt-get.txt pip3 install --upgrade pip pip3 install -r requirements.txt pip3 install -r requirements-dev.txt
工具运行
$ docker-compose up -d && docker exec -it nettacker_nettacker_1 /bin/bash
# python nettacker.py -i owasp.org -s -m port_scan
1、我们可以在浏览器中访问https://localhost:5000或https://nettacker-api.z3r0d4y.com:5000来查看扫描结果;
2、本地数据库文件路径为.data/nettacker.db(sqlite);
3、默认结果存储路径为.data/results;
4、docker-compose将共享你的Nettacker目录,因此在运行了docker-compose down之后将丢失所有数据;
5、如需查看API密钥,可以直接运行命令:docker logs nettacker_nettacker_1;
工具使用样例
下列命令可以从列表文件中读取目标,或逐个读取以逗号分隔的目标:
python nettacker.py -i 192.168.1.1,192.168.1.2-192.168.1.10,127.0.0.1,owasp.org,192.168.2.1/24 -m port_scan -g 20-100 -t 10 python nettacker.py -l targets.txt -m all -x port_scan -g 20-100 -t 5 -u root -p 123456,654321,123123 python nettacker.py -i 192.168.1.1/24 -m port_scan -t 10 -M 35 -g 20-100 --graph d3_tree_v2_graph -o result.html python nettacker.py -i 192.168.1.1/24 -m port_scan -t 10 -M 35 -g 20-100 -o file.html --graph jit_circle_v1_graph python nettacker.py -i 192.168.1.1/24 -m all -t 10 -M 35 -g 20-100 -o result.json -u root,user -P passwords.txt python nettacker.py -i 192.168.1.1/24 -m all -x ssh_brute -t 10 -M 35 -g 20-100 -o file.txt -U users.txt -P passwords.txt -T 3 -w 2
配合Whatcms扫描(需要API密钥):
python nettacker.py -i eng.uber.com -m whatcms_scan --method-args whatcms_api_key=XXXX
搜索CVE 2020-5902漏洞:
python nettacker.py -i <CIDR/IP/Domain> -m f5_cve_2020_5902 python nettacker.py -l <List of IP/CIDR/Domain> -m f5_cve_2020_5902 python nettacker.py -i <CIDR/IP/Domain> -m f5_cve_2020_5902 -s
进行子域名扫描:
python nettacker.py -i owasp.org -s -m port_scan -t 10 -M 35 -g 20-100 --graph d3_tree_v2_graph
自动扫描IP地址范围(从在线RIPE数据库读取):
python nettacker.py -i owasp.org -s -r -m port_scan -t 10 -M 35 -g 20-100 --graph d3_tree_v2_graph python nettacker.py -i nettackerwebsiteblabla.com,owasp.org,192.168.1.1 -s -r -m all -t 10 -M 35 -g 20-100 -o file.txt -u root,user -P passwords.txt
针对带外数据使用SOCKS代理(SOCKS v5):
python nettacker.py -i 192.168.1.1 -m tcp_connect_port_scan -T 5 --socks-proxy socks://127.0.0.1:9050 python nettacker.py -i 192.168.1.1 -m tcp_connect_port_scan -T 5 --socks-proxy socks4://127.0.0.1:9050 python nettacker.py -i 192.168.1.1 -m tcp_connect_port_scan -T 5 --socks-proxy socks5://127.0.0.1:9050 python nettacker.py -i 192.168.1.1 -m tcp_connect_port_scan -T 5 --socks-proxy socks://username:password@127.0.0.1:9050 python nettacker.py -i 192.168.1.1 -m tcp_connect_port_scan -T 5 --socks-proxy socks4://username:password@127.0.0.1:9050 python nettacker.py -i 192.168.1.1 -m tcp_connect_port_scan -T 5 --socks-proxy socks5://username:password@127.0.0.1:9050
项目地址
Nettacker:【GitHub传送门】