您的位置:首頁>正文

SRCHunter一款基於python的開源掃描器

目前支援的功能

全自動掃描: python webmain.py -a target.com --> baidu_site && port/dir scan單目標掃描:python webmain.py -u http://127.0.0.1 --> webscan Portscan && scanDir多目標探測:python webmain.py -f vuln_domains.txt --> webscan not scanDir多目標掃描:python webmain.py -d vuln_domains.txt --> webscan Portscan && scanDirC段探測: python webmain.py -cf 192.168.1.1 --> C scan not scanDirC段掃描: python webmain.py -cd 192.168.1.1 --> C scan Portscan && scanDir

1.0的版本, 專案保存在webmain1.0分支

1.0介紹:web敏感資產fuzz

關於1.0和2.0的區別請看commit日誌

下面是2.0的介紹

項目地址

Github:https://github.com/cnnetarmy/SRCHunter

運行環境:python2.6.x或者python2.7.x

依賴協力廠商庫:pip install requests[security]

程式介紹

掃描參數不區分大小寫和順序

預設代理關閉

隨機無序掃描驗證

可跨平臺使用

全自動掃描

全自動掃描, 預設僅載入百度搜尋引擎site:target.com, 生成目標池, 進行部分埠掃描、敏感資產和目錄掃描功能, 詳細同理多目標掃描

命令:python webmain_debug.py -a target.com

單目標掃描

單目標掃描模式預設, 載入敏感資產和目錄掃描功能,

例如:http://testphp.vulnweb.com/

命令:

python webmain_debug.py -u http://testphp.vulnweb.com/

掃描日誌

埠掃描

程式只掃11211, 27017和小於10000的埠

掃描結果如下:

程式會自動過濾掉常規埠

掃描結果

結果介紹

結果保存在report目錄

多目標探測

命令:

python webmain_debug.py -f vuln_domains.txt

使用介紹:

快速探測, 實現url轉ip後, 進行部分埠掃描, 並且對每一個開放的埠進行存活探測,

如果存活, 進行getitle資訊探測, 小細節是加了個filter_ports, 過濾掉常規埠, 考慮到一種情況(旁站), 多個url解析到一個ip上, 程式加了filter_ips過濾已經掃描過埠的ip,

同時, 如果各種非預期的情況導致掃描scheme://netloc重複, 程式加入filter_urls過濾已經掃描過的任務,

程式還考慮到了一種情況, 即:當url傳過來的是存活,

而且沒有掃描出開放的埠, 程式會自動探測default埠的資訊,

包括另外一種情況, 當url傳過來的非存活, 但是掃描出其他開放的埠, 程式會自動探測相應埠的資訊,

程式僅埠掃描, 獲取目標網站title, 狀態碼, 返回值長度, 包括可能存在的合法ip位址, email資產資訊,

但是不探測解析到內網的ip, 黑名單列表如下:

10.x.x.x127.x.x.x172.x.x.x192.168.x.x

多目標掃描

命令:

python webmain_debug.py -d vuln_domains.txt

使用介紹:

與多目標探測不同的是, 加入敏感資產和目錄掃描,

敏感資產使用常用payloads集合進行探測, 加上生成的日期備份檔案, 程式會先判斷404頁面的狀態, 然後對payloads進行遍歷探測,

判斷條件是返回200, 且返回內容大小不等於0, 且payload與404介面的返回大小差的絕對值大於5(或者直接兩者返回大小不相等),

程式改版了之前的附加判斷條件如果碰到waf,

或者各種非預期的情況, 導致跑的payloads返回大於40, 這種情況程式會提示有可能碰到waf, 並且返回空,

進而增加探針計數器, 計算結果個數, 如果掃描結果很快超過25個, 程式會直接結束此次掃描, 節省時間, 提高效率,

新增加多級目錄敏感資產掃描, 即在原來獲取網頁所有超連結的前提下, 進行目錄分割掃描,

關於結果中的Dirscan是常用payloads集合掃描和多級目錄敏感資產掃描結果去重後的並集,

如果出現['waf'], 表示常用payloads集合掃描結果達到程式設置的預設閥值,

如果出現['more_path'], 表示多級目錄敏感資產掃描結果達到程式設置的預設閥值,

其他的情況, 可直接點擊查看驗證結果,

Allinks中, 如果提示[more_link], 意味著頁面存在10個以上的超連結,

預設只顯示前25個字元,

直接點擊, 則可顯示詳情

C段探測

命令:

python webmain_debug.py -cf 192.168.1.1

使用介紹:

程式會判斷輸入ip的合法性, 自動生成c段列表, 其餘同理多目標探測

C段掃描

命令:

python webmain_debug.py -cd 192.168.1.1

使用介紹:

與C段探測不同的是, 加入敏感資產和目錄掃描, 其餘同理多目標掃描

異常處理

總會有各種非預期的情況, 導致程式產生異常告警, debug模式預設全部輸出異常, 正常模式不會輸出,

以下是關於程式掃描過程中的異常處理, 主要使用write_file進行錯誤日誌記錄,

write_file(ip,'portscan_error') 記錄單個目標掃描出開放90個埠以上的ip

write_file(url,'output_error') 記錄保存檔時參數編碼不合法的url

write_file(url,'url2ip_error')記錄單個目標未獲取到ip的url

結果保存

默認在目前的目錄下, 新建report目錄, 並且根據掃描參數分別保存為html檔,

關於掃描出開放的所有埠, 根據掃描參數分別保存為csv文件, 一些特殊埠保存為eg:mysql_3306.txt

異常處理保存

linux下建議使用nohup python webmain_debug.py -d targets.txt &後臺運行,掃描日誌見nohup.out,結果同上

免責聲明

本程式僅供滲透測試從業人員,在授權的情況下參考使用,其他情況使用者自行承擔法律責任,與作者無關

bug回饋

QQ:

2069698797

Email:

SRCHunter@cnnetarmy.com

一些特殊埠保存為eg:mysql_3306.txt

異常處理保存

linux下建議使用nohup python webmain_debug.py -d targets.txt &後臺運行,掃描日誌見nohup.out,結果同上

免責聲明

本程式僅供滲透測試從業人員,在授權的情況下參考使用,其他情況使用者自行承擔法律責任,與作者無關

bug回饋

QQ:

2069698797

Email:

SRCHunter@cnnetarmy.com

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示