xray
生成证书并安装
生成证书
保存为 ca.crt
和 ca.key
两个文件,只需要第一次使用的时候运行即可,如果文件已经存在再次运行会报错,需要先删除本地的 ca.crt
和 ca.key
文件。
xray genca
安装证书
FireFox 浏览器可在设置中导入,其它浏览器需要将证书安装到系统上
Windows 直接双击 ca.crt
将证书导入到 受信任的根证书颁发机构
即可
Kali 将 ca.crt
复制到 /usr/local/share/ca-certificates/
,然后执行 update-ca-certificates
。
sudo cp ca.crt /usr/local/share/ca-certificates/xray.crt
sudo update-ca-certificates
其他参考 xray Documentation | 安装证书(Installation Certificate)
启动代理被动扫描
xray webscan --listen 127.0.0.1:7777 --html-output xray-testphp.html
浏览器设置代理转发到 7777 端口上,然后浏览器访问站点即可,当出现漏洞时命令行界面会有输出漏洞信息,在 xray-testphp.html
中也可查看扫描信息。
可用 http://testphp.vulnweb.com/ 进行测试
或具体页面
- http://testphp.vulnweb.com/listproducts.php?cat=1
- http://testphp.vulnweb.com/artists.php?artist=2
- http://testphp.vulnweb.com/redir.php?r=http://www.w3.org
爬虫模式主动扫描
爬虫模式是模拟人工去点击网页的链接,然后去分析扫描,和代理模式不同的是,爬虫不需要人工的介入,访问速度要快很多,但是 xray 的基础爬虫不能处理 js 渲染的页面。最后同样可以通过 xray-crawler-testphp.html
查看到扫描信息。
xray webscan --basic-crawler http://testphp.vulnweb.com/ --html-output xray-crawler-testphp.html
登录后的网站扫描
如果用的是代理模式,只要浏览器是登录状态,那么漏洞扫描收到的请求也都是登录状态的请求。但对于主动扫描的爬虫而言,就没有这么“自动化”了, 但是可以通过配置 Cookie 的方式实现登录后的扫描。
打开配置文件,修改 http
配置部分的 Headers
项:
http:
headers:
Cookie: key=value
上述配置将为所有请求(包括爬虫和漏洞扫描)增加一条 Cookie key=value
结果输出
将检测结果输出到 html 报告中
--html-output service.html
将检测结果输出到 json 文件中
--json-output 1.json
使用 Burp 进行联动
将代理流量设置成 : 浏览器 > burp > xray
进入 Burp 后,打开 User options
标签页,然后找到 Upstream Proxy Servers
设置。
点击 Add
添加上游代理以及作用域,Destination host
处可以使用*
匹配多个任意字符串,?
匹配单一任意字符串,而上游代理的地址则填写 xray 的监听地址。