抓取網路資料報

2021-07-02 15:30:44 字數 1078 閱讀 8030

當使用者在區域網內傳遞資料時,處於同一網段的所有計算機的網絡卡都會收到這些資料,儘管它不是傳遞資料的目的地。利用這一特點,我們就可以截獲區域網中傳遞的資料。為了能夠獲取通過網絡卡上的資料,需要建立原始套接字。使用者可以將socket函式的第二個引數設定為sock_raw來建立原始套接字。例如:

m_socket=socket(af_inet,sock_raw,ipproto_ip);
由原始套接字獲得的資料是ip資料報,而不僅僅是乙個使用者資料。它還包含ip資料頭和相應協議的資料頭,最後才是使用者資料。為了獲得使用者資料,需要逐一去掉ip資料頭及各個協議的資料頭。

//建立套接字,開始監聽網路

dword inbuffer=1;

dword outbuffer[10];

dword revalue=0;

if(wsaioctl(m_sock,sio_rcval,&inbuffer,sizeof(inbuffer),&outbuffer,sizeof(outbuffer),&revalue,null)==socket_error)

else

m_pthread=afxbeginthread(threadfun.(void*)this);

}uint threadfun(lpvoid pfaram) //去除資料頭

memst(buffer,0,1000);

ret=recv(pdlg->m_sock,buffer,1000,0);

if(ret==socket_error)

else

//接收到的資料

case ipproto_udp:

case ipproto_tcp:

}//設定資料大小

str.format("%d",netlen);

pdlg->m_list.setitemtext(pdlg->m_list.getitemcount()-1,4,str);

str.empty();

//設定資料

if(pdata!=null)

str.empty();}}

return

0;}

pacp 網路資料報抓取

我們可以分5個步驟來描述使用libpcap編寫程式的步驟 我們首先要決定監聽的裝置介面,這個可以用乙個string來表示,也可以由pcap提供給我們。初始化pcap。我們要告訴pcap需要監聽的是哪乙個裝置。pcap對於不同的裝置,使用session來區分它們,乙個裝置就是一 個 session 我...

網路資料報抓取工具 如何抓取網路包?兩個方法告訴你

網路世界中的資料報互動我們肉眼是看不見的,它們就好像 了一樣,我們對著課本學習計算機網路的時候就會覺得非常的抽象,加大了學習的難度。還別說,我自己在大學的時候,也是如此。直到工作後,認識了兩大分析網路的利器 tcpdump 和 wireshark,這兩大利器把我們 看不見 的資料報,呈現在我們眼前,...

fiddler抓取手機資料報

一 fiddler設定 1 開啟fiddler,tools fiddler options 配置完後記得要重啟fiddler 選中https中的 decrpt https traffic fiddler就可以截獲https請求 選中connections中的 allow remote compute...