Browser Helper Object: Difference between revisions

Content deleted Content added
Still supported [in Windows 10]. See also edit at ActiveX.
Line 1:
[[Image:Am addon manager.png|right|thumb|Add-on Manager from Windows XP SP2 Internet Explorer]]
A '''Browser Helper Object''' ('''BHO''') is a [[Library (computer science)|DLL]] [[Module (programming)|module]] designed as a [[Plug-in (computing)|plugin]] for [[Microsoft]]'s [[Internet Explorer]] [[web browser]] to provide added functionality. BHOs were introduced in October 1997 with the release of [[Internet Explorer 4|version 4]] of Internet Explorer. Most BHOs are loaded once by each new instance of Internet Explorer. However, in the case of [[Windows Explorer]], a new instance is launched for each window.
 
BHOs is still supported as of Windows 10, though [[Internet Explorer 11]], while BHOs is not supported in their default web browser [[Microsoft Edge]].
 
== Implementation ==
Line 6 ⟶ 8:
 
== Examples ==
 
Some modules enable the display of different file formats not ordinarily interpretable by the browser. The [[Adobe Acrobat]] plug-in that allows Internet Explorer users to read [[Portable Document Format|PDF]] files within their browser is a BHO.
 
Line 13 ⟶ 14:
The Conduit toolbars are based on a BHO that can be used on [[Internet Explorer 7]] and up. This BHO provides a search facility that connects to [[Microsoft]]'s [[Bing (search engine)|Bing]] search.
 
== Concerns ==
 
The BHO [[application programming interface|API]] exposes [[hooking|hook]]s that allow the BHO to access the [[Document Object Model]] (DOM) of the current page and to control navigation. Because BHOs have unrestricted access to the Internet Explorer event model, some forms of [[malware]] have also been created as BHOs. For example, the [[Download.ject]] malware installs a BHO that would activate upon detecting a secure [[HTTP]] connection to a financial institution, [[keystroke logging|record the user's keystrokes]] (intending to capture passwords) and transmit the information to a website used by Russian [[computer crime|computer criminals]]. Other BHOs such as the [[MyWay Searchbar]] track users' browsing patterns and pass the information they record to third parties.
 
Line 21:
In response to the problems associated with BHOs and similar extensions to Internet Explorer, Microsoft debuted an ''Add-on Manager'' in [[Internet Explorer 6]] with the release of [[Windows XP#Service Pack 2|Service Pack 2]] for [[Windows XP]] (updating it to IE6 Security Version 1, a.k.a. SP2). This utility displays a list of all installed BHOs, [[browser extension]]s and [[ActiveX control]]s, and allows the user to enable or disable them at will. There are also free tools (such as BHODemon) that list installed BHOs and allow the user to disable malicious extensions. [[Spybot – Search & Destroy|Spybot S&D]] advanced mode has a similar tool built in to allow the user to disable installed BHOs.
 
== See also ==
*[[Browser extension]]
*[[Plug-in (computing)]]
Line 31:
<references/>
 
== External links ==
*[https://sites.google.com/site/bhosearch/ Sites.google.com]
 
=== Microsoft sites ===
*[http://support.microsoft.com/default.aspx?scid=kb%3BEN-US%3Bq179230 ''IEHelper-Attaching to Internet Explorer 4.0 by Using a Browser Helper Object'']
*[https://web.archive.org/web/20050109091250/http://www.microsoft.com:80/windowsxp/using/web/sp2_addonmanager.mspx Control Internet Explorer Add-ons with Add-on Manager] - {{snd}}an article on Microsoft.com that explains this new feature of Windows XP Service Pack 2
*[http://msdn2.microsoft.com/en-us/library/bb250489.aspx Building Browser Helper Objects with Visual Studio 2005] - {{snd}}an October 2006 MSDN article by Tony Schreiner and John Sudds
 
=== Listings and examples ===
*[http://www.systemlookup.com/lists.php?list=1 CLSID List] - {{snd}}master list created by Tony Kleinkramer, which attempts to record and identify every BHO available (previously located at - {{snd}}the now defunct - {{snd}}[[CastleCops|castlecops.com]]) - {{snd}}also includes Toolbar, Explorer Bar and URLSearchHook GUIDs
*[http://www.adp-gmbh.ch/win/com/bho.html C++ example code for a BHO]
*[http://www.codeproject.com/Articles/19971/How-to-attach-to-Browser-Helper-Object-BHO-with-C C# example code for a BHO]