FuzzScanner:一个信息搜集工具,子域名/端口/指纹/C段/敏感信息等
- 发表于
- 安全工具
FuzzScanner
一个用来进行信息搜集的工具集,主要是用于对网站子域名、开放端口、端口指纹、C段地址、敏感目录、链接爬取等信息进行批量搜集。
开发初衷比较简单,当时正在参加一些攻防演练,需要快速的对目标网站进行子域名发现、端口扫描、目录扫描等,手头上有一些分散的工具,比如lijiejie的subdomains、子域名挖掘机、dirsearch等等,但当目标任务量比较大时,这些重复性的工作就会比较费时费力,所以就有了这么个集合十八种杀人武器于一身的“超级武器”——fuzzScanner。
该工具很多功能的实现都是直接命令行调用的其他工具,再次非常感谢wydomain、WhatWeb、subDomainsBrute、dirsearch、wafw00f等开源平台。
FuzzScanner主要功能
子域名枚举
当输入目标站点域名后,会使用以下4种方式进行子域名的枚举。
- 百度链接爬取,会使用site:xxx.com为关键字爬取所有子域名;
- 网站友链爬取,会对自身3层链接目录进行爬取,搜集子域名;
- 本利想对chaxunla、aizhan之类的子域名查询接口进行查询,后来发现猪猪侠的wydomain已经实现了这个功能,就直接调用了wydomain;
- 使用了subdomains进行子域名的暴力枚举
端口扫描
端口扫描和指纹获取主要依赖于nmap。
- 首先根据参数设置情况判断是全端口扫描还是部分端口扫描;
- 如果扫描目标是网站地址,会根据目标开放的端口进行指纹获取,如果某端口服务为web服务,还会继续进行web指纹的获取;
- 如果扫描目标是ip地址或地址段,会先试用pynamp进行存活主机判断,然后使用socket端口探测的方式探测存活主机,然后再使用nmap进行端口的扫描和指纹的获取。
指纹识别
主要调用了whatweb、wafw00f、whatcms等进行了web指纹识别。
- 当扫描web地址或探测到某端口为web服务时,会使用whatweb探测该站点信息,提取关键字段;
- 使用了wafw00f来探测是否存在waf,这样对有waf的不太好啃的站点可以暂时放弃;
- 对web站点进行了目录枚举,可能直接发行管理后台地址或备份文件等;
其他功能
在一些c段主机扫描、目录枚举、可能存在的威胁页面等方面进行了判断。
- 在扫描子域名时会解析其ip地址,并把改ip地址作为目标系统的C段地址,如设置了c段扫描的参数时会自动扫描其c段地址;
- 当扫描web地址或探测到某端口为web服务时,会自动进行了web指纹探测,并调用dirsearch进行目录枚举;
- 在检测到端口或Url地址中存在可能的漏洞点时,会输出到vulnerable.txt,比如.action及其他一些动态页面时。
结果保存
由于这些扫描结果需要后续人工逐个测试,为了方便就直接保存了txt,未保存数据库。
扫描完成后的结果保存log目录,最主要的就是该站点log根目录下的几个txt文档,比如下图中的vipshop.com-sub_info.txt、vipshop.com-domain.txt、vipshop.com-c_ip.txt、vipshop.com-c_ip_info.txt等。
FuzzScanner安装与使用
下载安装
1 2 3 4 5 6 7 8 9 10 11 12 13 |
# 下载 $ git clone https://github.com/TideSec/FuzzScanner # 依赖 $ pip install -r requirements.txt # 安装ruby环境,以便运行whatweb sudo yum install ruby # CentOS, Fedora, 或 RHEL 系统 sudo apt-get install ruby-full # Debian 或 Ubuntu 系统 # 安装namp yum install nmap # CentOS, Fedora, 或 RHEL 系统 apt-get install nmap # Debian 或 Ubuntu 系统 |
使用
1 |
sudo python FuzzScanner.py |
使用比较简单,参数设置说明。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
python FuzzScanner.py -hc target.com --> domain && web finger && Dir scan && C scan 设置单个目标网站,子域名枚举 && web指纹识别 && 目录枚举 && C段扫描 python FuzzScanner.py -Hc vuln_domains.txt --> domain && web finger && Dir scan && C scan 从文件读取单个或多个目标网站,子域名枚举 && web指纹识别 && 目录枚举 && C段扫描 python FuzzScanner.py -hca target.com --> domain && web finger && Dir scan && C scan && C allport 设置单个目标网站,子域名枚举 && web指纹识别 && 目录枚举 && C段全端口扫描 python FuzzScanner.py -Hca vuln_domains.txt --> domain && web finger && Dir scan && C scan && C allport 从文件读取单个或多个目标网站,子域名枚举 && web指纹识别 && 目录枚举 && C段全端口扫描 python FuzzScanner.py -h target.com --> domain && web finger && Dir scan 设置单个目标网站,子域名枚举 && web指纹识别 && 目录枚举 python FuzzScanner.py -H vuln_domains.txt --> domain && web finger && Dir scan 从文件读取单个或多个目标网站,子域名枚举 && web指纹识别 && 目录枚举 python FuzzScanner.py -c 192.168.1.1 --> C scan 设置单个IP,进行C段地址探测 python FuzzScanner.py -cd 192.168.1.1 --> C scan && Dir scan 设置单个IP,进行C段地址探测并对web服务进行目录枚举 python FuzzScanner.py -C vuln_ip.txt --> C scan 从文件读取单个或多个目标IP地址,进行C段地址探测 python FuzzScanner.py -Cd vuln_ip.txt --> C scan && Dir scan 从文件读取单个或多个目标IP地址,进行C段地址探测并对web服务进行目录枚举 python FuzzScanner.py -ca 192.168.1.1 --> C scan && C allport 设置单个IP,进行C段地址探测和全端口扫描 python FuzzScanner.py -Ca vuln_ip.txt --> C scan && C allport 从文件读取单个或多个目标IP地址,进行C段地址探测和全端口扫描 |
原文连接:FuzzScanner:一个信息搜集工具,子域名/端口/指纹/C段/敏感信息等
所有媒体,可在保留署名、
原文连接
的情况下转载,若非则不得使用我方内容。