web敏感资产fuzz

简介

背景

有网友反馈信息收集的脚本有bug,debug下

实现核心思想

尽可能的考虑每一种情况 | 处理每一个异常并捕获 | 每个变量初始化 | 随机无序验证

主要是两种功能的实现:

  • 快速探测不扫描
  • 敏感资产扫描

基于py2.7

考虑到一些网站证书的问题:pip install requests[security]

Download plugins portscan.py: http://www.cnnetarmy.com/soft/portscan.py

程序使用

webscan not scanDir 快速探测:python webmain.py -f vuln_domains.txt

webscan Portscan && scanDir 敏感资产扫描:python webmain.py -d vuln_domains.txt

结果保存到:vuln_domains_datetime.html

目标站点信息收集(-F)

目的:不触发waf的情况下,收集目标站点信息

report函数

扫描报告生成,使用%flag%_日期.html命名

requests_headers函数

使用random模块,实现随机User-Agent请求
更改‘Change Me !!!’为登录后的cookie,可实现带cookie请求扫,适合单点登录的情况

requests_proxies函数

请求代理配置,默认关闭,如果用到程序的辅助函数查旁站,配置扶墙,直接开启127.0.0.1:1080,见注释
注释中的另外一个127.0.0.1:8080,用途是让程序走本地BurpSuite,方便某些请求响应的分析

url2ip函数

把url转换成ip,该函数遵循程序核心思想

portscan函数

加载portscan.py,进行全端口扫描

getitle函数

获取网站标题,并且返回标题,状态码,页面大小

checkFast函数

快速探测主函数,实现url转ip后,进行全端口扫描,并且对每一个开放的端口进行getitle信息探测,小细节是加了个filter_ports,过滤掉常规端口

考虑到一种情况,多个url解析到一个ip上,程序加了filter_ips过滤已经扫描过全端口的ip

程序还考虑到了一种情况,即:当url传过来的是alive,而且没有扫描出开放的端口,程序会自动探测80端口的信息,效果如图:

debug日志:

 

目标站点敏感信息扫描(-D)

目的:加入端口扫描和敏感文件,目录扫描

base64str函数

返回随机字符串,用于判断404页面,该函数实现程序核心思想中的随机无序验证

getMonth函数

生成前一个月的备份文件,格式仅生成最常见的20180101[.zip|..],用于敏感备份文件扫描,具体扫描多少天,可以按需更改

dirscan函数

敏感目录扫描主函数,附上常用探测payloads集合,加上生成的日期备份文件,程序会先判断404页面的状态,然后对payloads进行遍历探测

判断条件是返回200,且返回内容大小不等于0,且payload与404界面的返回大小差的绝对值大于5(或者直接两者返回大小不相等)

附加判断条件是,如果碰到waf,或者各种非预期的情况,导致跑的payloads返回大于40,这种情况程序会提示有可能碰到waf,并且返回空

checkDir函数

针对扫描出来的开放端口,进行fuzz探测,类似快速探测函数,只是增加了敏感文件、目录扫描模块,效果如图:

debug日志:

辅助函数

这些在扫描器中抠出来的可能用到的模块

getallink函数

爬取网页中的超链接

email匹配函数

匹配返回页面中可能存在的email

url匹配函数

匹配返回页面中存在的url

ip匹配函数

匹配返回页面中可能存在的ip

C段生成函数

生成C段ip地址池

SameIpDomain(旁站)函数

查询同ip站点,需要使用proxies配合ss使用

whois函数

依赖whois模块,查询域名注册信息

ipaddr函数

获取ip的真实地址,使用taobao 接口

baidu_site函数

site:cnnetarmy.com,获取子域名列表

whatcms函数

whatweb.bugscaner.com接口

代码下载

无报错模式:http://www.cnnetarmy.com/soft/webmain.py

debug模式:http://www.cnnetarmy.com/soft/webmain_debug.py

portscan:http://www.cnnetarmy.com/soft/portscan.py

直接ctrl+s保存即可

Debug

反馈qq:2069698797