Browser Help Objects 介绍

作者在 2009-03-05 21:55:24 发布以下内容
BHO是Browser Help Objects的缩写

成功创建的BHO,可以得到各种标准的浏览器操作事件,做出响应;还可以定制浏
览器的菜单、工具条等界面元素;或者可以安装钩子函数,监视浏览器的活动。

BHO是COM组件,实现了接口IObjectWithSite。这些组件除了在注册表中注册为
COM Server外,还必须将它们的CLSID在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Win
dows\ CurrentVersion\Explorer\Browser Helper Objects下注册子键。
每当浏览器启动时,浏览器会首先在上述注册表位置查看是否有注册的BHO CLSID;
如果有则分别创建一个实例,并对BHO实例进行初始化,建立交互连接。

比如flashget在注册表中注册
HKEY_CLASSES_ROOT\CLSID\{A5366673-E8CA-11D3-9CD9-0090271D075B}\InprocServer32
->d:\flashget\iccatch.dll

程序中截获如下消息,来进行响应
#define DISPID_DOWNLOADBEGIN 106

利用BHO,可以做出如msn类似的工具条,msn实际上也在注册表中进行了其工具的注册

根据这个原理,我们同样也能防止ie中对3721.com的请求,这里我们主要是截获
#define DISPID_BEFORENAVIGATE2 250 // hyperlink clicked on消息
另外也可利用BHO技术以做个伴随iexplorer,explorer一起启动的木马来。
只是这种技术的注册原理简单,查杀也比较方便,算比较old的技术了。
而且mcafee对这种木马的查杀技术比较绝,因此这种木马效果不是太好。

另外在注册表
HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Internet
Explorer\\Extensions\\GUID
中添加一些表项,就可以做出工具条来和BHO互动。

工具条在注册表中应该设置一个主要项为:
reg.SetValue("programme","Exec");
技术 | 阅读 4525 次
文章评论,共0条
游客请输入验证码
浏览1943153次