許朝暉
湛江港(集團)股份有限公司,廣東 湛江 524000
FTP數據包的捕獲與分析策略
許朝暉*
湛江港(集團)股份有限公司,廣東 湛江 524000
在基于FTP的IP協議理論的初步上,研究網絡包捕獲、面向對象方法分析需求,以及功能設計。通過測試,最終實現數據包的捕獲,流檢測和統計功能,達到了預定的要求,是在Visualc++ 6環境開發的,使用Socket-Raw注冊表、編程和IP助理APIVC編程方法,網絡的運行狀態提供了網絡管理員理解數據。
網絡管理;數據捕獲;VC++
網絡技術的急速發展和網絡建造對應用程序和用戶的基礎上提高網絡性能的需求,讓網絡管理成了需緊急解決的事情,采用有效的管理網絡,保證網絡運行的穩定性和可繼續持續發展。而且,更重要的是,隨著網絡規模的發展,黑客攻擊的案例越來越多的侵襲,造成了厲害的挑戰,網絡服務的穩定性、信息安全和網絡秩序,在整個網絡管理系統的網絡安全管理中發揮著越來越重要的作用。
在網絡研究的同時,我們也進行了初步研究FTP(File Transfer Protocol,文件傳輸協議)協議。通過數據分析報告,理解FTP的包格式的數據包在不同的網絡環境和網絡中的傳輸路徑。目前,在同一子網范圍內通過鄰居的電腦鏈接發現當地的FTP地址自動配置協議的主機,并獲得子網內其他主機的地址,地址可以實現在一個子網主機之間純FTP環境下的通信。
FTP協議的內容和目標。文件傳輸是針對整個互聯網信息和文件的一個傳輸協議。針對文件傳輸的環境和系統要求,分類清楚和帳戶與用戶的區別。
(一)協議的目標
促進程序和數據文件的共享;鼓勵使用遠程計算機;用戶不需要面對不同的文件系統在不同的主機上;高效、可靠的數據傳輸。
(二)協議的作用
讓客戶連上遠程電腦上的遠程電腦,并將文件從遠程電腦復制到本地電腦,或者本地電腦文件復制到遠程電腦。
(三)傳輸層的編程接口—Windows套接字編程技術(四)系統需求分析
文件傳輸協議(File Transfer Protocol,FTP)是用于在網絡上進行文件傳輸的一套標準協議。它屬于網絡傳輸協議的應用層。FTP是一個8位的客戶端-服務器協議,能操作任何類型的文件而不需要進一步處理,就像MIME或Unicode一樣。
控制連接:用戶PI和服務器PI有難交換的命令和響應信息交換路徑。
數據連接:一個全雙向連接數據傳輸與規定的模式和類型。可以傳送的數據是文件的某個章節或者一半或者完整的。
DTP(Dynamic Trunk Protocol):動態中繼協議,是思科擁有的協議。數據傳送過程作用于建造和管理數據。可以是被動的也可以是主動的。
PI(Protocol Interpreter):協議解析器。客戶端和服務器用于解析協議,它們的完成分別被稱為用戶PI和服務器PI。
服務器DTP:數據傳送過程中,在平時的“主動”狀態,是使用“監聽”數據端口建造數據連接。它完成了傳輸和存儲數據的作用。合并在服務器端PI的運行下傳送數據。也可以在“被動”模式中使用服務器端DTP。
服務器PI:服務器PI在L端口監聽,連接請求的用戶協議解析器和建立控制連接。它從用戶PI接收達標的FTP命令,發送命令和回應,并監管服務器DTP;
用戶DTP:數據傳輸流程和聽力上的FTP服務器進程數據端口。如果兩個服務器在上面傳遞數據。
用戶PI:用戶協議解析器使用的U端口建立控制連接FTP服務器進程和管理用戶DTP文件時轉移。
整個系統可以分為四個模塊,分別為套接字模塊、捕獲IP數據包模塊、解析IP數據包模塊和輸出模塊。
(一)套接字模塊
套接字模塊主要包括原始套接字的創建和原始套接字的設置。這個模塊創建一個原始的套接字,然后將套接字綁定到一個本地網絡接口,然后設置套接字,這樣它就可以捕獲通過網絡接口的所有IP數據包。
(二)FTP數據包的捕獲模塊
這個模塊主要負責捕獲FTP數據包,然后將捕獲的數據包提交給FTP數據包解析模塊。這個模塊用原始套接字的集合捕獲FTP數據包,然后將數據包提交到解析模塊,直到鍵盤輸入ctrl+c。
(三)FTP數據包分析模塊
該模塊負責FTP數據包的分析,也就是說,根據FTP數據包的格式,從捕獲的FTP數據包中提取信息,然后提交到輸出模塊。
(四)輸出模塊
這個模塊負責輸出FTP數據包信息的輸出,包括輸出到標準輸出和日志文件。
系統開發環境為VC++ 6,利用Socket實現數據包捕獲功能。在數據包捕獲具體實現之前,設置網卡模式。主要包括:創建和生成原始套接字:設置FTP頭選項,將標志設置為true,處理FTP頭,將原有套接字綁定到本地網絡大廳,建立套接字模型,啟動線程接收數據。根據不同的選擇執行不同的程序,并在對話框中顯示最終的結果。網絡包系統的捕獲與分析主要實現網絡數據包捕獲和分析的功能。系統功能基本達到了原始目標,實現了數據采集和初步協議分析。
詳細設計與實現。一般情況下,網絡接口響應僅為兩個數據幀,一個是硬件匹配的數據幀與自己,另一個是廣播到所有的計算機數據。系統,數據幀收發卡完成,從網卡程序接收數據包,根據硬件地址來確定是否與機器硬件地址匹配,如果匹配將調用CPU的中斷響應,然后調用驅動程序設置網卡地址中斷程序調用驅動系統接收數據棧處理,如果不相關,直接丟棄數據包。
伴隨著計算機以及互聯網快速發展的同時,人們也開始日益關注于網絡安全的問題。影響網絡正常運行的問題例如:病毒、惡意攻擊、非法訪問等等,有許多種網絡防御的技術都被應用到網絡安全的管理體系中。而數據包的捕獲與解析從數據包流量的分析角度,通過實時地監控和采集FTP網絡數據包信息,來檢驗有沒有哪些行為違反了安全策略以及是否有網絡工作的異常,其中一種分析網絡狀況的有效方法就是網絡數據包的捕獲與分析,這也是本文研究的目的所在。
[1]韓春靜,唐海娜,李俊.IP協議分析儀的設計與實現[J].計算機工程與應用,2005,41(21):128-132.
[2]曹錚.互聯網異常流量的Netflow分析[J].中國數據通信,2004,6(8):77-82.
TP
A
1006-0049-(2017)21-0187-01
許朝暉(1987-),男,廣東湛江人,本科,湛江港(集團)股份有限公司,寬帶線務員,研究方向:通信工程。