mac地址扫描源码_漏洞扫描之w13scan、xray被动扫描和crawlergo爬虫联动

声明

由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,雷神众测以及文章作者不为此承担任何责任。

雷神众测拥有对此文章的修改和解释权。如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经雷神众测允许,不得任意修改或者增减此文章内容,不得以任何方式将其用于商业目的。

前言

最近get到了一个爬虫利器crawlergo,于是就忽然想到与被动扫描利器xray和W13scan联动。

No.1

准备

本人系统:mac工具准备:w13scan、crawlargo、xray、chromium

W13scan 是基于Python3的一款开源的Web漏洞发现工具,它支持主动扫描模式和被动扫描模式,目前可以发现sql注入、xss、jsonp泄露、命令执行等常见漏洞。https://github.com/w-digital-scanner/w13scan

pip3 install -r requirements.txtcd W13SCAN # 进入源码目录python3 w13scan.py -h

参数详解:

optional arguments: -h, --help 显示此帮助信息并退出 -v, --version 显示程序的版本号并退出 --debug 显示程序的异常 --level {1,2,3,4,5} 不同级别使用不同的有效负载:0-5(默认为2)Proxy: 被动代理模式选项 -s SERVER_ADDR, --server-addr SERVER_ADDR 服务器addr格式:(ip:端口)Target: 必须提供选项来定义目标 -u URL, --url URL 目标URL(例如:“http://www.site.com/vuln.php?id=1”) -f URL_FILE, --file URL_FILE 扫描文本文件中给定的多个目标Request: Network request options --proxy PROXY 使用代理连接到目标URL,如:http@127.0.0.1:8080 --timeout TIMEOUT 超时连接之前等待的超时秒数(默认为30) --retry RETRY 超时检索时间。Output: 输出 --html 当选择时,输出html文件到输出目录,或者您可以指定 --json JSON json文件目录是在输出中默认生成的目录,您可以更改路径Optimization: 优化选项 -t THREADS, --threads THREADS 最大并发网络请求数(默认为31) --disable DISABLE [DISABLE ...] 禁用一些插件(例如——禁用xss sqli_error) --able ABLE [ABLE ...] 启用一些moudle(例如:启用xss webpack)

由于w13scan本身不支持爬虫功能,所以想到了360 0Kee-Teem公开的使用golang语言开发的crawlargo,crawlergo使用chrome headless模式进行URL动态爬虫,收集包括js文件内容、页面注释、robots.txt文件和常见路径Fuzz,确保不遗漏关键的入口链接。

下载后是这样的:

dc84f24f925867f61e05404c6c148c77.png

然后下载crawlargo:https://github.com/0Kee-Team/crawlergo我是mac下载底下圈起来的:

3a98a4f2718ec94c560964c01026d11c.png

命令参数详解:

--chromium-path Path, -c Path chrome的可执行程序路径--custom-headers Headers 自定义HTTP头,使用传入json序列化之后的数据,这个是全局定义,将被用于所有请求--post-data PostData, -d PostData 提供POST数据,目标使用POST请求方法--max-crawled-count Number, -m Number 爬虫最大任务数量,避免因伪静态造成长时间无意义抓取。--filter-mode Mode, -f Mode 过滤模式,简单:只过滤静态资源和完全重复的请求。智能:拥有过滤伪静态的能力。严格:更加严格的伪静态过滤规则。--output-mode value, -o value 结果输出模式,console:打印当前域名结果。json:打印所有结果的json序列化字符串,可直接被反序列化解析。none:不打印输出。--output-json filepath 将爬虫结果JSON序列化之后写入到json文件。--incognito-context, -i 浏览器启动隐身模式--max-tab-count Number, -t Number 爬虫同时开启最大标签页,即同时爬取的页面数量。--fuzz-path 使用常见路径Fuzz目标,获取更多入口。--robots-path 从 /robots.txt 文件中解析路径,获取更多入口。--request-proxy proxyAddress 支持socks5代理,crawlergo和chrome浏览器的所有网络请求均经过代理发送。--tab-run-timeout Timeout 单个Tab标签页的最大运行超时。--wait-dom-content-loaded-timeout Timeout 爬虫等待页面加载完毕的最大超时。--event-trigger-interval Interval 事件自动触发时的间隔时间,一般用于目标网络缓慢,DOM更新冲突时导致的URL漏抓。--event-trigger-mode Value 事件自动触发的模式,分为异步和同步,用于DOM更新冲突时导致的URL漏抓。--before-exit-delay 单个tab标签页任务结束时,延迟退出关闭chrome的时间,用于等待部分DOM更新和XHR请求的发起捕获。--ignore-url-keywords 不想访问的URL关键字,一般用于在携带Cookie访问时排除注销链接。用法:-iuk logout -iuk exit。--form-values 自定义表单填充的值,按照文本类型设置。支持定义类型:default, mail, code, phone, username, password, qq, id_card, url, date, number,文本类型通过输入框标签的id、name、class、type四个属性值关键字进行识别。如,定义邮箱输入框自动填充A,密码输入框自动填充B,-fv mail=A -fv password=B。其中default代表无法识别文本类型时的默认填充值,目前为Cralwergo。--form-keyword-values 自定义表单填充的值,按照关键字模糊匹配设置。关键字匹配输入框标签的id、name、class、type四个属性值。如,模糊匹配pass关键词填充123456,user关键词填充admin,-fkv user=admin -fkv pass=123456。--push-to-proxy 拟接收爬虫结果的监听地址,一般为被动扫描器的监听地址。--push-pool-max 发送爬虫结果到监听地址时的最大并发数。--log-level 打印日志等级,可选 debug, info, warn, error 和 fatal。

xray就不多说了安装对应版本即可

https://github.com/chaitin/xray/releases

No.2

过程

首先测试爬虫,命令为crawlergo -c YourChromiumPath -t 标签页数 Url

./crawlergo -c chrome-mac 2/Chromium.app/Contents/MacOS/Chromium -t 10 http://testphp.vulnweb.com/

效果如下:

0441a47cadf912260c2182e24a7148e6.png

测试与xray联动:首先监听:

./xray_darwin_amd64 webscan --listen 127.0.0.1:7777 --html-output vulnerability.html
92dba1f8634e01ca53ef0b61a30ff78c.png

crawlargo开始使用代理爬虫

./crawlergo -c chrome-mac/Chromium.app/Contents/MacOS/Chromium -t 10 --request-proxy http://127.0.0.1:7777 http://testphp.vulnweb.com/

效果如下:

e58c1930219a1be571b532f3981b6bda.png

如果想半自动化一点,比如测试多个url可以参考:https://github.com/timwhitez/crawlergo_x_XRAY

测试与W13scan联动:首先监听

python3 w13scan.py -s 127.0.0.1 --html
4183f51a712db33304cc2e1a084a629f.png

与前面爬虫一样的,只是多了个代理

./crawlergo -c chrome-mac/Chromium.app/Contents/MacOS/Chromium -t 10 --request-proxy http://127.0.0.1:7778 http://testphp.vulnweb.com/

效果如下:

046fcdf45f11db699b880a67f797adb1.png 5164f053b8b74d6a00f5c83df3affff8.png

查看输出的html文件,里面有漏洞URL,漏洞类型,漏洞参数,漏洞利用的payload,请求数据包等详细数据。

c0d564ea0dd0221730f3b8366818319b.png a61ea689cf3ba04bbc9c3c0b8090cb1b.png 7076b961662ecf74081d6f7d105b20cb.png

我们也可以利用w8ay师傅的自动化脚本:

import osimport sysfrom urllib.parse import urlparseimport requestsimport jsonimport subprocessfrom lib.core.data import KBroot = os.path.dirname(os.path.realpath(__file__))sys.path.append(os.path.join(root, "../"))sys.path.append(os.path.join(root, "../
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值