- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Filter-HookDriver(使用ipfirewallh)的IP過滤驱动
[原创]基于Filter-HookDriver(使用ipfirewall.h)的IP过滤驱动
文章标题:[原创]基于Filter-HookDriver(使用ipfirewall.h)的IP过滤驱动顶部 fleshwound 发布于:2007-02-2716:02 [楼主][原创]基于Filter-HookDriver(使用ipfirewall.h)的IP过滤驱动
文章作者:fleshwound[smatrix](fleshwound@126.com)
信息来源:邪恶八进制信息安全团队()
注意:本文章首发安全矩阵(),后由原创作者友情提交到邪恶八进制信息安全团队。
IP过滤驱动可以广泛的应用于网络安全产品的研发,NDIS和TDI的驱动资料很多,有比较成熟的代码可以参考,但是使用IPFIREWALL.h开发的IP过滤驱动的资料非常少,这次自己做一个软件的时候参考VCKBASE上的一篇文章《开发Windows2000/XP下的防火墙》(作者:JesúsO)的基础上,写了一个驱动,代码都做了详细的注释了,只要稍微有点驱动设计基础的都可以看得懂,我把自己的特殊的回调函数去掉了,保留了基本的完整框架,牛人就不需要看了,初学者都可以在此基础上继续快速开发。
1SmatrixIPDiv.cpp文件
2protocol.h头文件
3SmatrixIPDiv.h头文件
Copycode
/*Copyright(c)2007,安全矩阵(SecurityMatrix)
*Allrightsreserved.
*
*文件名称:SmatrixIPDiv.cpp
*文件标识:S
*摘 要:IP过滤驱动,利用ipfirewall捕获包、分析包、过滤包
*开始时间:2006年12月26Ri
*
*当前版本:1.0
*作 者:fleshwound@126.com
*相关信息:
*完成Ri期:2007年1月2Ri
*/
externC
{
#includestdio.h
#includestring.h
#includestdlib.h
#includentddk.h
#includentddndis.h
#includepfhook.h
#includendis.h
#includeipfirewall.h
}
#includeSmatrixIPDiv.h
#includeprotocol.h
/////////////////////////自定义函数的声明///////////////////////
//关闭打开驱动函数
NTSTATUSDispatchCreateClose(PDEVICE_OBJECTpDevObj,PIRPpIrp);
//驱动卸载函数
voidDriverUnload(PDRIVER_OBJECTpDriverObj);
//IO控制派遣函数(内核消息处理)
NTSTATUSDispatchIoctl(PDEVICE_OBJECTpDevObj,PIRPpIrp);
//向过滤列表中添加一个过滤规则
NTSTATUSAddFilterToList(CIPFilter*pFilter);
//清除过滤列表
voidClearFilterList();
//注册钩子回调函数
NTSTATUSSetFilterFunction(IPPacketFirewallPtrfilterFunction,BOOLEANload);
//包过滤函数
FORWARD_ACTIONFilterPacket(unsignedchar*PacketHeader,
unsignedchar*Packet,
unsignedintPacketLength,
DIRECTION_Edirection,
unsignedintRecvInterfaceIndex,
unsignedintSendInterfaceIndex);
//IP过滤器函数
FORWARD_ACTIONIPFilterFunction(VOID **pData,
UINT RecvInterfaceIndex,
UINT *pSendInterfaceIndex,
UCHAR *pDestinationType,
VOID *pContext,
UINT ContextLength,
structIPRcvBuf**pRcvBuf);
//过滤列表首地址
structCFilterList*g_pHeader=NULL;
//驱动内部名称和符号连接名称
#defineDEVICE_NAMEL\\Device\\DevS
您可能关注的文档
最近下载
- 财产保险案例分析保险考研[精品].pptx VIP
- 财产保险案例分析保险考研.ppt VIP
- 2025年税务检查重点趋势分析及涉税风险防控.pdf VIP
- 财产保险案例分析和计算题 .pdf VIP
- 财产保险案例与分析.docx VIP
- SBT 10532-2009沐浴企业等级划分技术要求.pdf
- 江西省上饶市第四中学2024-2025学年高一上学期第二次月考测试卷语文试题(含答案).docx VIP
- 人工智能技术在特殊教育融合教育中促进教师专业发展的研究教学研究课题报告.docx
- 《水利工程外观质量评定规程DB34∕T 4010-2021》知识培训.pptx VIP
- DLT741-2023年架空送电线路运行规程.docx
文档评论(0)