当我们需要寻找一个网站的漏洞时,自动化漏洞扫描工具XRAY是一个不错的选择,省时省力,还可以通过编写代码实现对批量网站的自动扫描。
1. XRAY简介
根据官方文档介绍,XRAY目前支持的漏洞检测类型包括:
- XSS漏洞检测 (key: xss)
- SQL 注入检测 (key: sqldet)
- 命令/代码注入检测 (key: cmd-injection)
- 目录枚举 (key: dirscan)
- 路径穿越检测 (key: path-traversal)
- XML 实体注入检测 (key: xxe)
- 文件上传检测 (key: upload)
- 弱口令检测 (key: brute-force)
- jsonp 检测 (key: jsonp)
- ssrf 检测 (key: ssrf)
- 基线检查 (key: baseline)
- 任意跳转检测 (key: redirect)
- CRLF 注入 (key: crlf-injection)
- Struts2 系列漏洞检测 (高级版,key: struts)
- Thinkphp系列漏洞检测 (高级版,key: thinkphp)
- POC 框架 (key: phantasm)
大至 OWASP Top 10 通用漏洞检测,小至各种 CMS 框架 POC,均可以支持。并且作为为一款安全辅助评估工具,而不是攻击工具,内置的所有 payload 和 poc 均为无害化检查。还可以通过配置文件对功能进行定制。扫描结果有四种输出方式,分笔试屏幕输出、JSON文件输出、HTML报告输出和Webhook输出。
2. 运行
XRAY提供了三种扫描模式,分别是代理模式、基础爬虫模式和服务模式,每种扫描模式各有优劣,选择适合自己需求的扫描模式使用即可。
2.1 代理模式扫描
当XRAY作为浏览器代理进行工作时,它会作为中间人将浏览器的请求和服务器的响应原样转发,但会记录下浏览器的访问对象,对访问对象进行漏洞扫描工作。
若浏览器使用https协议进行通行,我们首先应配置CA证书,获取浏览器的信任后才可作为代理工作。XRAY有自动生成CA证书的命令。
|
|
获取CA证书后,依照自己使用的浏览器,进行证书添加即可。添加完证书后,不要忘记对浏览器进行相应的代理配置。准备工作完成后,输入下方命令即可运行XRAY代理。
|
|
开启运行后,XRAY就会对我们使用浏览器访问的网页进行自动扫描了。
2.2 基础爬虫模式扫描
爬虫模式与代理模式的不同之处在于,在命令行输入需要扫描的对象即可进行扫描,与编程语言结合使用时,还可实现对批量网站的自动化后台扫描。但该模式有一个缺点,不能处理js渲染的页面。
运行爬虫模式的命令为:
|
|
2.3 服务模式扫描
XRAY的常用功能是web扫描,但其在逐渐研发服务扫描的相关能力,目前主要是服务扫描相关的 poc。目前只有一个 tomcat-cve-2020-1938 ajp 协议任意文件检测 poc。
目前支持两种扫描方式,分别问检测单个目标和批量检测文件中的多个目标:
|
|
3. 实现批量自动扫描
这里为大家介绍使用PYTHON编写自动扫描脚本的方法
|
|