1.1 Xray简介
1.1.1 Xray介绍
Xray是一款功能强大的安全评估工具,由多名经验丰富的一线安全从业者呕心打造而成,主要特性有:
- 检测速度快:发包速度快,漏洞检测算法高效;
- 支持范围广:大至OWASP Top 10通用漏洞检测,小至各种CMS框架POC,均可以支持;
- 代码质量高:编写代码的人员素质高,通过Code Review、单元测试、集成测试等多层验证来提高代码可靠性;
- 高级可定制:通过配置文件暴露了引擎的各种参数,通过修改配置文件可以极大的定制化功能;
- 安全无威胁:Xray定位为一款安全辅助评估工具,而不是攻击工具,内置的所有payload 和poc均为无害化检查
1.1.2 支持的漏洞检测类型
- 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):其中POC框架默认内置Github上贡献的poc,用户也可以根据需要自行构建poc并运行
1.2 Xray安装
1.2.1 下载Xray
https://github.com/chaitin/xray/releases
1.2.2 安装Xray
# unzip xray_linux_amd64.zip # mv xray_linux_amd64 /usr/local/bin/xray
1.2.3 配置Xray
1.2.3.1 生成配置文件
$ mkdir -p Program/Xary $ cd Program/Xary # 执行扫描命令生成配置文件(可以不用等扫描完成即可停止,此命令只为生成最新配置文件) $ xray webscan --basic-crawler http://testphp.vulnweb.com/ --html-output xray-crawler-testphp.html $ ls # 执行命令后即可在当前目录下查看生成的配置文件 config.yaml xray-crawler-testphp.html
1.2.3.2 配置浏览器证书
# cd /home/pinming/Program/Xary # xray genca
- IE、Chrome、curl 等客户端配置证书方法:
# cp ca.crt /usr/local/share/ca-certificates/xray.crt # update-ca-certificates
- FireFox配置证书方法:
1.3 使用Xray
在线文档:https://docs.xray.cool/#/
1.3.1 主动扫描
主动扫描是xray通过爬虫模拟用户点击操作进行扫描。
1.3.1.1 配置环境
此处以扫描DVWA为例:http://192.168.10.159/DVWA/
修改DVWA安全级别为low,并获取cookie值:
Cookie: PHPSESSID=2a9g3tiu3kl30s4bj9v5t0khe4;security=low
1.3.1.2 修改Xray配置文件
$ vim config.yaml 32 Cookie: PHPSESSID=2a9g3tiu3kl30s4bj9v5t0khe4;security=low # 配置Cookie 151 path_disallowed: # 添加禁止扫描的路径 152 - '*setup.php' 153 - '*csrf*' 154 - '*security.php*' 155 - '*logout.php*'
1.3.1.3 开始扫描
$ xray webscan --basic-crawler http://192.168.10.159/DVWA/ --html-output DVWA.html
1.3.1.4 查看扫描结果
1.3.2 被动扫描
1.3.2.1 开启Xray监听
$ xray webscan --listen 127.0.0.1:7777 --html-output xray-beidong.html
1.3.2.2 配置浏览器代理
1.3.2.3 访问网站后查看测试结果
被动扫描需要人工访问web页面,然后在页面上提交各种参数,xray 会把所有的参数进行测试是否存在问题,爬虫自动扫描在没有爬到页面中的表单以及参数信息时就不会进行对应的测试,所以被动扫描可能更适合我们对网站进行测试,需要注意的是请勿在可能对目标服务器造成不可逆的影响的位置进行测试,比如删除某个资源文件的请求。

我的微信
如果有技术上的问题可以扫一扫我的微信