WinDis 32技術實現網絡通信監測論文

時間:2022-09-13 08:54:00

導語:WinDis 32技術實現網絡通信監測論文一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。

WinDis 32技術實現網絡通信監測論文

【摘要】本文論述了網絡通信監測的實現原理與實現過程,遵照國際標準化開放系統互聯(OSI)七層體系結構,利用網絡驅動接口規范WinDis32V5.0技術實現了在應用層對數據鏈路層的控制,完成了對網上流動數據幀的實時截獲、解封與分析。

【關鍵詞】網絡分層WinDis32技術網絡信息截獲數據幀NDIS網絡適配器

1.前言

隨著計算機網絡技術的發展,各類網絡規模的擴大,遠程訪問的增加,虛擬專用網(VPN)的出現和Internet的普及,網絡安全性已成為計算機網絡領域一門重要的研究學科。

網絡監控是保障網絡安全性的基本措施之一。網絡監控,用于監測網上流動信息,并對網絡信息給予適當控制。網絡監控,可用于調試網絡應用程序,判斷應用程序是否正確地發送或接收了數據包。網絡監控,還可用于監視網絡信息,杜絕不健康站點的不健康內容,維護網絡環境。應用于安全防范,可監視我方信息內容、保障網絡安全,截獲情報、分析懷有敵意方的網站。在計算機網絡上實施有效的攻擊與保護,是網絡監控技術在軍事上的重要發展方向之一。

本文論述的網絡通信實時監測的實現,是用于特殊目的的數據通信程序設計的突破口,是網絡監控技術的基礎部分,其實現基于網絡體系結構與WinDis32技術。

2.網絡體系結構

現代計算機網絡設計是按高度的結構化方式進行的,國際標準化組織(ISO)為更廣泛的計算機互聯制定了標準化的開放系統互聯(OSI)網絡體系結構,如圖1所示。

OSI參考模型用結構描述方法,即分層描述的方法,將整個網絡的通信功能劃分為七個部分(也叫七個層次),每層各自完成一定的功能。由低層至高層分別稱為物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層和應用層。兩臺網絡主機之間進行通信時,發送方將數據從應用層向下傳遞到物理層,每一層協議模塊為下一層進行數據封裝,數據流經網絡,到達接收方,接著再由下而上通過協議棧傳遞,并與接收方應用程序進行通信。

在通用網絡中,數據鏈路層由網絡適配器實現,本文中網絡通信監測的立足點在于數據鏈路層,基于電纜是固有的廣播性介質,通過對網絡適配器的控制,實時截獲與分析經過網絡適配器的所有網上流動信息。

3.WinDis32技術

WinDis32全稱為Win32NDIS(NetworkDriverInterfaceSpecification)網絡驅動接口規范,用于開發Windows產品,可在Windows9X和WindowsNT上直接訪問NDIS媒體訪問控制(MAC)驅動接口。圖2顯示了Windows網絡驅動組件與Win32NDIS結構組件:

圖2.Windows網絡驅動組件與Win32NDIS結構組件

WinDis32網絡組件由四部分組成:NDIS適配器、PCANDIS5NDIS協議驅動、W32N50WinDis32APIDLL、WinDis32應用程序。WinDis32應用程序調用W32N50.DLL動態鏈接庫提供的API應用程序接口,通過NDIS協議驅動模塊,實現對NDIS適配器進行的存取操作。網絡驅動接口規范NDIS的主要特征是所有適配器相關驅動均由NDIS接口打包,例如,最底層NDISNIC驅動不能對網卡直接執行I/O,它通過NDIS打包服務來訪問硬件;高層WindowsNDIS網絡組件使用NDIS打包界面與適配器相關驅動通信。只有NDIS協議驅動可以調用NDIS打包,訪問NDIS適配器。

WinDis32應用程序接口函數包括:W32N_OpenAdapter(),打開一個已被命名的NDIS適配驅動器,若操作成功,則生成一個面向適配器對象的WinDis32適配器句柄,這一句柄被隨后多個在該適配器上操作的W32N_XXX函數所用;W32N_CloseAdapter(),關閉已打開的適配器句柄;W32N_PacketRead(),數據幀讀操作;W32N_PacketReadEx(),數據幀異步讀操作;W32N_PacketSend(),發送數據幀操作;W32N_PacketSendEx()、W32N_MakeNdisRequest()等等。

WinDis32技術使得從Win32應用層進行NDIS請求如同在一個內核模式的驅動器內部進行請求一樣簡單,并支持多個網絡適配器同時打開,完成各自的信息發送與接收。

4.網絡信息監測的實現

網絡信息監測程序分為信息截獲與信息分析兩大部分,其中信息截獲程序流程如圖3所示,采用多進程與多線程技術,完成數據的實時截獲。

其中網絡適配器列表通過讀取系統注冊表生成;網絡適配器詳細信息包括適配器型號、網絡適配器物理地址、傳輸最大幀、傳輸速率以及機內標識符,通過函數W32N_MakeNdisRequest()獲得。

協議過濾部分是包括PCAUSA端口的PCANDIS5協議驅動,BPF過濾器是由UNIX環境到Windows的模擬機制,為Win32應用程序提供了一種普通而又便利的機制,可過濾指定協議,由協議驅動執行,拒絕不想要的數據幀。支持協議包括:傳輸控制協議TCP、互連網協議IP、地址解析協議ARP、反向地址解析協議RARP、互連網控制報文協議ICMP、互連網組管理協議IGMP、NovellSPX/IPX協議IPX、用戶數據報協議UDP、NetBEUI協議、AppleTalk協議。

信息分析部分利用已獲知的媒體訪問控制協議,提取出數據幀中的有效域值,如源主機物理地址、目的主機物理地址、幀長度等。并同時為每一被截獲的數據包打上時標,注上序列號,為下一步數據重組提供可靠依據。

接收數據幀顯示與信息統計結果范例如下:

包序列號:0000000032時間:0005860470msec長度:54/54

Ethernet目的:00.40.05.39.A2.B0源:00.00.B4.86.74.FA類型:0x0800

000000:00400539A2B00000:B48674FA08004500.@.9......t...E.

000010:0028260340002006:A3256464647A6464.(&.@...%dddzdd

000020:64650406008B0040:BF14006C24B95010de.....@...l$.P.

000030:223812EA0000:"8..............

包序列號:0000000033時間:0005860764msec長度:109/109

Ethernet目的:00.40.05.39.A2.B0源:00.00.B4.86.74.FA類型:0x0800

000000:00400539A2B00000:B48674FA08004500.@.9......t...E.

000010:005F270340002006:A1EE6464647A6464._''''.@....dddzdd

000020:64650406008B0040:BF14006C24B95018de.....@...l$.P.

000030:2238DEC600000000:0033FF534D421A00"8.......3.SMB..

000040:0000000000800000:0000000000000000................

000050:00000308252D0308:014C080108008010....%-...L......

000060:0000100000000000:0000000000................

包序列號:0000000034時間:0005860766msec長度:1514/1514

Ethernet目的:00.00.B4.86.74.FA源:00.40.05.39.A2.B0類型0x0800

000000:0000B48674FA0040:0539A2B008004500....t..@.9....E.

000010:05DC640B40008006:FF68646464656464..d.@....hdddedd

000020:647A008B0406006C:24B90040BF4B5010dz.....l$..@.KP.

000030:20B786DA00000000:10007E8B77DAD2D0.........~.w...

000040:D727599A8F18D377:15D56C860F2C623E

...

停止數據幀接收

應用統計:

已接收數據幀數目:34

已發送數據幀數目:0

5.進一步研究與發展

本文所研究的網絡信息監測屬于計算機網絡系統安全對策研究的一部分,屬于網絡信息監測的基礎性研究。以此研究成果為基礎,可進行進一步的軟件開發,從而實現網絡通信狀況實時監測、情報獲取、網上各站點地址分析、站點類型分析,為計算機網絡的安全維護提供監測手段,因此,具有特別的意義。

參考文獻

1.PCAUSAWinDis32V5.0文檔1998.3

2.劉錦德等計算機網絡大全電子工業出版社1997.7

3.KrisJamsa等INTERNET編程電子工業出版社1996.5

4.DavidJ.KruglinskiVisualC++技術內幕清華大學出版社1996.5

5.廖湖聲面向對象的Windows程序設計基礎人民郵電出版社1996.2

6.張國峰C++語言及其程序設計教程電子工業出版社1992.12

7.湯子瀛等計算機操作系統西安電子科技大學出版社1998.4

8.劉彥明等實用網絡編程技術西安電子科技大學出版社1998.4

9.何莉等計算機網絡概論高等教育出版社1995.4

10.杜毅Unix系統組網技術電子工業出版社1998.3、