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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

基于XTerm模拟发包实现

發(fā)布時(shí)間:2023/12/16 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于XTerm模拟发包实现 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

介紹

  • XTerm是一個(gè)X Window System上的終端模擬器,用來(lái)提供多個(gè)獨(dú)立的SHELL輸入輸出。

  • XTerm使用虛擬終端技術(shù)將遠(yuǎn)程主機(jī)的終端模擬出來(lái),實(shí)現(xiàn)了遠(yuǎn)程終端控制。

  • Iperf 是一個(gè)網(wǎng)絡(luò)性能測(cè)試工具,可以測(cè)試最大TCP和UDP帶寬性能,具有多種參數(shù)和UDP特性,可以根據(jù)需要調(diào)整,可以報(bào)告帶寬、延遲抖動(dòng)和數(shù)據(jù)包丟失。

  • iperf常用參數(shù)表。

參數(shù)說(shuō)明
-bUDP模式的帶寬限制,單位bps
-e顯示更多信息
-f設(shè)置帶寬單位bps、Kbps、Mbps、Gbps以及對(duì)應(yīng)的Bps
-i發(fā)包的間隔時(shí)間,單位s
-l緩沖區(qū)大小,默認(rèn)TCP為128K
-m輸出TCP的最大端長(zhǎng)度(MSS=MTU-TCP/IP header)
-o將信息輸出到文件file中
-p指定端口號(hào)
-u選擇UDP模式,默認(rèn)TCP
-w設(shè)置套接字緩沖區(qū)大小
-B綁定到多個(gè)地址中的一個(gè),UDP時(shí)用于組播分組
-M設(shè)置TCP的最大端長(zhǎng)度
-s服務(wù)器模式
-t設(shè)置傳輸?shù)目倳r(shí)間,單位s
-c客戶端模式
-n設(shè)置發(fā)包的大小,單位Byte
-P設(shè)置線程數(shù),默認(rèn)1線程,服務(wù)器端和客戶端同時(shí)定義
-T設(shè)置TTL值

目的

  • 在mininet中使用XTerm+iperf實(shí)現(xiàn)TCP和UDP發(fā)包模擬。
  • 對(duì)不同流量強(qiáng)度進(jìn)行分析,模擬正常發(fā)包和攻擊流量。

配置

  • apt install mininet安裝mininet環(huán)境。
  • apt install xterm安裝XTerm。
  • 使用mn打開mininet默認(rèn)拓?fù)?#xff0c;輸入xterm h1 h2打開虛擬終端。

模擬

正常TCP

  • TCP的模擬發(fā)包需要建立連接,這里使用h1作為接收端(服務(wù)端),h2作為發(fā)送端(客戶端)。
  • 設(shè)置服務(wù)端接收端口為5566,時(shí)間間隔為1s。
# iperf -s -p 5566 -i 1
  • 此時(shí)使用ifstat查看網(wǎng)絡(luò)流量,發(fā)現(xiàn)并無(wú)大量流量生成。

  • 設(shè)置客戶端使用服務(wù)端套接字連接,發(fā)送10s的數(shù)據(jù)包。

# iperf -c 10.0.0.1 -p 5566 -t 10

客戶端啟動(dòng)到建立TCP連接后,服務(wù)端才能在該端口接收數(shù)據(jù)包。

  • 經(jīng)過(guò)10s的傳輸后,客戶端停止發(fā)送,服務(wù)端產(chǎn)生如下輸出。
------------------------------------------------------------ Server listening on TCP port 5566 TCP window size: 85.3 KByte (default) ------------------------------------------------------------ [ 14] local 10.0.0.1 port 5566 connected with 10.0.0.2 port 47854 [ ID] Interval Transfer Bandwidth [ 14] 0.0- 1.0 sec 2.59 GBytes 22.3 Gbits/sec [ 14] 1.0- 2.0 sec 2.62 GBytes 22.5 Gbits/sec [ 14] 2.0- 3.0 sec 2.53 GBytes 21.7 Gbits/sec [ 14] 3.0- 4.0 sec 2.57 GBytes 22.1 Gbits/sec [ 14] 4.0- 5.0 sec 2.67 GBytes 22.9 Gbits/sec [ 14] 5.0- 6.0 sec 2.71 GBytes 23.3 Gbits/sec [ 14] 6.0- 7.0 sec 2.66 GBytes 22.8 Gbits/sec [ 14] 7.0- 8.0 sec 2.69 GBytes 23.1 Gbits/sec [ 14] 8.0- 9.0 sec 2.70 GBytes 23.2 Gbits/sec [ 14] 9.0-10.0 sec 2.73 GBytes 23.4 Gbits/sec [ 14] 0.0-10.0 sec 26.5 GBytes 22.7 Gbits/sec
  • 正常TCP模擬發(fā)包成功。

正常UDP

  • 相對(duì)于TCP的三次握手,UDP則簡(jiǎn)單粗暴,直接根據(jù)給定套接字就可以進(jìn)行發(fā)包。
  • 仍然選擇h2作為發(fā)送端,設(shè)置服務(wù)端套接字,選擇UDP模式。
# iperf -c 10.0.0.1 -p 5566 -i 1 -u
  • h1作為服務(wù)端,如果不打開服務(wù)端口接收數(shù)據(jù),通過(guò)ifstat仍然可以看到有流量發(fā)送出。

與TCP模式不同,如果服務(wù)端未啟動(dòng),客戶端是無(wú)法發(fā)出數(shù)據(jù)包的。

  • 設(shè)置服務(wù)端接收端口,再次查看效果。
  • 發(fā)現(xiàn)服務(wù)端成功接收UDP數(shù)據(jù)包,正常UDP發(fā)包模擬完成。

DoS攻擊

  • 這里使用scapy模擬DoS攻擊,scapy是用python編寫的,所以使用pip install安裝即可。
  • 具體實(shí)現(xiàn)腳本參考我的另一篇博客。

Ping-DoS

  • 將每個(gè)攻擊腳本進(jìn)程設(shè)置為20,在XTerm中直接使用python3運(yùn)行。

  • 可以很明顯的看到目標(biāo)機(jī)的端口流量激增。

  • 使用htop查看本地進(jìn)程,看到幾乎全是腳本進(jìn)程。

  • Ping DoS完成。

目標(biāo)機(jī)帶寬足夠,Ping DoS無(wú)顯著影響但我物理機(jī)跑得呼呼響。

SYN-Flood

  • 操作類似Ping DoS,這里只給出實(shí)現(xiàn)效果。

  • 由于只發(fā)送SYN,而不完全建立連接,故沒(méi)有發(fā)送其他數(shù)據(jù)包,目標(biāo)機(jī)端口流量不會(huì)有變化。

這里只用了5個(gè)進(jìn)程,但是效果很強(qiáng)烈,物理機(jī)出現(xiàn)卡頓。

總結(jié)

以上是生活随笔為你收集整理的基于XTerm模拟发包实现的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。