XRAY與Burp、AppScan、AWVS聯動

PS:歡迎訪問我的個人博客 http://luckyzmj.cn

0x01 XRAY 掃描器

xray 是從長亭洞鑑核心引擎中提取出的社區版漏洞掃描神器,支持主動、被動多種掃描方式,自備盲打平臺、可以靈活定義 POC,功能豐富,調用簡單,支持 Windows / macOS / Linux 多種操作系統,可以滿足廣大安全從業者的自動化 Web 漏洞探測需求。

  • GitHub地址:https://github.com/chaitin/xray
  • 官方文檔:https://xray.cool/xray/#/tutorial/introduce

0x02 代理模式

1. 生成CA證書

.\xray.exe genca

運行命令之後,將在當前文件夾生成 ca.crtca.key 兩個文件。

注意:本命令只需要第一次使用的時候運行即可,如果文件已經存在再次運行會報錯,需要先刪除本地的 ca.crtca.key 文件。

2. 安裝CA證書

打開 火狐瀏覽器 > 選項設置 > 隱私與安全 > 查看證書(在頁面底部) > 證書頒發機構 > 導入證書 > ca.crt

詳細操作:https://jingyan.baidu.com/article/ca2d939d62d7eaeb6c31ced0.html

3. 開啓代理

火狐瀏覽器安裝插件 FoxyProxy Standard,監聽本地7777端口,添加配置如下

然後點擊右上角的插件圖標,選擇 xray 代理

4. 開始掃描

在掃描之前,我們還需要做一些必要的設置

第一次啓動 xray 之後,當前目錄會生成 config.yml 文件,選擇文件編輯器打開,並按照下方說明修改。

定位到如下內容,在 includes: 下添加測試目標的站點域名,這裏以AWVS官方的靶場爲例 testphp.vulnweb.com,可以根據你實際測試目標替換。

mitm:
  ...
  restriction:
    includes:
    - "testphp.vulnweb.com"
    ...

監聽本地的7777端口,並設置漏洞報告的輸出的文件,支持多種格式

輸出html格式文件報告
.\xray.exe webscan --listen 127.0.0.1:7777 --html-output xray-testphp.html

輸出json格式文件報告
.\xray.exe webscan --listen 127.0.0.1:7777 --json-output xray-testphp.json

運行完該命令後,在火狐瀏覽器中訪問 http://testphp.vulnweb.com 網站,然後在瀏覽器訪問本地生成的 xray-testphp.html ,查看漏洞報告

注意:輸出的漏洞報告文件是根據你實際手動瀏覽的頁面而生成的,所以儘量多點擊訪問測試目標域名下的各個頁面

下面是幾個快速鏈接,可以點擊用於體驗更多的漏洞類型的掃描

  • 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

在命令行可以使用 ctrl + c 按鍵,退出xray掃描

0x03 XRAY與Burp聯動

在實際測試過程中,除了被動掃描,也時常需要手工測試。這裏使用 Burp 的原生功能與 xray 建立起一個多層代理,讓流量從 Burp 轉發到 xray 中。

首先 xray 建立起 webscan 的監聽

.\xray.exe webscan --listen 0.0.0.0:1111 --html-output Burp.html

進入 Burp 後,打開 User options 標籤頁,然後找到 Upstream Proxy Servers 設置。

點擊 Add 添加上游代理以及作用域,Destination host處可以使用*匹配多個任意字符串,?匹配單一任意字符串,而上游代理的地址則填寫 xray 的監聽地址。

此時瀏覽器端需要使用 Burp 的端口8080代理

接下來使用Burp正常抓包,截取流量

放包時,Burp會將我們截取到的流量包轉發到xray中進行漏洞檢測

至此,xray與Burp聯動成功。

0x04 XRAY與AppScan聯動

注意:在聯動之前,確保在配置文件_config.yaml文件中,定位到如下內容,在 includes: 中改爲 * 或者你想要掃描的域名地址,否則會收不到數據

mitm:
  ...
  restriction:
    includes: # 允許掃描的域
    - "*" # 表示允許所有的域名和 path
    ...

首先 xray 建立起 webscan 的監聽,0.0.0.0:1111 表示監聽本地所有網卡的1111端口

.\xray.exe webscan --listen 0.0.0.0:1111 --html-output appscan.html

打開AppScan,新建一個站點掃描,注意勾選配置代理

代理設置爲 127.0.0.1:1111

之後根據默認配置直接開始掃描

xray接收到了AppScan轉發的數據並分析檢測漏洞

至此,xray與AppScan聯動成功。

0x05 XRAY與AWVS聯動

這裏測試的是 AWVS 10.5 版本的,之前測試了 AWVS 13 web 版的代理一直不成功,可能是我使用破解版無法使用代理的緣故,一直找不到方法解決,所以放棄了。但是用10.5版本的成功了,方法都是一樣的,改AWVS的代理配置即可完成聯動。

每次聯動前,確保你的 _config.yaml 配置的允許掃描域名正確

mitm:
  ...
  restriction:
    includes: # 允許掃描的域
    - "*" # 表示允許所有的域名和 path
    ...

首先 xray 建立起 webscan 的監聽,0.0.0.0:1111 表示監聽本地所有網卡的1111端口

.\xray.exe webscan --listen 0.0.0.0:1111 --html-output awvs.html

打開AWVS,新建一個站點掃描,測試目標:http://testphp.vulnweb.com/

進入掃描配置

代理設置爲 127.0.0.1:1111

之後根據默認配置直接開始掃描

xray接收到了AWVS轉發的數據並分析檢測漏洞

至此,xray與AWVS聯動成功。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章