- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
入侵实验三snort安装配置.doc
实验四 基于WinPcap的
网络入侵检测系统的设计与开发
实验框架
实现总体分为三个部分,一个利用winpcap开发包进行数据采集和预处理,输出数据包基本内容(包头)到文本文档;一个将匹配算法整合成可用静态库;一个调用匹配算法的静态库检测文本文档信息,由手工输入特征库,输出屏幕结果作为响应模块。
使用win7旗舰版、Visual C++6.0,、winpcap4.13、winpack4.0
winpcap安装配置
(一)点击winpcap.exe安装winpcap驱动:
C:\WINDOWS\system32目录下自动生成: wpcap.dll,packet.dll
C:\WINDOWS\system32\drivers下自动生成:npf.sys
(二)winpcap-4.1.3在VC++6.0配置环境:
需要在程序中使用了WinPcap中提供给Win32平台的特有的函数, 在预处理中加入WPCAP?的定义程序使用了WinPcap的远程捕获功能,那么在预处理定义中加入HAVE_REMOTE。设置VC++的链接器,把wpcap.libws2_32.lib库文件包含进来。
添加一个新的库所在的路径
添加一个新的包含文件所在的路径
模块具体实现
利用winpcap开发包进行数据采集和预处理
详细代码见 数据采集.cpp
1. 定义了以太网协议、ARP协议、IP协议、UDP协议、TCP协议、ICMP协议格式
2. 实现TCP协议、UDP协议、ICMP协议、ARP协议、IP协议、以太网协议分析的函数,其定义方式与回调函数相同
3. 实现主函数
pcap_t *pcap_handle;
/* Winpcap句柄 */
char error_content[PCAP_ERRBUF_SIZE];
/* 存储错误信息 */
char *net_interface;
/* 网络接口 */
struct bpf_program bpf_filter;
/* BPF过滤规则 */
char bpf_filter_string[] = ;
/* 过滤规则字符串 */
bpf_u_int32 net_mask;
/* 掩码 */
bpf_u_int32 net_ip;
/* 网路地址 */
net_interface = pcap_lookupdev(error_content);
/* 获得可用的网络接口 */
pcap_lookupnet(net_interface, net_ip, net_mask, error_content);
/* 获得网络地址和掩码地址 */
pcap_handle = pcap_open_live(net_interface, BUFSIZ, 1, 1, error_content);
/* 打开网路接口 */
pcap_compile(pcap_handle, bpf_filter, bpf_filter_string, 0, net_ip);
/* 编译BPF过滤规则 */
pcap_setfilter(pcap_handle, bpf_filter);
/* 设置过滤规则 */
if (pcap_datalink(pcap_handle) != DLT_EN10MB)
return ;
pcap_loop(pcap_handle, - 1, ethernet_protocol_packet_callback, NULL);
/* 注册回调函数,循环捕获网络数据包,利用回调函数来处理每个数据包 */
pcap_close(pcap_handle);
/* 关闭Winpcap操作 */
将匹配算法整合成可用静态库
详细代码见match.cpp和AC-BM.cpp
主要是两个算法,BF匹配算法和KMP匹配算法,还有Rabin-Karp匹配算法和AC-BM多字符匹配算法
//BF算法
int BF_Find(string s,string t,int index);
//KMP算法
void GetNext(string s,int *next);
int KMP_Find(string s,string t,int index);
//Rabin-Karp算法
int getV(char p, string set); // get the value of the character in the s
您可能关注的文档
- 供应链管理发展史.doc
- 供应链管理和采购战略.doc
- 供应链管理必须澄清几个基本概念.doc
- 供应链管理案例2011.5.30.doc
- 供应链管理职业实训资料.doc
- 供应链管理采购流程和战略.doc
- 依明艾力123431136草科121.doc
- 侵占罪中拒不退还或交出司法认定.doc
- 便携式矿井地质探测仪(震波探测类仪器)培训程序安排(赵朋朋).doc
- 便携式重物提升移动器.doc
- 某某单位2024年党建工作总结及2025年工作计划.doc
- 某某市发改委关于2024年度落实党风廉政建设工作责任制情况的报告.doc
- 某某局2024年全面从严治党和党风廉政建设工作总结.doc
- 某某区财政局2024年法治政府建设总结及2025年工作谋划.doc
- 2024年党管武装工作述职报告2篇.doc
- 2024年度国企党委书记抓基层党建工作述职报告3篇.doc
- 公司党委书记2024年述职述廉报告.docx
- 2024年度乡镇党委领导班子民主生活会(四个带头)对照检查材料.doc
- 市医疗保障局关于2024年法治政府建设工作情况的报告.docx
- 市民政局党组2024年巡察整改工作情况报告.docx
文档评论(0)