Microsoft Office Publisher 2007 Arbitrary Pointer Dereference Vulnerability (MS09-030)
16 Jul. 2009
Summary
Remote exploitation of an arbitrary pointer dereference vulnerability in version 2007 of Microsoft Corp.'s Publisher could allow an attacker to execute arbitrary code as the user running Publisher.
Vulnerable Systems:
* Microsoft Office Publisher 2007
Immune Systems:
* Microsoft Office Publisher 2000
* Microsoft Office Publisher 2002
* Microsoft Office Publisher 2003
This vulnerability exists in PUBCONV.DLL module in Microsoft Publisher 2007. PUBCONV.DLL module is responsible for converting legacy format Publisher files (.pub) created by older version of Publisher into the Publisher 2007 format. A programming error causes that module to dereference the arbitrary attacker-controlled value as the address of a table of function pointers. This vulnerability allows attackers to execute arbitrary code on the victim's system.
Exploitation of this vulnerability would allow an attacker to execute arbitrary code on the affected system within the security context of the local user running Publisher. Thus, the level of compromise would depend upon the security context of that user. An attacker would need to craft a malicious file and either host it on a website or send it as an attachment in an e-mail. The attacker would then need to persuade the local user to open it. There is no way an attacker can force exploitation. Further, this vulnerability exists only in Microsoft Publisher 2007, further minimizing the risk of exploitation.
Workaround
Deny access to the publish converter by changing the ACLs on the file. This can be accomplished as follows:
cacls \Program Files\Microsoft Office\Office12\pubconv.dll /d everyone
Note: By doing so, Microsoft Office Publisher 2007 may not open previous versions of Publisher documents.