利用BHO截获IE中输入的数据

今天看到了N年前写的一小段Delphi程序,准备拿出来与大家共享,本想好好的写篇介绍文章的,但没有动力,只好在此草草了事,下面只是讲一下其主要思想。

IE为我们提供了一个插件接口,名叫BHO(Browser Helper Objects),通过编写相应COM类库并注册后,只要IE启动,注册的插件会随之启动,现在的有些(或者说N年前就有的)IE插件,也是通过这种方法实现的,如flashget的右键下载菜单等,QQ也做过类似的插件。

BHO插件的思想:BHO实际上也是一个简单的IE扩展COM组件,它和其它COM组件的区别就在于其它扩展需要一些用户的手工操作,如点击菜单,点击工具条按钮,在地址栏输入网址等等触发动作才会被IE加载。而BHO则不同,每当IE启动时,都会自动去加载BHO而无须任何触发条件,另外BHO还可以监听IE的各类事件的通知消息,比如窗口大小的变化、下载是否完成、页面离开等事件。

如果想察看你的电脑上有哪些IE插件,可打开注册表,转到HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/Browser Helper Objects节点下,看到的所有以GUID命名的子节点,都是一个个插件。哈哈,是不是你的BHO插件很多呀。当然,如果你不希望IE运行所有的BHO,可以进入控制面板,找到“Internet选项”,进入“高级”页,在“浏览”栏下,取消“启用第三方浏览器扩展”前面的钩,重新启动IE。嗯,一切BHO插件将不被启动,整个IE干净了。

由于BHO可以在一启动IE就被加载,并能监听各种事件,我们就可以使用BHO扩展做很多事情,如限制用户浏览某些色情网站,或者载获用户输入的信息,屏蔽网站讨厌的弹出窗口等等功能。

具体实现我就不再讲了,可以进入“我的资源”列表,去下载我上传的完整示例,下载我的示例到你的电脑后,执行如下步骤:

1、打开DOS窗口,转到解压的目录,然后输入:regsvr32 WebWatch.dll  

2、开启新的IE窗口,访问一个有登录框的页面,输入用户名和密码后点登录,此时本工具自动记录下你的输入内容,并保存在系统目录下,名为 Heart1226.txt  

3、打开系统目录(c:/windows/system32)下的 Heart1226.txt,你将会看到兴奋的内容

声明:

我提供演示程序的目的,在于共享知识,如通过本程序或本程序之思想用于非法用途,一切后果由其自行负责

                   西南三少

 

你可能感兴趣的:(利用BHO截获IE中输入的数据)