[原始碼和文件分享]使用原始套接字Raw Socket實現資料包嗅探
背景
網路上隨時都流通了大量的資料包,我們要想實現抓包並分析,實現思路思路大概是:在合適的時候捕獲資料包,儲存到緩衝區,作為備用;然後,按照一定的結構和格式去讀取緩衝區的內容。由於各種公開的網路協議是已知的,所以對於資料包的分析就比較簡單。
通常我們都是使用類似WireShark的抓包軟體嗅探資料包,這些抓包工具大部分都是基於WinPcap庫實現的資料包嗅探功能。而現在,本文講解下使用原始套接字的RawSocket方式實現資料包的嗅探。當然,和WinPcap相比,Raw Socket有很大的侷限性。,它只能抓到IP層及以上的資料包,抓不到MAC層的資料包。
但是,Raw Socket開發的程式使用起來比較方便,不需要額外安裝什麼。本文就把實現的過程原理寫成文件,分享給大家。
參考文件和完整的文件和原始碼下載地址:
https://www.write-bug.com/article/1737.html
相關推薦
[原始碼和文件分享]使用原始套接字Raw Socket實現資料包嗅探
背景 網路上隨時都流通了大量的資料包,我們要想實現抓包並分析,實現思路思路大概是:在合適的時候捕獲資料包,儲存到緩衝區,作為備用;然後,按照一定的結構和格式去讀取緩衝區的內容。由於各種公開的網路協議是已知的,所以對於資料包的分析就比較簡單。 通常我們都是使用類似WireShark的抓包軟體嗅
[原始碼和文件分享]基於C#和SQL SERVER資料庫實現的學生圖書管理系統
1 專案介紹 1.1 課程設計的目標 通過課程集中實踐,要求學生加深對講授內容的理解,累積經驗、學會獨立上機除錯程式;並且逐步達到綜合運用封裝、繼承和多型等C#難點知識,更深地理解面向物件程式設計的基本概念與方法,從而學會利用C#語言解決一般應用問題,能設利用視覺化程式設計技術開發複雜和綜合
[原始碼和文件分享]基於ASP.NET和SQL SERVER實現的電信報表系統
1 需求分析 專案總體目標是搭建中國網通的報表系統管理平臺,不僅滿足目前的業務需要,還要滿足公司未來的發展,而且要具備良好的可擴充套件性,在網通與聯通合併之後依然能夠正常工作。 1.3 資料字典 手工錄入資料 = 出賬表 + 卡銷售表 + 網間結算表 + 預存轉入表 + 通知單表
[原始碼和文件分享]使用同一資料庫基於TCP Socket和Websocket實現的相互即時通訊系統
摘 要 隨著網路通訊和計算機技術的發展,人們越來越希望能夠即時傳送和接收網際網路訊息。與此同時隨著網際網路的發展在HTML5中提出了websocket協議,能更好的節省伺服器資源和頻寬並且伺服器和瀏覽器能夠雙向實時通訊。為了能讓使用者體驗傳統客戶端和web帶來的即時通訊結合的超爽體驗,本次畢業設
[原始碼和文件分享]基於JAVA WEB和MYSQL資料庫實現的大學圖書館管理系統APP
一、系統開發目的 幾年前的web2.0時代給我們帶來的衝擊還在擴大。緊接著的 iPhone 和 Android 平板電腦的日益流行,使得我們可以用一種很輕鬆的手勢,觸控,語言等方式與網際網路互動。根據調查顯示,移動裝置的佔有率會在幾年後超過傳統pc,Windows在2012年9月推出的最新Win
[原始碼和文件分享]基於JAVA和SQL SERVER資料庫實現的火車票預售系統
1 系統設計 1.1 設計目的 乘坐火車是我們生活中幾乎不可缺少的一件事兒,每天都會有各種各樣的火車班次釋出與被預定。針對這個火車票預售的環節我設計了一個火車票預售系統,為購票使用者與賣票管理人員之間搭建平臺。讓我們的使用者能夠通過該軟體對管理人員釋出的航班進行預購與查詢。另一方面也可以加強
[原始碼和文件分享]基於C#和SQL SERVER資料庫實現的餐飲管理系統
摘 要 餐飲管理系統作為一個餐飲的基本管理,是餐飲服務業對職工以及餐飲的日常管理。開發餐飲管理系統,正是完善餐飲業資訊化管理的重要環節。人工操作已很難滿足餐飲業資訊化管理的要求,面對龐大的資訊量,該方式現存在很多弊端。因此,建立現代化的智慧管理系統勢在必行。這樣也大大減輕了餐飲業內部人員的工作量
[原始碼和文件分享]基於JSP和SQL SERVER資料庫實現的圖書資訊管理系統
一、功能概述 圖書資訊管理系統是建立在資訊科技基礎上,以系統化的管理思想,為普通讀者和管理員提供圖書檢視,增加,刪除,修改圖書資訊功能的平臺,。它整合了回到首頁、普通使用者註冊,使用者登入,圖書基本資訊檢視,圖書的增加,圖書的刪除,和圖書的修改七個功能模組。圖書資訊管理系統以圖書資訊的管理為核心
[原始碼和文件分享]修改登錄檔的方式實現程式開機自啟動
背景 想必實現程式開機自啟動,是很常見的功能了。無論是惡意程式,還是正常的應用軟體,都會提供這個功能,方便使用者的使用。程式開機自啟動,顧名思義,就是計算機開機後,不用人為地去執行程式,程式就可以自己執行起來。對於這個功能的,一直都是殺軟重點監測的地方。因為,對於病毒來說,重要的不是如何被破壞,
[原始碼和文件分享]基於WinInet的HTTPS檔案下載實現
背景 如果你之前寫過基於WinInet庫的HTTP下載檔案,那麼你在看完本文之後,就會發覺,這是和HTTP檔案下載的程式碼幾乎是一模一樣的,就是有幾個地方的區別而已。但是,本文不是對HTTP和HTTPS在WinInet庫中的區別進行總結的,總結就另外寫。 本文就是基於WinInet網路庫,實
[原始碼和文件分享]基於python的B站彈幕資料分析(爬蟲+視覺化)
python—B站彈幕資料分析 1 背景 在視訊網站上,一邊看視訊一邊發彈幕已經是網友的習慣。B站就是其中一個比較出名的彈幕網站,許多年輕人都喜歡逛B站,看喜歡的動漫亦或某些UP主做的一些剪輯。本專案,就是對B站彈幕資料進行分析。選取分析的物件是B站上一部國漫《全職高手》。 2 環境的安
Linux網路程式設計之原始套接字-ping協議實現
1.概述 PING協議是用來檢驗本地主機與遠端主機是否連線,傳送的是ICMP ECHO_REQUEST包。普通的套接字是基於TCP或者是UDP的,無法傳送ICMP包,所以必須用原始套接字來實現。PING協議的客戶端型別值為8,程式碼值為0,表示請求。而PING協議的響應端型別值為0,程式碼值也為
原始套接字,接收所有資料的設定方法,及程式碼。
<img src="https://img-blog.csdn.net/20150320091844253?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU3RheV9EZWVw/font/5a6L5L2T/fontsize
linux sock_raw原始套接字程式設計 (轉)和Linux下Libpcap原始碼分析和包過濾機制
sock_raw原始套接字程式設計可以接收到本機網絡卡上的資料幀或者資料包,對與監聽網路的流量和分析是很有作用的.一共可以有3種方式建立這種 socket 1.socket(AF_INET, SOCK_RAW, IPPROTO_TCP|IPPROTO_UDP|IPPROT
原始套接字-TCP/IP下三層數據顯示
pf_packet printf linu 0.11 pes span close double ddr 1 #include <stdio.h> 2 #include <errno.h> 3 #include <unistd.
網絡駭客初級之原始套接字(SOCK_RAW)
原始套接字 駭客 網絡駭客初級之原始套接字(SOCK_RAW)本文用實際程序完成了MAC數據包分析,網絡數據分析,MAC地址掃描器和飛秋欺騙在這裏我把原來的入門改成了初級,因為對於原始套接字的操作確實在普通的TCP,UDP之上TCP和UDP確實涵蓋了普通的網絡應用程序,但請註意“普通”二字,要成為一名
網路程式設計——原始套接字實現原理
目錄 1. 基礎知識 1.1、概述 1.2、鏈路層原始套接字 1.3、網路層原始套接字 2、原始套接字的實現 2.1 原始套接字報文收發流程 2.2鏈路層原始套接字的實現 2.2.1 套接字建
原始套接字
步驟 傳遞 進程 讀寫 使用 整數 註意 完整 raw 定義原始套接字的目的在於提供訪問某個協議的接口, 通過原始套接字, 進程可以讀寫ICMPv4, IGMPv4和ICMPv6等分組, 進程也可以讀寫內核不處理其協議字段的IPv4數據報, 進程還可以使用IP_HDRINC
原始套接字 傳送 TCP SYN 包
通過原始套接字、setsockopt、IP_HDRINCL套接字選項,我們可以在應用程序裡面構造自己的IP包: 所以我們在初始化原始套接字之後,可以呼叫setsockopt函式來開啟IP_HDRINCL套接字選項,並且構造自己的IP頭,TCP/UDP頭,最後再像傳送普通包一樣呼叫sendt
[原始碼和文件分享] 仿QQ和飛秋並支援語音視訊白板螢幕共享的即時聊天軟體
功能需求分析 使用者端的基本聊天資訊傳送,這些基本聊天資訊包括文字和圖片。文字和圖片聊天是聊天軟體最基礎的功能。使用者通過輸入IP來查詢使用者,並申請加為好友,在對方同意加為好友後,線上使用者列表就會更新使用者,把加入的使用者新增到使用者列表中。這樣,兩個使用者之前就可以實現通訊了。在資訊