源海拾贝 | 花溪九尾 懒人必备web扫描器

平凡 暴力 强大 可自行扩展的缝合怪物

+-+-+-+-+-+-+-+-+-+-+-+
|H|X|n|i|n|e|T|a|i|l|s|
+-+-+-+-+-+-+-+-+-+-+-+

内容列表?

 

简介

python3实现的集成了github上多个扫描工具的命令行WEB扫描工具

目标是躺着挖洞

项目代码在最新版社区版xray1.7下检测无误

该项目中目前集成:crawlergo OneForAll subDomainsBrute Subfinder Sublist3r Xray JSfinder pppXray Server酱

下一个想要集成的项目是ARL资产灯塔系统

项目的成果在于将这些单独强大的组件融合到一个单一的应用中,适用于SRC批量扫描,CNVD垂直上分等

项目结构:

 

安装

安装python3 (暂不支持 python2

下载本项目代码: git clone https://github.com/Cl0udG0d/HXnineTails

安装相应的库文件 pip3 install -r requirements.txt

为方便国内用户,在requirements.txt第一行使用了阿里云镜像

如果是国外服务器进行python库文件安装,为提速请删除requirements.txt第一行

需要安装下列项目,并将路径配置在config.py文件中

谷歌浏览器

Xray (配合高级版食用更佳

crawlergo

OneForAll

subDomainsBrute

subfinder

例如在我的个人笔记本电脑上,config.py中的路径信息为:

'''
各个项目所在路径:
'''
Chrome_Path='C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe'
Xray_Path='D:\\Xray\\xray.exe'
crawlergo_Path='C:\\Users\\Administrator\\Desktop\\test_tools\\crawlergo.exe'
OneForAll_Path='C:\\Users\\Administrator\\Desktop\\test_tools\\OneForAll-master\\'
subDomainsBrute_Path='C:\\Users\\Administrator\\Desktop\\test_tools\\subDomainsBrute-master\\'
subfinder_Path='C:\\Users\\Administrator\\Desktop\\test_tools\\subfinder\\'

HXnineTails文件夹下打开命令行输入扫描参数

 

使用说明

命令行使用,参数详情为:

-h --help 输出帮助信息 如python3 scan.py --help
-a --attone 对单个URL,只进行crawlergo动态爬虫+xray扫描 例如 百度官网 python3 scan.py -a https://www.baidu.com
-s --attsrc 对SRC资产,进行信息搜集+crawlergo+xray , 例如 百度SRC python3 scan.py -s baidu.com
-d --attdetail 对SRC资产,进行信息搜集+crawlergo+xray+C段信息搜集+js敏感信息搜集 , 例如 百度SRC 输入 python3 scan.py -d baidu.com
-t --thread 线程数量,默认线程为5 如 python3 scan.py -t 10 -a http://testphp.vulnweb.com/ 
-r 读取待扫描txt文件,每行一个URL 对取出的每个URL进行 -a 扫描,如 python3 scan.py -t 10 -r target.txt
-c 对保存的漏洞相关报告进行清理,即清理save文件夹下的文件

建议使用 -a-s参数进行扫描

另外有一些全局配置在config.py中,可以自行修改,如:

SERVERKEY=''

portlist=['80','8080','8000','8081','8001']
blacklist=["spider","org"]

ThreadNum=5
PYTHON="python3"

SERVERKEY是Server酱 你注册使用的key

portlist是C段扫描时的默认扫描端口列表

blacklist 中的字符串,若出现在待扫描URL中,该URL不会被扫描

ThreadNum 默认的线程数量

PYTHON 主机python解释器的名称,默认为python3

上面提到了一些外部程序或配置,如果在你的扫描中不需要用到的话,可以不进行安装,在程序运行过程中会自行pass掉

 

部分截图

python3 scan.py --help

python3 scan.py -t 3 -a http://testphp.vulnweb.com/

查看保存的报告

 

TODO

  • 写个英文readme
  • 精简和添加模块
  • 添加ARL模块
(完)