by Tan Chew Keong タン チュー ケオン
Release Date: 2006-07-25
[en] [jp]
概要
TurboZIP
にバッファオーバーフローの脆弱性があります。悪意のある人は、この脆弱性を利用しTurboZIPユーザのシステムに、任意のコードを実行ことがで
きま
す。
問題を確認したバージョン
TurboZIP version 6.0 Build 002021004 (英語版)
問題
TurboZIP
にバッファオーバーフローの脆弱性があります。それが、巧妙に細工されたZIPファイルを修理するとき、バッファオーバーフローが発生します。悪意のある
攻撃者
は、この問題を利用し TurboZIP を実行するユーザの権限で任意のコードを実行できる可能性があります。
バッファオーバーフローの脆弱性が TurboZIP の DZIP32.DLL (version
5.0.0.4) にあります。
バッファオーバーフローの脆弱性が DZIP32.DLL の以下の似ているの function にあります。
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);
...
...
...
}
脆弱性のテストファイル
これは脆弱性のテストのためにファイルです。このZIPファイルは、バッファオーバーフローを利用し
calc.exe
を実行します。このZIPファイルは、英語版のWindows XP SP2が必要です。
Instructions:
- Run TurboZIP
- Click on the "Open" button or select
"File->Open..."
from the menu.
- Select the POC ZIP file from the File-Open Dialog Box
and click "Open".
- TurboZIP will notify you that the archive is invalid
and asks whether you want it repaired.
- Click on "Yes" to repair it
- Successful exploit will run calculator (calc.exe)
after about 10 seconds delay. Failed exploit will crash TurboZIP.
対策
2006年07月23日リリースのバージョン へのバージョンアップをしてください。修正版のダウンロード。
発見と報告の経緯
2006年07月03日 - 脆弱性の発見。
2006年07月17日 - ベンダに報告しました。
2006年07月23日 - ベンダは修正版をリリースしました。
2006年07月25日 - 本脆弱性の公開。