「功能全」自動化滲透工具箱-Ary(附下載 )

歡迎搜索我的公眾號:小道黑客

每天分享更多黑客技能,工具及體系化視頻教程

這里最近參與CIS大會,看到一款自動化滲透工具 Ary,特點是匯聚了各種可以調用的工具。

介紹


工具地址 https://github.com/TeraSecTeam/ary

POC收集 https://github.com/TeraSecTeam/poc-collection

Ary是一個集各種滲透工具於一體的工具,不過看起來還是一個開發中的版本,試用了一遍,感覺還不錯。

注意需要使用centos,好像ubuntu會報一些錯誤。

文件結構介紹

├── ary #二進位文件

├── configs #配置文件夾

├── input

├── log #日誌記錄

├── output #輸出目錄

├── pocs #poc文件夾,可以用自己的POC或者網上的poc

├── README.md 使用說明

└── streams #執行流所在文件夾,自己定義組合

核心功能介紹


信息收集

  1. 空間搜尋引擎收集
  2. 爬蟲類工具收集
  3. 爬蟲類+存儲類收集

工具聯動

  1. 爬蟲類+掃瞄類工具(Poc驗證)
  2. 存儲類+掃瞄類(Poc驗證)
  3. 工具聯動自定義+自動化

安裝


1.安裝所有的工具引擎,執行命令後,將會自動下載第三方的滲透工具,如xray。也可以預先不下載,在執行命令的時候如果缺少某個第三方工具會自動下載。

./ary –vulnscan –engine all –update -v

./ary –assertscan –engine all –update -v

2.chrome 的安裝(爬蟲需要)

配置yumGoogle的源:

vi /etc/yum.repos.d/google.repo

將下面這段粘貼進文件

[google]
name=Google-x86_64
baseurl=http://dl.google.com/linux/rpm/stable/x86_64
enabled=1
gpgcheck=0
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub

配置完之後,執行以下bash命令,安裝google-chrome

yum update

yum install google-chrome-stable

google-chrome –version

配置文件


默認加載配置為帶有settings.ini的文件configs/example.settings.ini文件為配置示例,可以修改其內容,如加入網絡搜尋引擎的token

1.目錄設置

可以設置各輸入和輸出目錄

「功能全」自動化滲透工具箱-Ary(附下載 )

2.第三方工具來源

xray下載地址及下載輸出位置

「功能全」自動化滲透工具箱-Ary(附下載 )

3.信息收集來源

包含rad,crawlergo,gospider等信息收集工具

「功能全」自動化滲透工具箱-Ary(附下載 )

4.空間搜尋引擎配置

主要是配置fofa,shodan,censys的token或API key

「功能全」自動化滲透工具箱-Ary(附下載 )

使用體驗

1.網絡空間搜索

支持shodan、fofa、censys等空間搜尋引擎,使用相關搜索需要在配置文件configs/example.settings.ini中配置相應的token。

相關命令

./ary –netsearch –engine shodan –keyword dedecms -v –limit 10

./ary –netsearch –engine shodan –keyword “tomcat country:”US”” -v –limit 10

./ary –netsearch –engine fofa –keyword redis -v –limit 10

./ary –netsearch –engine fofa –keyword “protocol=socks4 && banner=”0x5a”” -v –limit
10

./ary –netsearch –engine censys –keyword redis -v –limit 1000

如使用shodan進行搜索

配置token(需要自己註冊shodan的帳號,獲取token)

cd configs[root@centos configs]# vim example.settings.ini

「功能全」自動化滲透工具箱-Ary(附下載 )

搜索dedecms框架, 限制10條

[root@centos kk]# ./ary –netsearch –engine shodan –keyword dedecms -v –limit 10

結果如下

「功能全」自動化滲透工具箱-Ary(附下載 )

搜索結果默認保存在sqlite中,在配置文件中配置,公開版默認配置sqlite

「功能全」自動化滲透工具箱-Ary(附下載 )

「功能全」自動化滲透工具箱-Ary(附下載 )

使用sqlite3工具 SQLiteStudio查看,可看到結果已保存到本地data.db中

「功能全」自動化滲透工具箱-Ary(附下載 )

採用shodan語法搜索, 搜索國家為美國的tomcat

[root@centos kk]# ./ary –netsearch –engine shodan –keyword “tomcat country:”US”” -v –limit
10

「功能全」自動化滲透工具箱-Ary(附下載 )

使用fofa基本語法搜索

[root@centos kk]# ./ary –netsearch –engine fofa –keyword redis -v –limit 10

「功能全」自動化滲透工具箱-Ary(附下載 )

根據特徵搜索sock4代理,關鍵詞為

protocol=socks4 && banner=”0x5a”

./ary –netsearch –engine fofa –keyword “protocol=socks4 && banner=”0x5a”” -v –limit
10

結果

「功能全」自動化滲透工具箱-Ary(附下載 )

評論

censys的結果不精確,沒有相應的埠

推薦shodan和fofa

2.資產掃瞄

基於在線靶場測試http://testhtml5.vulnweb.com

基於ARL資產掃瞄

ARL是freebuf能力中心開源的一套資產掃瞄系統(https://github.com/TophantTechnology/ARL),提供docker版,有前端介面,基於ARL可以方便進行資產掃瞄和可視化

這里採用ARL 資產偵查燈塔系統

(https://hub.docker.com/r/tophant/arl/tags?page=1&ordering=last_updated)

直接使用docker版本的ARL,登錄進去後改密碼

在配置文件里配置ARL

ARL token在登錄後可以從cookie獲取

打開F12查看cookie

「功能全」自動化滲透工具箱-Ary(附下載 )

PS: 在啟動docker的時候可以配置固定token,

如果需要一直使用建議進行配置 之後在配置文件的[assertscan]中進行相應配置

「功能全」自動化滲透工具箱-Ary(附下載 )

通過ary調用ARL進行資產掃瞄

ARL:

./ary –assertscan –engine arl –input指定文件

./ary –assertscan –engine arl –url指定url,可指定多個url,url之間用逗號隔開

資產掃瞄相關命令

# 啟動一個任務

# 查找子域名

./ary –assertscan –engine arl –url www.aaa.com -v –condition subdomain

./ary –assertscan –engine arl –url www.aaa.com,www.bbb.com -v –condition subdomain

# 查找子域名 指定文件

./ary –assertscan –engine arl –input targets.txt -v –condition subdomain

# 查找子域名 指定輸出文件名

./ary –assertscan –engine arl –url www.aaa.com -v –condition subdomain –output
arl.csv

# 查找埠

./ary –assertscan –engine arl –input targets.txt -v –condition portscan

# 獲取任務結果

./ary –assertscan –engine arl -v –fetch-result –keyword 5fd321f0a4a557000fb2a574

# 獲取任務結果 – 加載文件

./ary –assertscan –engine arl -v –fetch-result –input arl.csv

掃瞄測試

./ary –assertscan –engine arl –url http://testhtml5.vulnweb.com -v –condition subdomain

「功能全」自動化滲透工具箱-Ary(附下載 )

登錄ARL後台,x.x.x.x:5003, 輸入帳號密碼,可以看到在ARL中已經啟動了任務

「功能全」自動化滲透工具箱-Ary(附下載 )

獲取掃瞄完畢的結果

[root@centos kk]# ./ary –assertscan –engine arl -v –fetch-result –keyword
5ff67b77ac258f000ccf4de2

或者直接把文件作為輸入

[root@centos kk]# ./ary –assertscan –engine arl -v –fetch-result –input
output/arl_1_2021-01-07T03\:09\:43Z.txt.csv

「功能全」自動化滲透工具箱-Ary(附下載 )

埠掃瞄

./ary –assertscan –engine arl –input vulnweb.com -v –condition portscan

埠掃瞄僅限於top100,不太好用,不能指定埠

3.爬蟲類

./ary –assertscan –engine rad –url http://testphp.vulnweb.com/ -v

./ary –assertscan –engine gospider –url http://testphp.vulnweb.com/ -v

./ary –assertscan –engine crawlergo –url http://testphp.vulnweb.com/ -v

使用rad進行爬取

[root@centos kk]# ./ary –assertscan –engine rad –url http://testphp.vulnweb.com/ -v

如果沒有rad,會自動下載並開始爬取

rad配置文件rad_config.yml在當前目錄生成爬取過程

「功能全」自動化滲透工具箱-Ary(附下載 )

保存結果在

output/rad_1_2021-01-07T06:47:23Z.txt

使用gospider進行爬取

./ary –assertscan –engine gospider –url http://testphp.vulnweb.com/ -v

如果沒有gospider,會自動下載並開始爬取

「功能全」自動化滲透工具箱-Ary(附下載 )

結果保存在output/gospider文件夾下

2021-01-07 06:50:00,846 – [assertscan#143] – HIGHLIGHT – saved to output/gospider

gospider比rad在參數上更加詳細

使用crawlgo進行爬取

如果沒有crawlgo,會自動下載並開始爬取

[root@centos kk]# ./ary –assertscan –engine crawlergo –url http://testphp.vulnweb.com/ -vCrawlgo的也比較詳細,但是速度較gospider和rad慢

「功能全」自動化滲透工具箱-Ary(附下載 )

結果保存在output文件夾下

2021-01-07 06:57:40,600 – [assertscan#165] – HIGHLIGHT – saved to
output/crawlergo_1_2021-01-07T06:56:05Z.txt

4.漏洞掃瞄

# 對目標進行掃瞄

./ary –vulnscan –url http://testphp.vulnweb.com/ –engine xray -v

# 對目標進行被動掃瞄(rad+xray)

./ary –vulnscan –engine xray –url http://testphp.vulnweb.com/ -v –passive

# 對文件中的目標進行被動掃瞄

./ary –vulnscan –engine xray –input target.txt -v –passive

# 讀取資料庫中的數據進掃瞄

./ary –vulnscan –engine xray –keyword tomcat -v

./ary –vulnscan –engine xray –keyword tomcat -v –crawl

直接調用xray進行掃瞄

./ary –vulnscan –url http://testphp.vulnweb.com/ –engine xray -v

如果沒有xray,會自動下載並開始爬取

xray的配置文件config.yaml默認在當前文件夾生成

「功能全」自動化滲透工具箱-Ary(附下載 )

下載完後保存在在thirdpartys文件夾下

「功能全」自動化滲透工具箱-Ary(附下載 )

xray結果以json格式保存在output目錄下

調用xray進行被動掃瞄

./ary –vulnscan –engine xray –url http://testphp.vulnweb.com/ -v –passive

效果不好,可能是使用姿勢不對,待進一步探索

xray+gospider分開跑

效果不錯

在兩個終端中運行程序:

運行xray, xray在7778埠監聽,被動掃瞄模式

./ary –vulnscan –engine xray –port 7778 –background -v

運行gospider,將流量轉發到7778埠給xray進行掃瞄,使用xray對go spider的內容進行掃瞄

./ary –assertscan –engine gospider –url http://testphp.vulnweb.com/ -v –passive –port
7778

效果如下

「功能全」自動化滲透工具箱-Ary(附下載 )

xray+rad分開跑

運行rad,將流量轉發到7778給xray掃瞄,效果不錯

「功能全」自動化滲透工具箱-Ary(附下載 )

xray+crawelgo分開跑

運行crawelgo,掃瞄的數量多一點,但是相對來說慢一點

「功能全」自動化滲透工具箱-Ary(附下載 )

5.POC使用

PoC 漏洞驗證

POC可自行在POC收集 https://github.com/TeraSecTeam/poc-collection項目中尋找

./ary –pocscan –input redis.txt –poc redis -v

./ary –pocscan –url xx.xx.xx.xx –poc ./pocs/redis -v

./ary –pocscan –poc tomcat –keyword tomcat -v

./ary –pocscan –keyword redis –poc redis -v

./ary –pocscan –keyword redis –poc redis -v –limit 1 –dumppcap redis

./ary –pocscan –keyword thinkphp –poc thinkphp_rce2 -v –limit 20 –dumppcap
thinkphp

# 寫到資料庫

./ary –pocscan –url xx.xx.xx.xx –poc redis -v –limit 2 –upload

redis POC 效果

「功能全」自動化滲透工具箱-Ary(附下載 )

針對單個網站打poc

[root@centos kk]# ./ary –pocscan –url 122.xx.xx.xx –poc redis -v

「功能全」自動化滲透工具箱-Ary(附下載 )

針對資料庫中的關鍵詞打POC

[root@centos kk]# ./ary –pocscan –keyword redis –poc redis -v

「功能全」自動化滲透工具箱-Ary(附下載 )

對數據包詳細分析

執行流嘗試使用錄包功能,錄包之後為pcap格式,可以用wireshark打開

「功能全」自動化滲透工具箱-Ary(附下載 )

6.Stream模塊使用

使用這個模塊可以自定義過程。

使用steam進行POC驗證

自定義過程的配置在./streams/streams.yaml

「功能全」自動化滲透工具箱-Ary(附下載 )

./ary -v –stream –input streams.yaml –keyword “redis 未授權訪問漏洞”

可以看到名稱為redis 未授權訪問漏洞,故在命令行中輸入該關鍵詞`–keyword “redis 未授權訪問漏洞”`

將會使用shodan進行redis蒐集,並且使用pocs目錄下的redis.py POC進行利用嘗試

效果如下

「功能全」自動化滲透工具箱-Ary(附下載 )

使用stream進行漏洞挖掘

也可以進行漏洞掃瞄,指定xray引擎,非passive方式掃瞄,

關鍵詞為test testphp.vulnweb.com

./ary -v –stream –input streams.yaml –keyword “test testphp.vulnweb.com”

即可進行xray掃瞄

效果 如下

「功能全」自動化滲透工具箱-Ary(附下載 )

Trouble shooting

1、API報錯

2021-01-07 02:28:23,382 – [netsearch#217] – DEBUG – fofa mail : [email protected], secret :
238ebxxxxxxxxxxxxxxxxxx2440

2021-01-07 02:28:23,387 – [database#28] – DEBUG – using database : sqlite

2021-01-07 02:28:23,396 – [netsearch#249] – DEBUG –
https://fofa.so/api/v1/search/[email protected]&key=238ebxxxxxxxxxxxxxxxxxx2440&qbase64=aXA9IjguOC144Ljgi&size=1

2021-01-07 02:28:24,597 – [netsearch#253] – ERROR – 401 Unauthorized, make sure 1.email and apikey
is correct 2.FOFA coin is enough.

解決方法: 註冊帳號,獲取token,並在配置文件中填入相應的token

2、埠被占用

「功能全」自動化滲透工具箱-Ary(附下載 )

解決方法

[root@centos kk]# ./ary –kill –engine xray –port 7777 -v

總結

– 快速的資產收集和工具聯動操作

– 在獲取某個POC和框架信息的情況下,可以快速聚合所需要的網站並且調用需要的工具進行掃瞄

– 適用於平時進行漏洞挖掘

– 資料庫的使用可以發揮更多的想像力,其他版本在數據方面應該會更友好

– 體驗下來,公開版適用於滲透測試前中期的自動化工作,輔助在測試中更快地尋找到突破點

作者:掙扎的小小

來源:https://www.freebuf.com/sectool/260698.html

來源:kknews「功能全」自動化滲透工具箱-Ary(附下載 )