下载 >  开发技术 >  C++ > 一款改自IPHook的IP数据包监控过滤程序

一款改自IPHook的IP数据包监控过滤程序

2009-06-13 上传大小:776KB
分享
一款改自IPHook的IP数据包监控过滤程序
By ccc 2009-6-13 完成(ch2zh1@tom.com)

IP包过滤程序采用IPHook驱动器程序,在内核层用钩子回调函数(IpHookFilter)勾住系统自带的IP过滤驱动器(System32\Drivers\IpFltDrv.sys),从而返回过滤驱动器传输的所有IP包数据。可以通过回调函数的返回值(PF_DROP、PF_FORWARD、PF_PASS),指示滤波驱动器对包的处理,是抛弃还是通过。

应用启动驱动器过程可以使用驱动器的安装,或使用系统的服务控制器(ServiceControl)直接启动和停止驱动程序。

服务控制器利用OpenSCManager等服务控制函数控制驱动程序的加载与卸载。这就使得应用程序可以在运行时自动加载和卸载需要的驱动程序。而不必设置驱动程序的安装过程。

初始的IPHook.sys只提供了IP包的监视过程即,仅仅返回IP头信息。在应用中解释并显示这个头信息。经过写改的IPHook增加了对IP包的过滤处理,有几个设置命令:

START_IP_HOOK 		:启动钩子过滤命令,建立连接IP滤波器的回调函数(原始命令)
STOP_IP_HOOK 			:停
                            止钩子过滤命令,撤销IP滤波器回调函数(原始命令)
ADD_IP_HOOKADDR 		:添加过滤IP地址,回调函数判断IP包,以决定是放弃还是通过(新命令)
DEL_IP_HOOKADDR		:删除过滤IP地址(新命令)
ADD_IP_HOOKPORT 		:添加过滤端口号(新命令)
DEL_IP_HOOKPORT 		:删除过滤端口号(新命令)
ADD_IP_OVER_HOOK 		:添加置换的IP地址,用于对指定目的的IP包置换源地址和端口号(New)
DEL_IP_OVER_HOOK 		:取消IP地址置换。(New)

应用程序可一次设置和删除对个滤波地址和端口号。对于重复设置,IPHook可以正确识别并加以剔除。这是一个演示程序主要想说明windows2000驱动程序编程过程,及应用自动加载和卸载驱动的方式。

驱动程序的源码在DrvChecked.rar中,要想正确编译,必须安装windows2000 DDK,并在VS2003下设置包含目录指向DDK的目录,库目录也要指向DDK的库目录:
		C:\NTDDK\inc
C:\NTDDK\inc\ddk

C:\NTDDK\libchk\i386

并且在排列上一定要排在头两个位置上。

这个驱动程序在VC++下是可以正确编译通过的。驱动程序名:DrvChecked.sys。使用时应该改为:iphook.sys。delphi下的应用程序为:IPPacketMonitor.exe,它使用IPHook.sys。

任何人可以自己编译和修改这个驱动程序,使之能够按照一定的方式运行,这里给出的只是本人的一个想法,希望能给各位带来一点帮助。任何应用程序都可以想打开文件一样使用这个驱动程序,关于使用方法请参考Release Notes.htm提供的线索。

	有什么问题和建议请电邮:ch2zh1@tom.com                        
...展开收缩
综合评分:4
开通VIP 立即下载

评论共有16条

andimial 2017-04-11 13:14:40
delphi例子没有代码,需要下载windows2000 ddk才能编译成功
wuyu凝噎 2015-09-08 16:28:51
为啥我打不开,说无法打开IP包滤波器,请检查系统。不过听描述应该有用。。。
chenxiaoguo 2015-08-18 16:46:54
很好很强大,学习中
 
一个内核级的SHELL工具源代码
Linux netfilter 学习笔记 之二 ip 层netfilter的hook 注册以及执行hook函数的概要分析
监控IP数据包源程序 立即下载
积分/C币:3
ip数据包的监控ip数据包的监控 立即下载
积分/C币:3
IP数据包流量监控 立即下载
积分/C币:3
IP数据包流量监控(这个程序利用Winpcap库来捕获IP数据包) 立即下载
积分/C币:3
用Java实现对IP/TCP协议数据包的拦截和分析 立即下载
积分/C币:3
计算机网络实验之ip数据包捕获程序+源码 立即下载
积分/C币:3
c#开发的网络IP数据包解析程序 立即下载
积分/C币:3
基于Winpcap的IP包的发送与接收 立即下载
积分/C币:3

热点文章

VIP会员动态

推荐下载

关闭
img

spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
点击完成任务获取下载码
输入下载码
为了良好体验,不建议使用迅雷下载
img

一款改自IPHook的IP数据包监控过滤程序

会员到期时间: 剩余下载个数: 剩余C币: 剩余积分:0
为了良好体验,不建议使用迅雷下载
VIP下载
您今日下载次数已达上限(为了良好下载体验及使用,每位用户24小时之内最多可下载20个资源)

积分不足!

资源所需积分/C币 当前拥有积分
您可以选择
开通VIP
4000万
程序员的必选
600万
绿色安全资源
现在开通
立省522元
或者
购买C币兑换积分 C币抽奖
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
为了良好体验,不建议使用迅雷下载
确认下载
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
为了良好体验,不建议使用迅雷下载
开通VIP
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
您的积分不足,将扣除 10 C币
为了良好体验,不建议使用迅雷下载
确认下载
下载
无法举报自己的资源

兑换成功

你当前的下载分为234开始下载资源
你还不是VIP会员
开通VIP会员权限,免积分下载
立即开通

你下载资源过于频繁,请输入验证码

您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:webmaster@csdn.net!

举报

若举报审核通过,可返还被扣除的积分

  • 举报人:
  • 被举报人:
  • *类型:
    • *投诉人姓名:
    • *投诉人联系方式:
    • *版权证明:
  • *详细原因: