信息安全产品开发实践 -数据包的构造

信息安全产品开发实践 -数据包的构造

ID:8406407

大小:227.50 KB

页数:31页

时间:2018-03-20

信息安全产品开发实践 -数据包的构造_第1页
信息安全产品开发实践 -数据包的构造_第2页
信息安全产品开发实践 -数据包的构造_第3页
信息安全产品开发实践 -数据包的构造_第4页
信息安全产品开发实践 -数据包的构造_第5页
资源描述:

《信息安全产品开发实践 -数据包的构造》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、信息安全产品开发实践-数据包的构造Gujianjun(ruth)zjfriends@vip.sina.com,13880804340Dec2007Libnet介绍Libnet介绍MikeD.Schiffmanhttp://www.packetfactory.net/libnet/专业的网络数据包构造和发送开发包包含了多路技术、缓冲区管理、网络数据包头信息、字节流顺序、操作系统兼容性、校验和计算等提供了在IP层和链路层构造数据包的功能应用广泛:ettercap、firewalk、snort、Libnet作用构造任意数据内容构造各种不同协议的数据包支持从链路层到IP层数据包构造支持跨

2、平台、自动计算校验和Libnet函数核心函数地址函数数据包构造函数数据包发送函数高级处理函数Libnet句柄队列操作函数辅助函数   具体见libnet_functions.hLibnet支持协议类型具体见libnet-structures.hLibnet的开发流程初始化libnet_init()构造TCP协议块Libnet_build_tcp_options()构造IP头Libnet_build_ipv4()发送数据包libnet_write()销毁libnet_destroy()构造TCP头Libnet_build_tcp()构造以太网头libnet_build_ethern

3、et()初始化由libnet_init(intinjection_type,char*device,char*err_buf)完成Injection_type:表示构造的类型Device:表示网络接口Err_buf:表示存放出错的信息初始化-确定libnet类型6种类型LIBNET_LINK:表示构造链路层开始的数据包,比IP层的更丰富;LIBNET_RAW4:表示构造IPV4原始套接字接口类型的数据包;LIBNET_RAW6:表示构造IPV6原始套接字接口类型的数据包;初始化-确定网络接口数据包发送的接口一种是自己指定,可以是网络接口的名字,如以太网接口”eth0”等,也可以是

4、IP地址;一种是由libnet自动查询搜索,只要在函数libnet_init()的参数device赋值null即可,此时libnet会从系统中搜索可用的网络接口.初始化-获取libnet的句柄执行完后返回一个libnet句柄,在这个句柄里面包含了重要的信息.不直接打交道structlibnet_context{#if((__WIN32__)&&!(__CYGWIN__))SOCKETfd;LPADAPTERlpAdapter;#elseintfd;/*filedescriptorofpacketdevice*/#endifintinjection_type;/*raw(ipv4o

5、ripv6)orlink*/#defineLIBNET_LINK0x00/*link-layerinterface*/#defineLIBNET_RAW40x01/*rawsocketinterface(ipv4)*/#defineLIBNET_RAW60x02/*rawsocketinterface(ipv6)*//*thefollowingshouldactuallysetaflagintheflagsvariableabove*/#defineLIBNET_LINK_ADV0x08/*advancedmodelink-layer*/#defineLIBNET_RAW4_AD

6、V0x09/*advancedmoderawsocket(ipv4)*/#defineLIBNET_RAW6_ADV0x0a/*advancedmoderawsocket(ipv6)*/#defineLIBNET_ADV_MASK0x08/*masktodetermineadvmode*/libnet_pblock_t*protocol_blocks;/*protocolheaders/data*/libnet_pblock_t*pblock_end;/*lastnodeinlist*/u_int32_tn_pblocks;/*numberofpblocks*/intlink_t

7、ype;/*link-layertype*/intlink_offset;/*link-layerheadersize*/intaligner;/*usedtoalignpackets*/char*device;/*devicename*/structlibnet_statsstats;/*statistics*/libnet_ptag_tptag_state;/*stateholderforpblocktag*/charlabel[LIBNET_LABEL_SIZE];/*te

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。