xray工具—代理扫描、爬虫扫描、Burp联动

xray工具—代理扫描、爬虫扫描、Burp联动

  • 1. Xray介绍
    • 1.1. 支持漏洞检测类型
    • 1.2. 官网地址
  • 2. 常用扫描模式
    • 2.1. 生成证书
      • 2.1.1. 浏览器安装证书
    • 2.2. Xray基础主动扫描
      • 2.2.1. 基础主动扫描命令
      • 2.2.2. 基础主动扫描结果
    • 2.3. Xray代理模式扫描
      • 2.3.1. 代理模式配置代理
      • 2.3.2. 代理模式扫描命令
      • 2.3.3. 代理模式扫描结果
    • 2.4. Xray基础爬虫模式扫描
      • 2.4.1. 基础爬虫模式扫描命令
      • 2.4.2. 基础爬虫模式配置Cookie
        • 2.4.2.1. 查看Cookie
        • 2.4.2.2. 添加Cookie
      • 2.4.3. 基础爬虫模式扫描结果
        • 2.4.3.1. 漏洞验证
    • 2.5. 服务扫描
      • 2.5.1. 服务扫描命令
  • 3. 配置文件常用操作
    • 3.1. 配置测试目标站
    • 3.2. 删除全局禁止测试目标
    • 3.3. 设定发包数
    • 3.4. 总结
  • 4. Xray与Burp联动
    • 4.1. Xray建立监听
    • 4.2. 设置Burp代理
    • 4.3. 设置Burp代理
    • 4.4. 查看联动效果
    • 4.5. 注意事项

1. Xray介绍

  Xray是长亭科技推出的一款功能强大的安全评估工具,由多名经验丰富的一线安全从业者呕心打造而成,支持主动、被动等多种扫描方式,支持WindowsLinuxmacOS多种操作系统,同时支持用户自定义POC

  目前xray分为:社区版、高级版、企业版。

  其中社区版是为免费版本,高级版需要为社区提供贡献获取金币、抽奖、商业销售进行获取,而企业版则只能通过商务购买进行获取。

1.1. 支持漏洞检测类型

  下列这些漏洞,在通过扫描获取到一个报告的时候,会在每一行后面体现出名字,其中POC框架默认是内置github上贡献的POC,当然用户也可以自定义构建POC运行。

  • 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)
  • XStream 系列漏洞检测 (key: xstream)
  • POC 框架 (key: phantasm)

1.2. 官网地址

  官网上的技术文档肯定写的更全,当然有些情况,还是比较难理解的,不过Xray的技术文档写的很全,里面包含了Windows、Linux、macOS不同系统的使用方式。

  技术文档

  github

2. 常用扫描模式

  通过github上下载下来后,只会有一个exe文件,当使用CMD或者PowrShell运行的时候,会自动在文件夹下发生成其它所需要文件,这里我就以Windows为例子,当然你们生成的肯定不是我这个样子,由于我是使用了高级版会多出一个xray-license.lic文件。

CMD运行:
xray_windows_amd64.exe version  ##查看版本
PowrShell运行:
./xray_windows_amd64.exe version  ##查看版本

xray工具—代理扫描、爬虫扫描、Burp联动_第1张图片

2.1. 生成证书

  之前可能都了解过当使用各类工具去扫描HTTPS的时候会显示证书异常,必须要得到客户端的信任,才能够进行建立通信,所以这里就需要使用到证书,而在Xray中也自带证书,这里时候我们将证书生成,然后把证书安装到浏览器中即可。

  当然如果你的目录下存在这个两个证书的话,那么再次运行就会出现报错,删除即可。

xray_windows_amd64.exe genca ##生成证书

xray工具—代理扫描、爬虫扫描、Burp联动_第2张图片

  嗯~~我在想需要介绍浏览器如何安装证书吗?还是介绍一下吧!

2.1.1. 浏览器安装证书

  这里我们直接在刚刚生成的文件夹中寻找到那个证书,双击安装证书。

xray工具—代理扫描、爬虫扫描、Burp联动_第3张图片

  这里点完默认下一步,到这里的时候需要注意一定要选择受信任的根证书颁发机构,然后就是下一步了,然后点击完成后就会弹出一个界面。

xray工具—代理扫描、爬虫扫描、Burp联动_第4张图片

  这里弹出的界面点击是进行安装,安装后就会显示导入证书成功。

xray工具—代理扫描、爬虫扫描、Burp联动_第5张图片

2.2. Xray基础主动扫描

  这个模式总体来说不是太好,由于在针对一个URL进行扫描的时候,Xray只会对这个url的界面进行扫描,例如:http://127.0.0.1:8090/?id=10,那么在扫描的时候就只会对这个ID=10的页面扫描,例如这个页面下存在输入框,那么就会进行XSS等测试,URL进行sql注入测试等等,那么id=9的页面就无法进行测试。

2.2.1. 基础主动扫描命令

  这里稍后还会介绍其它的扫描方式进行弥补,这里先介绍单URL如何扫描,同时这里比较尴尬的是我使用帮助命令,帮助命令介绍的还是比较简单,还是建议去官网的手册看看案例,不过好像也没啥要记的命令,都挺简单的。

  http://testphp.vulnweb.com/这个地址是AWVS的一个漏洞靶场,可以用来进行测试。

xray_windows_amd64.exe webscan --url http://testphp.vulnweb.com/ --html-output 111.html

--url 指定目标的url
--html-output 扫描结果导出为html
111.html 扫描结果的文件名称

2.2.2. 基础主动扫描结果

  前面的+是能够显示更详细的信息,Target是存在漏洞的URLName就是前面支持漏洞检测的类型名称,像我这个两个都是目录枚举,后面就是时间。

xray工具—代理扫描、爬虫扫描、Burp联动_第6张图片

2.3. Xray代理模式扫描

  Xray代理模式扫描就是扫描器作为中间人,当你访问URL某个页面的时候Xray就会自动去扫描,例如上面我举例子的,当你去访问id=10页面的时候,就会自动去扫描,当你去访问id=9页面的时候,也会去自动扫描,这样就实现了,整个页面的扫描。只要你访问到的页面均会被扫描。

2.3.1. 代理模式配置代理

  这里我使用火狐浏览器进行配置代理,可以使用一个插件进行配置,这个之前应该都会我就会进行介绍了。

xray工具—代理扫描、爬虫扫描、Burp联动_第7张图片

2.3.2. 代理模式扫描命令

  当运行后,你访问一个页面就会对这个页面进行扫描,简单来说,你访问一百个页面,Xray就会对这个一百个页面进行扫描,这样就能够实现在你访问某个页面的过程中就把漏洞给挖了。

xray_windows_amd64.exe webscan --listen 127.0.0.1:7777 --html-output 222.html

--listen 指定本地的代理
127.0.0.1:7777 配置的代理

2.3.3. 代理模式扫描结果

  这里可以看到有很多的漏洞,当然这是靶场,我也就点击了几下就出现那么多漏洞,自然点击的多肯定漏洞就不止这些了,当然要点击的多才行,比如我之前测试的时候应该还有一个xss漏洞,这里没扫到,是由于我没点击,或者点击太快,还没扫描完就被我暂停了。

  当然+下面有详细的请求包,你可以进行验证,漏扫多多少少会出现一些误报。

xray工具—代理扫描、爬虫扫描、Burp联动_第8张图片

2.4. Xray基础爬虫模式扫描

  Xray的爬虫模式简单来说就是模拟人工去点击网页的链接,然后去进行分析扫描,和上面代理模式不同的是,爬虫模式不需要人工的介入,访问速度也要快很多,但是也存在一些缺点,那就是无法处理js渲染的界面,当然如果想要实现这个功能就需要更高级的版本。

  版本功能对比

2.4.1. 基础爬虫模式扫描命令

  这里就只是需要输入命令即可,但是这个会存在一个问题,那么就是登陆模式,在使用代理模式扫描的时候,如果网站是登陆模式的,那么扫描所收到的请求都是登陆状态的请求,但是对应爬虫来说,就没那么智能化了,但是可以通过配置Cookie的方式来实现登陆后的扫描。

xray_windows_amd64.exe webscan --basic-crawler http://testphp.vulnweb.com/ --html-output 333.html

2.4.2. 基础爬虫模式配置Cookie

  这里就是介绍如何添加Cookie

2.4.2.1. 查看Cookie

  这里我只介绍了一种方式,当然还有很多查看Cookie的方式,这里使用的办法就是F12开发者工具去找请求包,在请求包中会存在Cookie值,然后记录下来。

xray工具—代理扫描、爬虫扫描、Burp联动_第9张图片

2.4.2.2. 添加Cookie

  在Xray运行目录下会有一个文件为config.yaml,这个就是配置文件夹,使用记事本或者其它工具打开就可以了,在http配置部分中的headers项中修改Cookie值或者添加一条即可,下面的Cookie是默认,可以删除,同时前面的#是不生效这个应该不会不知道吧。

xray工具—代理扫描、爬虫扫描、Burp联动_第10张图片

2.4.3. 基础爬虫模式扫描结果

  使用爬虫模式扫描,这边通过扫描发现了50个漏洞,这里我们就验证一个漏洞来看看情况。

xray工具—代理扫描、爬虫扫描、Burp联动_第11张图片

2.4.3.1. 漏洞验证

  这里我们就拿41项来验证XSS,首先我们查看一下介绍,它的意思是在这个URL中存在一个XSS漏洞,同时给了验证的payload,那么我们先来访问这个页面。

xray工具—代理扫描、爬虫扫描、Burp联动_第12张图片

  根据提供的数据包,触发弹窗的是在GET请求中,那么GET请求不就是URL中么,当然这里的数据包我没截到图,你们可以自行测试,那么这里我就将这个payload输入到URL中,可以看到成功触发了XSS弹窗。

  如果这是一个真实的网站,或者你去给业主做漏扫,是不是就出现了一条可提交的漏洞呢?

xray工具—代理扫描、爬虫扫描、Burp联动_第13张图片

2.5. 服务扫描

  这里就使用官方的介绍:

  Xray 中最常见的是 web扫描,但是xray 将会逐渐开放服务扫描的相关能力,目前主要是服务扫描相关的POC。老版本升级的用户请注意配置文件需要加入服务扫描的相关POC名字,目前只有一个tomcat-cve-2020-1938 ajp协议任意文件检测POC

  当然这里我也没服务进行测试,所以就引用官网的技术文档了。

2.5.1. 服务扫描命令

  这个服务扫描其实就是针对你使用的一些服务进行扫描,比如中间件等服务。

1.快速检测单个目标
xray_windows_amd64.exe servicescan --target 127.0.0.1:8009 --html-output 444.html

--target 后面跟着的是一个地址,同时也可以添加端口

2.批量检查的 1.file 中的目标, 一行一个目标,带端口
xray_windows_amd64.exe servicescan --target-file 1.file --html-output 444.html

--target-file 后面跟着的是一个文件,当然你输入文件路径也是可以了,只要能够读取到就可以了,但是后面的后缀好像要同步。

  其中1.file的格式为一行一个,如:

127.0.0.1:8080
127.0.0.1:8090
192.168.1.1:8080
~~~~~~~

3. 配置文件常用操作

  Xray的很多操作并不像其它的那样在命令中决定的,有很多都是通过配置文件来设定的,就像之前设置Cookie一样,有些扫描器都是在命令中设定或去指定,而Xray则需要去配置文件中去配置。

  配置文件生成在当前命令下,文件名为:config.yaml

  这里我只介绍一些常用了,很多更高超的功能还请去官方的技术文档中查阅。

3.1. 配置测试目标站

  像使用上面的代理扫描的时候,如果浏览器打开的页面多,可能就会出现非授权扫描,比如你要扫描www.123.com,这个是你得到授权的,但是你使用浏览器在查阅其它资料的时候,去扫描了你查资料的网站,那么这个就出现了非授权的扫描,如果想要避免这个事情发生,可以在配置文件中设定需要测试的目标站,当点击到其它网站的时候,Xray就不会去扫描了。

  修改地址:mitmrestrictionhostname_allowed 增加 你要测试的网站地址

  支持:xx.com*.xx.comIP地址IP地址网段

xray工具—代理扫描、爬虫扫描、Burp联动_第14张图片

3.2. 删除全局禁止测试目标

  其实我这里的标题我觉得是不对的,但是意思差不多,在配置测试目标站的下面还有一列就是禁止测试,这些看截图中的结尾应该就知道是什么了,edu不清楚么?gov不清楚么?

  这些默认是不允许扫描的,相当于你去点击这些域名下的网页是不会执行扫描的,如果得到授权可以去扫描该怎么办呢?其实很简单就是删除相应的地址即可。

  修改地址:mitmrestrictionhostname_disallowed 增加/删除 你要测试的网站地址的域名地址

  支持:xx.com*.xx.comIP地址IP地址网段

xray工具—代理扫描、爬虫扫描、Burp联动_第15张图片

3.3. 设定发包数

  在Xray中默认是允许30个并发数量,如果你设定50个并发数,那么一百个POC两秒验证完成,当然这是理论上的。

在这里插入图片描述

3.4. 总结

  这里确实本来想好好总结一下,但是写着写着,发现确实配置文件都是中文,而且非常好理解,同时Xray官方文档写的也很好,所以想了想算了,还是不总结了,有需要去访问Xray官方文档吧。

4. Xray与Burp联动

  在部分情况下,虽然Xray可以直接进行扫描但是可能还是会存在一些遗漏或者需要手动进行复测的情况下,如果再去抓包就比较麻烦了,而Xray提供了与Burp联动的功能。

4.1. Xray建立监听

  其实这里的建立监听命令和代理模式扫描是一样的,只是通过不同的方式将这个Xray流量引导到burp上而已。

xray_windows_amd64.exe webscan --listen 127.0.0.1:7777 --html-output 555.html

xray工具—代理扫描、爬虫扫描、Burp联动_第16张图片

4.2. 设置Burp代理

  这里就需要我们去设置Burp的代理,当然你也可以直接先设置Burp的上游代理服务器。

  设置选项位置:设置>Network>connection>Upstream Proxy Server>add

其实这里配置的就是和上面监听的保持一致即可。
代理主机:127.0.0.1
代理端口:7777

xray工具—代理扫描、爬虫扫描、Burp联动_第17张图片

xray工具—代理扫描、爬虫扫描、Burp联动_第18张图片

4.3. 设置Burp代理

  其实这个是最简单的,为什么这么说,你平常这么使用Burp进行抓包的就是这么设置,在浏览器中开始Burp抓包即可。

xray工具—代理扫描、爬虫扫描、Burp联动_第19张图片

4.4. 查看联动效果

  这里就能够看到联动成功了,但是这个我莫名其妙的好像抓到了qq翻译的的数据包,后面我查看了一下,好像是访问的英文页面然后qq翻译自动运行就导致,Burp在拦截的时候,也将这个翻译的数据包也拦截了,那么通过burp进行抓包发送,那么这样就可能会出现非法测试,所以在使用中尽量保持环境的干净,避免抓到不必要的包,导致非法测试。

4.5. 注意事项

  在联动结束后一定要关闭上游代理服务器,可以直接把前面的勾号取消也可以,不然可能会出现下次使用Burp的时候无法使用的情况。

  这个勾号取消即可。

xray工具—代理扫描、爬虫扫描、Burp联动_第20张图片

你可能感兴趣的:(网络安全学习,#,工具使用,Xray,代理扫描,爬虫扫描,Burp联动)