ImageVerifierCode 换一换
格式:DOCX , 页数:7 ,大小:46.46KB ,
资源ID:20070340      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20070340.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(网络数据包捕获及分析Word文档格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

网络数据包捕获及分析Word文档格式.docx

1、正常情况下,一个网络接口应该只响应两种数据帧:与自己硬件地址相匹配的数据帧;向所有计算机的广播数据帧。在实际系统中由网卡来完成数据的收发。网卡接收到传来的数据,网卡内的程序接收数据帧的目的MAC 地址,然后根据网卡驱动程序设置的接收模式判断:认为应该接收,就在接收后产生中断信号通知CPU;认为不该接收就丢掉不管。CPU 得到中断信号产生中断,操作系统就根据网卡驱动程序设置的网卡中断程序地址调用驱动程序接收数据。驱动程序接收数据后,放入信号堆栈让操作系统处理。对于网卡来说一般有4种接收模式:广播方式:该模式下的网卡能够接收网络中的广播信息。组播方式:该模式下的网卡能够接收组播数据。直接方式:该模

2、式下只有目的网卡才能接收数据。混杂模式:该模式下的网卡能够接收一切通过它的数据。所以要想实现对网络的数据进行获取分析,首先应该把网卡设置成混杂模式。1.2数据获取数据获取主要有两种方法:通过数据链路层获取和通过网络层获取。(1通过链路层获取在TCP/IP的体系结构中,数据链路层和物理层共同构成网络接口层,作为TCP/IP 的第一层。在这一层传输的数据格式是以太帧。获取以太帧目前可以通过LibPcap和WinPcap两种捕包工具。LibPcap是一种与系统无关,采用分组捕获机制的分组捕获函数库。使用LibPcap编写的程序可自由的跨平台使用。而WinPcap 是LibPcap的Windows 版

3、本,集成于Windows95,98,ME,NT,2000和XP 操作系统的设备驱动程序,可以从网卡捕获或者发送原始数据,同时能够过滤并且存储数据包。(2通过网络层获取通过网络层获取数据主要借助原始套接字。套接字是网络应用编程接口。套接字有三类:流式套接字、数据报套接字和原始套接字。前两种套接字只能访问到传输层。而原始套接字则可以获取ICMP、TCP、UDP 等数据包。在Windows 环境下可用Winsock来实现。2相关协议介绍2.1IP 协议IP 的基本功能:寻址、路由选择和数据包的分割和组装。它不提供可靠的传输服务。依据IP 报文格式在程序中声明IP 首部:typedefstruct_I

4、PHEADERunsignedcharheader_len:4;unsignedcharversion:unsignedchartos;unsignedshorttotal_len;unsignedshortident;unsignedshortflags;unsignedcharttl;作者简介:卢建华(1982-,女,西安电子科技大学2006级硕士研究生,研究方向:计算机应用。蒋明(1958-,男,西安电子科技大学高工,硕士生导师。陈淑芳(1970-,女,山西省朔州市平鲁区职业中学讲师。unsignedcharproto;unsignedshortchecksum;unsignedints

5、ourceIP;unsignedintdestIP;IPHEADER;2.2TCP 协议TCP 提供全双工和可靠交付的服务。该协议主要用于在主机间建立一个虚拟连接,以实现高可靠性的数据包交换。依据T C P 报文格式在程序中声明T C P 报头:structTCPPacketHeadWORDSourPort;WORDDestPort;DWORDSeqNo;DWORDAckNo;BYTEHLen;BYTEFlag;WORDWndSize;WORDChkSum;WORDUrgPtr;2.3UDP协议UDP 是一个无连接协议,传输数据之前源端和终端不建立连接,也不使用拥塞控制、不保证可靠交付。依据U

6、DP 报文格式在程序中声明U D P 报头:structUDPPacketHeadWORDSourPort;WORDLen;2.4ICMP协议ICMP 是TCP/IP 协议集中的一个子协议,属于网络层协议,主要用于在主机与路由器之间传递控制信息,包括报告错误、交换受限控制和状态信息等。依据ICMP 报文格式在程序中声明I C M P 报头:structICMPPacketHeadBYTEType;BYTECode;WORDId;/增加了标识变量WORDSeq;/增加了序号变量3具体实现系统的开发环境是VC+6.0,利用RAWSOCKET 套接字来实现包捕获功能。3.1包捕获模块的实现(1m_s

7、=socket(AF_INET,SOCK_RAW,IPPROTO_IP ;/创建原始套接字(2setsockopt(m_s,SOL_SOCKET,SO_RCVTIMEO,(constchar*&rcvtimeo,sizeof(rcvtimeo;/设置IP头操作选项,超时接收选择(3SOCKADDR_INsa;sa.sin_family=AF_INET;sa.sin_port=htons(6000;/设置端口号sa.sin_addr.s_addr=m _iphostsource;/设置IP地址bind(m_s,(PSOCKADDR&sa,sizeof(sa;/将原始套接字绑定到本地网卡(4设置套

8、接字接收模式,并启动新的接收线程thread-FuncIf(SOCKET_ERROR!=WSAIoctl(m_s,SIO_RCVALL,&dwBufferInLen,sizeof(dwBufferInLen,&dwBufferLen,sizeof (dwBufferLen,&dwBytesReturned,NULL,NULL其中threadFunc 方法的实现是:UINTthreadFunc(LPVOIDpParamPeekMessage(&msg,NULL,WM_USER,WM_USER,P M _N O R E M O V E ;pDlg-m_threadID=GetCurrentThre

9、adId(;/取得线程的ID 号While(TRUE/循环接收消息if(PeekMessage(&msg,0,WM_CLOSE,WM_CLOSE,PM_NOREMOVEclosesocket(pDlg-m_s;/检测W M _C L O S E 消息break;memset(buf,0,sizeof(buf;intiRet=recv(pDlg-m_s,buf,sizeof(buf,0;/从套接字接收数据/分析模块3.2包分析模块的实现首先根据先前定义各协议的报头,解析IP 报头内容,进而确定协议类型,T C P、U D P 或I C M P,之后再分别进行相应的报头解析。部分程序为:定义一个I

10、P头指针pIpHeader,利用指针的移动来实现包的解析。然后依据IP 数据包结构,分别读取IP 数据包的各项信息。根据proto 字段进一步确定其为TCP 数据包、UDP 数据包还是I C M P 数据包。下转27页Router(config#ipaccess-listextendedinternal_ACL Router(config-ext-nacl#permittcpanyhost192.1.2.1eqsmtp Router(config-ext-nacl#permittcpanyhost192.1.2.1eqpop Router(config-ext-nacl#denytcpanya

11、nyeppop Router(config-ext-nacl#denytcpanyanyeqsmtp Router(config-ext-nacl#permitipanyany Router(config-ext-nacl#exitRouter(config#ipinspectnameinternal_CBACftp Router(config#ipinspectnameinternal_CBAChttp Router(config#ipinspectnameinternal_CBACtcp Router(config#ipinspectnameinternal_CBACudp Router(

12、config#ipinspectnameinternal_CBACicmp Router(config#interfacee thernet0Router(config-if#ipaccess-groupinternal_ACLin Router(config-if#ipinspectinternal_CBACin(2在全局模式下,分别设置TCP 的建立时间为15秒,TCP 的空闲超时为60秒,UDP 的空闲超时为20秒,半开连接阀值为400,1分钟连接尝试次数为400,主机最大半开连接数为250。Router(config#ipinspecttcpsynwait-time15Router(c

13、onfig#ipinspecttcpidle-time60Router(config#ipinspectudpidle-time20Router(config#ipinspectmax-incompletehigh400Router(config#ipinspectmax-incompletelow300Router(config#ipinspectone-minutehigh400Router(config#ipinspectone-minutelow300Router(config#ipinspecttcpmax-incompletehost250block-time04结束语充分应用CB

14、AC 的访问控制特性,能够使我们在一定程度上较好的防御特定的DoS 风暴攻击。但应该注意,在修改超时值和连接阀值时,要考虑网络规模与具体应用,监控C B A C 及网络活动日志,确保没有因为参数设置影响正常的网络应用。另外,我们还可以结合CISCOIOS的ACL、入侵检测系统、日志和审查功能以及应用层过滤技术等,检测和防御更多类型的网络攻击,做好网络安全工作。应用CBAC 也存在一些局限性,如流量审查会增加路由器的负荷,不能审查加密的数据包,以及有限的应用层审查等。参考文献1李德全.拒绝服务攻击M.北京:电子工业出版社.2007.2W.RchardStevens.TCP/IPIllustrat

15、edVolume1:TheProtocols M.范建华等译.北京:机械工业出版社.2000.3RichardA.Deal.陈克忠译.CiscoRouterFirewallSecurityM.北京:人民邮电出版社.2000.HdrLen=(pIpHeader-header_len*4;m=pIpHeader-proto;switch(mcaseIPPROTO_TCP:pTCPHead=(structTCPPacketHead*(buf+HdrLen;break;caseIPPROTO_UDP:pUDPHead=(structUDPPacketHead*caseIPPROTO_ICMP:pICM

16、PHead=(structICMPPacketHead*d e f a u l t :break;根据不同的选择执行不同的程序,并把最后结果显示在对话框中。4总结本文主要实现的功能是对网络上的数据包进行捕获及分析。即首先通过捕包模块把经过主机网卡的数据包截获,并存储在缓冲存储器中,然后通过分析模块对它进行分析,从而得到网络层和传输层协议的报头内容。当然这个系统也有不完善的地方,如由于捕获到的数据包头不包含有帧信息,因此不能接收到与IP 同属网络层的其它数据包,如ARP 数据包、R A R P 数据包等。1谢希仁.计算机网络M.北京:清华大学出版社.2001.2韩新宇,章惠君.Windows下实现网络数据包捕获J.维普资讯网.3JennyJ.He,DimitraSimeonidou.FlowRoutinganditsPerfor-manceAnalysisinOpticalIPNetworks.PhotonicNetwork Communications.2001.上接17页

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1