日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

awvs 13使用_如何解密AWVS?15行代码就够了!

發布時間:2025/3/21 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 awvs 13使用_如何解密AWVS?15行代码就够了! 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

項目介紹

AWVS一直以來在圈子中都比較火,以速度快和高準確性深受大家喜愛。很多人想研究其運作機制卻因閉源而不得其解。

今天這里通過一個極其簡單的方式,只用幾行代碼就能讓你一見其核心代碼。這是最新解碼方法,除python3外無須安裝任何依賴(沒辦法,python寫的),支持11.x,12.x,13.x,以及后續版本^_^

對于有IAST、DAST掃描器需求的同學,很有幫助。安全從業人員亦可以學習到業界頂尖的掃描技術;對于動手能力強的同學,還可以通過學習這幾行代碼,自動動手給AWVS添加插件哦。

項目地址

https://github.com/gatlindada/awvs-decode/

解密原理

awvs的版本迭代歷史

1. 6.5版本之前,awvs的掃描規則是明文可見

2. 6.5 - 10.x,awvs的規則變為.script結尾的javascript腳本,執行程序也使用了TMD加殼,分析較難,但也可以使用解密腳本從文件夾提取,因過于古老,腳本就沒必要放出來了

3. 11.x - 13.x(當前最新),awvs把腳本放到了“wvsc_blob.bin”文件中,起初誤以為加密了,沒承想,經過靜態分析后發現程序沒加殼,wvsc_blob.bin也沒有加密,只是google protobuf協議壓縮存儲了。簡單理解:類似把文件使用ZIP工具壓縮一下。所以新版本中,使用解密這個詞有些不準確了,準確地講是解碼(decode)而非解密(decrypt)。

使用方法

wvsc_blob.bin文件一般在“C:\Program Files (x86)\Acunetix XXX\core\wvsc_blob.bin”

將wvscblob.bin文件放到和腳本同一目錄,執行腳本即可,輸出在以‘awvs_script_blob_decode’開頭的目錄下。

$ python3 awvs-decode.py

目錄解讀

awvs使用Google V8引擎執行javascript的掃描腳本,腳本在/Scripts/目錄下的”.script”后綴文件,”.script”文件中“#include”包含的是/Scripts/Includes目錄下的文件,使用宏替換的方式加載,而非require。

/Scripts/PerFile/: 針對文件路徑中文件名相關的漏洞,常用于檢測備份文件、BashRCE、PHP CGI、URI XSS等

/Scripts/PerFolder/: 針對URI路徑中文件夾的漏洞探測,如備份文件夾、探測后臺路徑等

/Scripts/PerScheme/: 針對變量輸入點的掃描,包括GET、POST參數、Http請求頭、Cookie參數等

/Scripts/PerServer/: 針對不同域名或主機的檢測,每個“站點”只執行一次

/Scripts/PostCrawl/: 針對POST請求的掃描,在爬蟲期間即可執行

/Scripts/PostScan/: 只針對POST請求的掃描,常用于存儲型漏洞掃描,執行期間不會上報漏洞,通常借助于DNSLog技術異步觸發,一旦觸發即漏洞存在。

/Scripts/WebApps/: 只針對檢測到的相關WebApps類型進行檢測。awvs會識別服務類型,新版指紋特征在/httpdata/12-WebAppDetection.js中,11.x版本之前在.xml的配置文件中。

/Crawler下包含一些爬蟲相關的處理腳本

/httpdata、/lib包含一些基礎腳本

/lib/legacy/legacy.js是一個非常核心的文件,是所有腳本的先導,它解釋了掃描引擎(C++)如何與V8進行數據交互,如果你想運行這些代碼,你最好得模擬一個掃描引擎,代碼量不小,不建議嘗試。

其他的目錄留給大家探索。

還有一個大家關注的,獲取AWVS的漏洞描述文件:很簡單,使用數據庫連接工具連接pgsql后dump即可,用戶名和密碼在應用配置目錄下找,一般在/AppData/隱藏目錄下

核心代碼

只有簡簡單單15行代碼就搞定。確要精簡的話5行代碼也行。

#!/usr/bin/env python3import struct, zlib, os, datetimemask, pos = 2 ** 32 - 16, 32base_path = os.path.abspath("awvs_script_blob_decode_" + datetime.date.today().isoformat())with open('wvsc_blob.bin', 'rb') as fp: s = fp.read() while pos < len(s): file_len = struct.unpack(' d = zlib.decompress(s[pos + 4: pos + 4 + file_len]) path_len = ord(struct.unpack(' path = os.path.join(base_path, bytes.decode(d[2 + 1: 2 + path_len])) os.makedirs(os.path.dirname(path), exist_ok=True) open(path, 'wb').write(d[2 + path_len + 1 + 2 + (1 if (len(d) - path_len - 3) > 2 ** 14 else 0) + (1 if (len(d) - path_len - 3) > 2 ** 21 else 0):]) pos += ((file_len + 4) & mask) + 16

免責聲明

該腳本僅用于個人私下研究技術交流用,一切后果就使用者承擔

*本文作者:gatlindada,轉載請注明來自FreeBuf.COM

精彩推薦

總結

以上是生活随笔為你收集整理的awvs 13使用_如何解密AWVS?15行代码就够了!的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。