[NT] TurboZIP ZIP Repair Buffer Overflow
- From: SecuriTeam <support@xxxxxxxxxxxxxx>
- Date: 26 Jul 2006 15:09:51 +0200
The following security advisory is sent to the securiteam mailing list, and can be found at the SecuriTeam web site: http://www.securiteam.com
- - promotion
The SecuriTeam alerts list - Free, Accurate, Independent.
Get your security news from a reliable source.
http://www.securiteam.com/mailinglist.html
- - - - - - - - -
TurboZIP ZIP Repair Buffer Overflow
------------------------------------------------------------------------
SUMMARY
<http://www.filestream.com/turbozip/downloads.html> TurboZIP Compression
Suite is "the ultimate file compression & cataloging tool used by
individual users and IT departments across the world since 1997". A
vulnerability has been found in TurboZIP. When exploited, the
vulnerability allows execution of arbitrary code when the user opens and
repairs a malicious ZIP archive.
DETAILS
Vulnerable Systems:
* TurboZIP version 6.0 Build 002021004
Patch / Workaround:
Update to the version released on 2006-07-23 that contains DZIP32.DLL
version 5.0.0.8.
Note: There is no change to the TurboZIP version number.
Details:
This advisory discloses a buffer overflow vulnerability in TurboZIP. The
stack-based buffer overflow occurs when TurboZIP is attempting to repair a
ZIP archive that contains a file with an overly long filename. It is
possible to exploit the buffer overflow to execute arbitrary code.
In order to exploit this vulnerability successfully, the user must be
convinced to open a malicious ZIP file. When such a file is opened,
TurboZIP will notify the user that the archive is corrupted and asks
whether it should be repaired. The buffer overflow will only occur if the
user selects "yes" to repair the archive.
The buffer overflow occurs in DZIP32.DLL (version 5.0.0.4) that is
distributed with TurboZIP
The buffer overflow occurs in a function that resembles the following in
DZIP32.DLL.
func_20011400(arg_0, arg_4, arg_8)
{
DWORD var1;
DWORD var2;
DWORD bytesWritten;
char buffer[0x800]; // 2048 bytes
...
var1 = 0;
var2 = 0;
// Both cases will cause buffer overflow in "buffer"
// when filename of compressed file is > 2048 bytes
if(arg_8->someFlag == 0)
CharToOemA(arg_0->NameOfCompressedFile, buffer);
else
lstrcpyA(buffer, arg_0->NameOfCompressedFile);
...
...
...
}
Disclosure Timeline:
2006-07-03 - Vulnerability Discovered.
2006-07-17 - Initial Vendor Notification.
2006-07-23 - Vendor Released Fixed Version.
2006-07-25 - Public Release.
ADDITIONAL INFORMATION
The information has been provided by <mailto:chewkeong@xxxxxxx> Tan Chew
Keong.
The original article can be found at: <http://vuln.sg/turbozip6-en.html>
http://vuln.sg/turbozip6-en.html
========================================
This bulletin is sent to members of the SecuriTeam mailing list.
To unsubscribe from the list, send mail with an empty subject line and body to: list-unsubscribe@xxxxxxxxxxxxxx
In order to subscribe to the mailing list, simply forward this email to: list-subscribe@xxxxxxxxxxxxxx
====================
====================
DISCLAIMER:
The information in this bulletin is provided "AS IS" without warranty of any kind.
In no event shall we be liable for any damages whatsoever including direct, indirect, incidental, consequential, loss of business profits or special damages.
- Prev by Date: [NT] DynaZip DZIP32.DLL/DZIPS32.DLL Buffer Overflow Vulnerabilities
- Next by Date: [NT] AGEphone "sipd.dll" SIP Packet Handling Buffer Overflow
- Previous by thread: [NT] DynaZip DZIP32.DLL/DZIPS32.DLL Buffer Overflow Vulnerabilities
- Next by thread: [NT] AGEphone "sipd.dll" SIP Packet Handling Buffer Overflow
- Index(es):
Relevant Pages
|
|