云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 基于winpcap的嗅探器设计与实现 - 图文

基于winpcap的嗅探器设计与实现 - 图文

  • 62 次阅读
  • 3 次下载
  • 2025/6/30 10:26:17

{ struct tcphdr *tcph = (struct tcphdr*)pkt; data->tcph = (struct tcphdr*)malloc(sizeof(struct tcphdr)); if(NULL == data->tcph) return -1; data->tcph->ack_seq = tcph->ack_seq; data->tcph->check = tcph->check; data->tcph->doff = tcph->doff; data->tcph->res1 = tcph->res1; data->tcph->cwr = tcph->cwr; data->tcph->ece = tcph->ece; data->tcph->urg = tcph->urg; data->tcph->ack = tcph->ack; data->tcph->psh = tcph->psh; data->tcph->rst = tcph->rst; data->tcph->syn = tcph->syn; data->tcph->fin = tcph->fin; data->tcph->dport = ntohs(tcph->dport); data->tcph->seq = tcph->seq; data->tcph->sport = ntohs(tcph->sport); data->tcph->urg_ptr = tcph->urg_ptr; data->tcph->window= tcph->window; data->tcph->opt = tcph->opt; //http?? if(ntohs(tcph->dport) == 80 || ntohs(tcph->sport)==80) { npacket->n_http++; strcpy(data->pktType,\); } else{ npacket->n_tcp++; strcpy(data->pktType,\); } return 1; }

/*分析传输层:UDP*/

int analyze_udp(const u_char* pkt,datapkt *data,struct pktcount *npacket) { struct udphdr* udph = (struct udphdr*)pkt; data->udph = (struct udphdr*)malloc(sizeof(struct udphdr)); if(NULL == data->udph ) return -1; data->udph->check = udph->check; data->udph->dport = ntohs(udph->dport);

data->udph->len = ntohs(udph->len); data->udph->sport = ntohs(udph->sport); strcpy(data->pktType,\); npacket->n_udp++; return 1; }

//将数据包以十六进制方式打印出来

void print_packet_hex(const u_char* pkt,int size_pkt,CString *buf) { int i=0,j = 0,rowcount; u_char ch; char tempbuf[256]; memset(tempbuf,0,256); for(i = 0;iAppendFormat(_T(\ \),(u_int)i); rowcount = (size_pkt-i) > 16 ? 16 : (size_pkt-i); for (j = 0; j < rowcount; j++) buf->AppendFormat(_T(\ \),(u_int)pkt[i+j]); if(rowcount <16) for(j=rowcount;j<16;j++) buf->AppendFormat(_T(\ \)); for (j = 0; j < rowcount; j++) {

ch = pkt[i+j];

ch = isprint(ch) ? ch : '.'; buf->AppendFormat(_T(\),ch); } buf->Append(_T(\)); if(rowcount<16) return; }

}

七、设计结果

嗅探器运行初始界面如图2所示

图2.整体结构

嗅探器开始运行后界面如图3所示

图3.运行时的界面

八、软件使用说明

① 选择网卡

② 设置过滤器

③ 点击开始,程序运行 ④ 查看您需要的信息

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

{ struct tcphdr *tcph = (struct tcphdr*)pkt; data->tcph = (struct tcphdr*)malloc(sizeof(struct tcphdr)); if(NULL == data->tcph) return -1; data->tcph->ack_seq = tcph->ack_seq; data->tcph->check = tcph->check; data->tcph->doff = tcph->doff; data->tcph->res1 = tcph->res1; data->tcph->cwr = tcph->cwr; data->tcph->ece = tcph->ece; data->tcph->urg = tcph->urg; data->tcph->ack = tcph->ac

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com