by Tan Chew Keong タン チュー ケオン
Release Date: 2006-07-25
[en] [jp]
概要
PowerArchiver
にバッファオーバーフローの脆弱性があります。悪意のある人は、この脆弱性を利用しPowerArchiverユーザのシステムに、任意のコードを実行こ
とができます。
問題を確認したバージョン
PowerArchiver version 9.62.03 (英語版)
問題
PowerArchiver
にバッファオーバーフローの脆弱性があります。それが、巧妙に細工されたZIPファイルに、新しいファイルを新規登録するとき、バッファオーバーフローが
発生しま
す。悪意のある
攻撃者は、この問題を利用し PowerArchiver を実行するユーザの権限で任意のコードを実行できる可能性があります。
バッファオーバーフローの脆弱性が PowerArchiver の DZIPS32.DLL (version
6.0.0.4) にあります。
バッファオーバーフローの脆弱性が DZIPS32.DLL の以下の似ているの function にあります。
func_20009B20(arg_0, arg_4, arg_8)
{
DWORD var1;
DWORD var2;
DWORD var3;
DWORD var4;
DWORD var5;
DWORD var6;
DWORD var7;
DWORD var8;
DWORD var9;
DWORD var10;
DWORD var11;
DWORD nNumberOfBytesToWrite;
DWORD bytesWritten;
char buffer[0x800]; // 2048 bytes
...
var1 = 0;
var2 = 0;
var3 = 0;
var9 = 0;
var11 = 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 PowerArchiver
- Click on the "Open" button or select "File->Open
Archive..." from the menu.
- Select the POC ZIP file from the File-Open Dialog Box
and click "Open".
- Click on the "Add" button or select
"Actions->Add.." from the menu.
- Choose any file in the File-Selection dialog box and
click "Add".
- Successful exploit will run calculator (calc.exe).
Failed exploit will crash PowerArchiver.
対策
Version 9.63 へのバージョンアップをしてください。修正版のダウンロード。
発見と報告の経緯
2006年07月08日 - 脆弱性の発見。
2006年07月17日 - ベンダに報告しました。
2006年07月25日 - ベンダは修正版をリリースしました。
2006年07月25日 - 本脆弱性の公開。