精品一区二区中文在线,无遮挡h肉动漫在线观看,国产99视频精品免视看9,成全免费高清大全

原始套接字透析的構(gòu)建sniffer -電腦資料

電腦資料 時間:2019-01-01 我要投稿
【salifelink.com - 電腦資料】

  大家知道,以太網(wǎng)采用廣播機制,所有與網(wǎng)絡(luò)連接的工作站都可以看到網(wǎng)絡(luò)上傳遞的數(shù)據(jù),

原始套接字透析的構(gòu)建sniffer

。通過查看包含在幀中的目標地址,確定是否進行接收或放棄。如果證明 數(shù)據(jù)確實是發(fā)給自己的,工作站將會接收數(shù)據(jù)并傳遞給高層協(xié)議進行處理。但是,如果讓網(wǎng)卡置于混雜模式(Promiscuous mode),則網(wǎng)卡不會鑒別幀的MAC地址,而是一律接收。

  上圖給出了以太網(wǎng)的幀格式,網(wǎng)卡是通過圖中的MAC地址進行ID標識的。傳說中的網(wǎng)絡(luò)嗅探(sniffer)就是指讓網(wǎng)卡進入混雜模式從而接收正在局域 網(wǎng)總線上發(fā)送的所有報文。為什么能夠嗅探到局域網(wǎng)上的所有報文,是因為基于IEEE 802.3的以太網(wǎng)在MAC層采用廣播方式發(fā)送幀。因此,從理論上來講,我們可以編寫 程序監(jiān)聽局域網(wǎng)上的所有信息。QQ、MSN監(jiān)聽軟件就是基于這一 機理的,它可以監(jiān)聽局域網(wǎng)上所有用戶的QQ、MSN聊天記錄。

  為了實現(xiàn)sniffer,我們應(yīng)首先讓網(wǎng)卡進入混雜模式并建立和設(shè)置原始套接字為親自處理報頭:

  //初始化SOCKET

  WSADATA wsaData;

  iErrorCode = WSAStartup(MAKEWORD(2, 1), &wsaData);

  CheckSockError(iErrorCode, "WSAStartup");

  SockRaw = socket(AF_INET, SOCK_RAW, IPPROTO_IP);

  CheckSockError(SockRaw, "socket");

  //獲取本機IP地址

  char name;

  iErrorCode = gethostname(name, MAX_HOSTNAME_LAN);

  CheckSockError(iErrorCode, "gethostname");

  struct hostent *pHostent;

  pHostent = (struct hostent*)malloc(sizeof(struct hostent));

  pHostent = gethostbyname(name);

  SOCKADDR_IN sa;

  sa.sin_family = AF_INET;

  sa.sin_port = htons(6000);

  memcpy(&sa.sin_addr.S_un.S_addr, pHostent->h_addr_list, pHostent->h_length);

  iErrorCode = bind(SockRaw, (PSOCKADDR) &sa, sizeof(sa));

  CheckSockError(iErrorCode, "bind");

  //設(shè)置SOCK_RAW為SIO_RCVALL,以便接收所有的IP包

  DWORD dwBufferLen;

  DWORD dwBufferInLen = 1;

  DWORD dwBytesReturned = 0;

  iErrorCode = WSAIoctl(SockRaw, SIO_RCVALL, &dwBufferInLen, sizeof(dwBufferInLen)

  , &dwBufferLen, sizeof(dwBufferLen), &dwBytesReturned, NULL, NULL);

  CheckSockError(iErrorCode, "Ioctl");

  下面就可以接收并處理IP報文:

  //偵聽IP報文

  while (1)

  {

  memset(RecvBuf, 0, sizeof(RecvBuf));

  iErrorCode = recv(SockRaw, RecvBuf, sizeof(RecvBuf), 0);

  CheckSockError(iErrorCode, "recv");

  iErrorCode = DecodeIpPack(RecvBuf, iErrorCode);

  CheckSockError(iErrorCode, "Decode");

  }

  Sniffer程序接收到報文后,即可調(diào)用相應(yīng)的程序來分析具體的報文,

電腦資料

原始套接字透析的構(gòu)建sniffer》(http://salifelink.com)。

  對于sniffer我們不得不說的是,僅僅將網(wǎng)卡置于混雜模式并不能保證我們能嗅探到交換式局域網(wǎng)上的所有幀,因為交換式局域網(wǎng)已經(jīng)不再是廣播式/總線傳輸了,為了能嗅探到交換式局域網(wǎng)上的幀,我們需要采用另一項技術(shù)ARP欺騙。

最新文章
主站蜘蛛池模板: 成人国产一区二区三区| 日本sm极度另类视频| 免费人成在线观看| 国产伦久视频免费观看视频| 中文字幕理伦午夜福利片| 亚洲日韩精品欧美一区二区| 国产欧美精品一区二区三区| 韩国v欧美v亚洲v日本v| 99re8这里有精品热视频免费| 国产丰满老熟女重口对白| 韩国三级在线观看久| 好吊妞视频这里有精品| 韩国三级中文字幕hd| 欧美国产综合欧美视频| 欧美色欧美亚洲高清在线视频| 精品久久久久久中文字幕| 九九视频免费精品视频| 国产播放隔着超薄丝袜进入| 日本高清无卡码一区二区久久| 香蕉eeww99国产精选免费| 不卡无在线一区二区三区观| 国产成A人片在线观看视频| 免费A级毛片无码免费视频| 18成禁人视频免费网站| 国产AV一区二区三区日韩| 国产乡下三级全黄三级| 香港曰本韩国三级网站| 99欧美日本一区二区留学生| _日韩人妻无码一区二区三区| 国产国产人免费人成免费视频| 国产老肥熟xxxx| 国产伦精品一区二区三区免费| 国产成人精品日本亚洲11| 最好的观看2018中文| 亚洲情综合五月天| 国产AV无码专区亚汌A√| 国产成人精品日本亚洲| 精品久久久久久国产| 国产精品美女久久久浪潮AV| 国产熟女乱子视频正在播放| 国产精品免费看久久久|