// back

WinZip MIME Parsing Buffer Overflow Vulnerability

02.27.04

BACKGROUND

WinZip is an archiving utility for the Microsoft Windows platform featuring built-in support for CAB files and for popular Internet file formats such as TAR, gzip, UUencode, BinHex, and MIME. ARJ, LZH, and ARC files are supported via external programs. More information is available at http://www.winzip.com.

DESCRIPTION

Exploitation of a buffer overflow vulnerability within a parameter parsing routine of WinZip Computing Inc.'s WinZip Archive Utility for Windows allows remote attackers to execute arbitrary code.

The problem specifically exists in the UUDeview package which is used to support various decoding routines. When providing long strings to certain parameters of MIME archives (.mim, .uue, .uu, .b64, .bhx, .hqx and .xxe extensions) WinZip will crash referencing an "internal error in file misc.c line 132". Analysis of the log file created by WinZip upon crash reveals that exploitation is plausible:

    Return address = 0041a923
    Return address = 0044c06c
    Return address = 41414141

Further analysis reveals that WinZip is crashing due to an invalid reference at the following instruction:

    0049c332: mov dword ptr [ecx+08], edi

Both the ecx and edi registers in the above instruction are user controllable allowing an attacker to craft a MIME archive that upon opening will execute arbitrary code.

ANALYSIS

Successful exploitation requires that an attacker convince a target user to open a malicious MIME archive. The target user must have a vulnerable version of WinZip installed which by default includes a handler for the one of the vulnerable file types. Example methods of propagation include e-mail, web links and P2P software.

iDEFENSE has proof of concept exploit code demonstrating the impact of this vulnerability.

DETECTION

iDEFENSE has confirmed the existence of this vulnerability in WinZip 8.1 SR-1 (the latest stable version) and the latest beta release of Winzip 9.0. It is suspected that earlier versions are vulnerable as well.

WORKAROUND

User awareness is the best method of defense against this class of attack. Users must be wary when opening attachments or following links from untrusted sources.

Removal of the extension handler for vulnerable file types can prevent exploitation from double clicking on what may appear to be a harmless WinZip archive. This can be accomplished by opening Windows Explorer, selecting "Tools", then "Folder Options", selecting the "File Types" tab, scrolling to MIM and deleting the appropriate entry.

VENDOR RESPONSE

This issue has been addressed in WinZip 9.0, available at http://www.winzip.com/.

CVE INFORMATION

A Mitre Corp. Common Vulnerabilities and Exposures (CVE) number has not yet been assigned.