首次编译安装测试passthru
看了一周的《Windows防火墙与网络封包截获技术》,也没看出所以然。于是就想着把DDK中的passthru的源程序安装下看看,到底底层抓包是啥样子的。
???????? 想法是很简单的,首先是如何编译这个驱动程序,那本书上没怎么写,因为书上附带的关盘是编译好了的sys文件。既然不知道如何编译就去驱网上搜罗了下几年的帖子,只有些零星的碎语。???????? 不过这些只言片语都是很有用的,最后琢磨到如何使用DDK自带的工具编译这些源程序。编译步骤如下:?1、点击“开始->所有程序->Development Kits->windows DDK 2600->bulid environment ->winXP Checked Build Environment”
调试完成后,如果编译最终使用的驱动程序,第一项可以更改为:
“开始->所有程序->Development Kits->windows 2000 DDK->Free Build Environment”?2、这时会出现cmd窗口,用cd命令进入你要编译的目录中。键入build -cZ命令,系统就可以编译检查模式的驱动程序。

这时在D:\Program Files\WINDDK\2600\src\network\ndis\passthru\driver这个目录下,会看到两个inf文件----netsf.inf和netdf_m.inf,后来问了下驱动达人才知道这两个inf前者对应sys文件,后者对应dll文件。?本以为编译完成了,就可以考虑安装了,首先考虑的是如何安装。《Windows防火墙和网络封包》这本书对于安装驱动的方法更是看不懂,现在想想是明白了许多,对于一次没有装驱动的人来说就不应该那么教。?随便在驱网上找了一个QQ问了下那哥们:知道使用bindview工具可以按照驱动程序。于是使用同样的方法编译了D:\Program Files\WINDDK\2600\src\network\config\bindview??????? 执行bindview.exe如下图:



???
??? 打开网络属性,添加服务,找到passthru目录下,安装,弹出没有数字签名的警告,不理,继续安装,最后,你会发现,网络属性中增加了一个名为Sample Filter的组件,同时,硬件管理器中的网卡下增加了一个Sample Filter Miniport的设备。如果你已经到了这里,并且系统没有出现蓝屏和死机,那么恭喜你,你已经成功地安装上了中间层驱动,并且已经发挥包过滤作用了。”?可是我仔细检查了下我的DDK文件夹,根本就没有src\network\config\filter这个目录,莫非这就的DDK装错了,或者我用的xp版的ddk与NTddk不一样??我把问题丢到了驱动个网络安全这个群里,得到了证实XPDDK的确没有那个文件夹,NT和2000DDK都有的。晕哦。不知道自己的这个dll要从哪弄到了。群里有人提议,修改inf文件,对于我这个的菜鸟修改inf还是不敢擅自的。多亏了phoenix兄,他告诉我XPDDK在passthru目录里还有一个文件夹notifyob,这个passthru.dll就存在在这个目录中。果然编译得到此dll。?紧接着就是按刚才安装sys的方法安装,先安装inf 然后是dll 然后是另一个inf 最后装sys文件。而且并没有出现蓝屏和死机的现象,大功告成。在本地连接的属性里看到多了一个PassthruDriver的选项,想卸载的时候,可以直接卸载的。

本文出自 “国产0与1” 博客,请务必保留此出处http://qq164587043.blog.51cto.com/261469/86729