作者在 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");
成功创建的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");