|
|
| [FFRRA-20071025-1] 一太郎2007 JSTARO4.OCXのリッチテキストファイル処理におけるコピーループのバッファオーバーフロー脆弱性 |
■ 報告日:
2007年8月9日
■ 公開日:
2007年10月25日
■ ソフトウエア名:
一太郎ビューア
一太郎11
一太郎12
一太郎13
一太郎2004
一太郎2005
一太郎文藝
一太郎2006
一太郎ガバメント2006
一太郎2007
一太郎ガバメント2007
一太郎2007体験版
一太郎Lite2
一太郎 for Linux
■ ベンダー:
ジャストシステム
http://www.justsystem.co.jp
■ Upcoming Advisory 番号:
FFRUA-20070809-1
■ 概要:
フォティーンフォティ技術研究所リサーチチームは、一太郎2007、および一太郎ビューアのリッチテキストファイル処理にバッファオーバーフロー脆弱性を発見しました。細工された文書ファイルをこの文書作成ソフトウエアで開くことで、あるいは、細工された文書ファイルが置かれたwebサイトをInternet ExplorerやFirefox等のwebブラウザで閲覧することで、文書ファイル中に記述された任意のコードを実行させる事ができます。
■ 詳細:
リッチテキストファイルの"{\header \pard}"フィールドにて、"pard"を長い文字列(64KB程度)に置き換え、一太郎に読み込ませることでバッファオーバーフローを発生させることができます。また、リッチテキストファイルの拡張子をjtdとすることで、webブラウザのプラグイン経由、またはActiveXコントロール経由(clsid:B7329235-1D72-4037-B41B-DAA44B9A12F7)でこの脆弱性を攻略することができます。
バッファオーバーフロー脆弱性は、JSTARO4.OCXに存在します。
JSTARO4.OCX
Base Address : 02BD0000
・・・略・・・
.text:02D41A8E loc_2D41A8E:
.text:02D41A8E
.text:02D41A8E call ds:__p___mb_cur_max
.text:02D41A94 cmp dword ptr [eax], 1
.text:02D41A97 jle short loc_2D41AA5
.text:02D41A99 push edi
.text:02D41A9A push ebx
.text:02D41A9B call ds:_isctype
.text:02D41AA1 pop ecx
.text:02D41AA2 pop ecx
.text:02D41AA3 jmp short loc_2D41AB3
.text:02D41AA5
.text:02D41AA5 loc_2D41AA5:
.text:02D41AA5 call ds:__p__pctype
.text:02D41AAB mov eax, [eax]
.text:02D41AAD mov ax, [eax+ebx*2]
.text:02D41AB1 and eax, edi
.text:02D41AB3
.text:02D41AB3 loc_2D41AB3:
.text:02D41AB3 test eax, eax
.text:02D41AB5 jz short loc_2D41AD2
.text:02D41AB7 cmp dword ptr [esi+19B4h], 1
.text:02D41ABE jz short loc_2D41AD2
.text:02D41AC0 mov [ebp+0], bl ; Buffer Overflow
.text:02D41AC3 push dword ptr [esi+8]
.text:02D41AC6 mov ecx, esi
.text:02D41AC8 inc ebp
.text:02D41AC9 call sub_2D43F73
.text:02D41ACE mov ebx, eax
.text:02D41AD0 jmp short loc_2D41A8E
02D41A8Eから02D41AD0でバッファコピー伴うループが構成されています。コピー元バッファはユーザーがjtdファイルで指定した文字列となっており、コピー先バッファはスタック上に配置されたローカルバッファとなっています。コピー処理にてコピーサイズが適切にチェックされておらず、コピー元バッファをページバウンダリまでユーザーが指定した文字列で埋めつくす事が可能です。このため、02D41AC0のmov命令にて例外ハンドラポインタを上書きすることができ、任意のアドレスにジャンプさせることができます。
■ 深刻度:
高
■ 対象OS:
Microsoft Windows
■ 脆弱性情報の取り扱い:
本脆弱性は、情報処理推進機構(IPA)の「情報セキュリティ早期警戒パートナーシップガイド」に従って処理されました。
http://www.ipa.go.jp/security/vuln/
■ 対策:
ベンダーが提供するパッチを適用してください。
http://www.justsystems.com/jp/info/pd7004.html
■ 関連情報:
http://jvn.jp/jp/JVN%2350495547/index.html
http://www.ipa.go.jp/security/vuln/200710_Ichitaro.html
http://www.ipa.go.jp/security/vuln/documents/2007/JVN_50495547.html
■ 発見者
鵜飼裕司
■ より詳細な情報:
FFR Prime Analysisサービスでは、
- 本脆弱性のより詳細な分析
- 攻撃案定性分析
- パッチ差分解析
など、より詳細な情報を提供しています。
http://www.fourteenforty.jp/services/index.htm
■ お知らせ
リサーチエンジニア、ソフトウエアエンジニアの募集を行っています。
http://www.fourteenforty.jp/recruit/index.htm
