Bugtraq mailing list archives

Re: Microsoft Help (WINHLP32.EXE) - Multiple Remote Code Execution and Denial Of Service Vulnerabilities


From: Reversemode <advisories () reversemode com>
Date: Sat, 12 Aug 2006 21:54:41 +0200

Hi,

Nobody should open an untrusted .HLP file.

An HLP file is the most similar to an executable but not being one,
mainly due to its powerful scripting language.

One of the documented macros documented and supported by this format is
"RegisterRoutine". Using this macro we can reference any Export of any Dll.

Example:

[CONFIG]
RegisterRoutine("Kernel32.dll", "Beep", "UU")

so the function can be used as a Macro within the WinHelp project

{\uldb Do Beep}{\v !Beep(750, 5000)}

The user won´t see any warning previously the execution of this macro.

I wonder why Microsoft and a lot of  vendors are still using this
old-and-dangerous format for providing documentation.

Greets,
Rubén.


Benjamin Tobias Franz wrote:
Microsoft Help (WINHLP32.EXE) - Multiple Remote Code Execution and
Denial Of
Service Vulnerabilities
... discovered by Benjamin Tobias Franz

Affected Vendor:
Microsoft

Affected Product:
Microsoft Windows - Microsoft Help (WINHLP32.EXE)

Description:
Multiple remote code execution and denial of service vulnerabilities exists
in Microsoft Help (WINHLP32.EXE) because of the way that it handles
Microsoft Windows Help files (*.HLP).
An attacker could exploit this by placing a specially crafted help file
on a
webpage, or by sending the file as an attachment in an e-mail. The exploit
is triggered by viewing the specially crafted help file. No user
interaction
is required. An attacker who successfully exploited this vulnerability
could
take complete control of the affected system.

Workaround:
Do not open any HLP file from untrusted sources with Microsoft Help.

Proof-Of-Concept files (simple demonstration files only):
http://hometown.aol.de/qwertzset/BTFs_MSHelp_WINHLP32.EXE_POCFiles.zip

Date of discovery:
20. - 22. July 2006

Tested software:
Microsoft Help on Windows XP SP2
(WINHLP32.EXE: 5.1.2600.2180 | MSVCRT.DLL: 7.0.2600.2180)

Probably all versions of Microsoft Windows are affected by these bugs.


Regards,

Benjamin Tobias Franz,
Germany



Current thread: