基于Python實(shí)現(xiàn)的抓包分析軟件
訪問(wèn)【W(wǎng)RITE-BUG數(shù)字空間】_[內(nèi)附完整源碼和文檔]
一、簡(jiǎn)介
這是一個(gè)學(xué)習(xí)模仿WireShark的抓包軟件??梢缘墓δ苡校簜陕?tīng)、解析、構(gòu)造數(shù)據(jù)包等。其中還包括擴(kuò)展功能:流量監(jiān)測(cè)和攻擊檢測(cè)(Land攻擊,Ping of Death)。軟件目前支持解析:IP、IPv6、ARP、TCP、UDP、ICMP、ICMPv6、SSDP、HTTP、TLS。
二、主要功能
偵聽(tīng)指定網(wǎng)卡或所有網(wǎng)卡,抓取流經(jīng)網(wǎng)卡的數(shù)據(jù)包
解析捕獲的數(shù)據(jù)包每層的每個(gè)字段,查看數(shù)據(jù)包的詳細(xì)內(nèi)容
可通過(guò)不同的需求設(shè)置了BPF過(guò)濾器,獲取指定地址、端口或協(xié)議等相關(guān)條件的報(bào)文
針對(duì)應(yīng)用進(jìn)行流量監(jiān)測(cè),監(jiān)測(cè)結(jié)果實(shí)時(shí)在流量圖顯示,并可設(shè)置流量預(yù)警線,當(dāng)流量超過(guò)預(yù)警線時(shí)自動(dòng)報(bào)警
提供了以餅狀圖的形式統(tǒng)計(jì)ARP、TCP、UDP、ICMP報(bào)文,以柱狀圖的形式統(tǒng)計(jì)IPv4、IPv6報(bào)文
可將抓取到的數(shù)據(jù)包另存為pcap文件,并能通過(guò)打開(kāi)一個(gè)pcap文件對(duì)其中的數(shù)據(jù)包進(jìn)行解析
可逐層逐字段構(gòu)造數(shù)據(jù)包,實(shí)現(xiàn)自定義數(shù)據(jù)包發(fā)送
三、主要模塊
數(shù)據(jù)報(bào)文采集模塊:完成網(wǎng)絡(luò)接口數(shù)據(jù)的捕獲、解析,可以根據(jù)用戶定義條件組合來(lái)進(jìn)行捕獲,如只監(jiān)視采用TCP或UDP協(xié)議的數(shù)據(jù)包,也可以監(jiān)視用戶希望關(guān)注的相關(guān)IP地址的數(shù)據(jù)包,同時(shí)完成數(shù)據(jù)封包日志記錄,提高了系統(tǒng)的靈活性。此外,對(duì)IP類型、ARP、TCP、UDP、ICMP的數(shù)量進(jìn)行統(tǒng)計(jì)。
應(yīng)用流量監(jiān)測(cè)模塊:獲取當(dāng)前正在運(yùn)行的應(yīng)用進(jìn)程,用戶可選擇一個(gè)應(yīng)用進(jìn)行流量監(jiān)測(cè),獲取應(yīng)用中流量信息,同時(shí)對(duì)一些常見(jiàn)的入侵攻擊特征進(jìn)行判斷,如根據(jù)源目的地址是否相同判斷Land攻擊、IP頭部長(zhǎng)度是否過(guò)長(zhǎng)判斷ping拒絕服務(wù)攻擊,并發(fā)出預(yù)警。
報(bào)文偽造模塊:可以自行構(gòu)造Ether、IP、TCP、UDP、ICMP、ARP報(bào)文,并選擇send()、sendp()、sr()、srl()、srloop()五種方式發(fā)送報(bào)文以實(shí)現(xiàn)簡(jiǎn)單攻擊或?qū)CP/IP進(jìn)行調(diào)試。
界面顯示模塊:設(shè)計(jì)系統(tǒng)主窗口即數(shù)據(jù)報(bào)文采集界面、應(yīng)用流量監(jiān)測(cè)界面、報(bào)文偽造界面。并完成報(bào)文統(tǒng)計(jì)圖的顯示,流量圖的顯示。



