7-ZIP32.DLLにバッファオーバーフローの脆弱性 18
ストーリー by mhatta
使ってる人多いのかな 部門より
使ってる人多いのかな 部門より
ITmediaの記事によれば、情報処理推進機構(IPA)セキュリティセンターおよびJPCERTコーディネーションセンター(JPCERT/CC)は9月5日、圧縮・解凍用 Windows DLL「7-ZIP32.DLL」にバッファオーバーフローの脆弱性が見つかったとして、JVN(Japan Vulnerability Notes)に情報を公開した。
とのことなので、お使いの方はさっさとアップデートしましょう。
つか (スコア:2, 参考になる)
# IPA は、JPCERT/CC よりはましとはいえ、まともに仕事する (と思っている) わけではないですけど、様子から見るとたぶん 7-zip.org には連絡していないな。
Re:つか (スコア:2, 参考になる)
なんだか相当に厄介なバグみたいですね。
Re:つか (スコア:1)
#作者はバグと言っているけど……
Re:つか (スコア:1, すばらしい洞察)
とここまで詳しい情報が出てるのに、無視して記事を書くというのは凄いな。特定の2次情報の劣化コラージュ以外禁止されてるのか、本家にも当たったけど「信頼に足る情報」が入手できなかったのか。
ところで、本家のhistory.txtにある、Version 4.55 beta 2007-09-05 Some bugs were fixedってのは、互換DLL同様にヒープバッファオーバーフローの問題を修正したんだろうかね(互換DLL配布サイトの説明だと、08/30に発見された問題は互換DLL特有の問題であるように読めるけど)。
本家7-Zipのスタックオーバーフローは無関係では (Re:つか) (スコア:2, 興味深い)
タレコミ文に重要な情報が書かれていないとは僕も感じました。 7-Zip32.dll なんて知らなかったので、てっきり 7-Zip にバッファオーバーフローが見つかったのかと思いましたし。でも、補足は補足が必要だと思った人がするということで良いのではないかとも思います。
まず、 7-Zip32.dll [cjb.net] というのは 7-Zip [7-zip.org] のソースコードに手を加えて統合アーカイバプロジェクト [csdinc.co.jp]の仕様に合うようにして作られた DLL です。ここでは改変前の 7-Zip を本家と呼びます。
7-Zip32.dll の作者である秋田稔さんの説明 [cjb.net]には、本家のコードにはスタックオーバーフローがあると書かれています。このスタックオーバーフローの詳細はよくわかりませんが、 7-Zip32.dll のバッファオーバーフローとは別個の問題のように見えます。
発見者である鵜飼裕司さんによるアドバイザリー [FFRRA-20070905] 7-ZIP32.DLL におけるバッファオーバーフローの脆弱性 [fourteenforty.jp]には、本家のスタックオーバーフローというのは出てきません。
秋田さんと鵜飼さんの説明を合わせると、
という感じに見えます。本家コードでスタックオーバーフローが発生しなくても、結局 7-Zip32.dll のエラーメッセージ表示ルーチンが呼ばれてバッファオーバーフローが起きることには変化がないのではないかと想像されます。なので、二つは別個の問題だと思います。そもそも本家のスタックオーバーフローというのはセキュリティーホールではないのではないかとも思います。
普通、スタックオーバーフローは自動的に検出されるので、攻撃が難しいです。なお、「スタック・オーバーフローで任意コードを実行できるか? [nikkeibp.co.jp]」 (今回の発見者と同じ鵜飼さんによる 2006 年の記事) によると、特殊な状況ではスタックオーバーフローが攻撃できる場合もあるらしいですが、僕には文中の条件 1 が満たされる状況がそもそも想像できません。
Re:本家7-Zipのスタックオーバーフローは無関係では (Re:つか) (スコア:2, 参考になる)
だから本家7-Zipアーカイバとは別の問題だよね.(それとも7-zip.dllの脆弱性も報告されてるのか?)
### 本家7-Zipアーカイバの愛用者だからタレコミ見てすごく焦った......
Re:本家7-Zipのスタックオーバーフローは無関係では (Re:つか) (スコア:2, 興味深い)
はい、そうです。なお、本家 7-Zip には 7-zip.dll 以外に 7z.dll という名前の DLL ファイルも含まれます。念のため。
#1217082 [srad.jp] を書いたのは、今回 7-Zip32.dll の 4.42.00.03 以前に見つかったバッファーオーバーフローが本家 7-Zip にも関係あると思っている人が多いように感じたからです。詳しく見たわけではないので、僕がわかっていないだけで本当は関係があるのかもしれませんけど。
Re:本家7-Zipのスタックオーバーフローは無関係では (Re:つか) (スコア:1, 参考になる)
>そもそも本家のスタックオーバーフローというのはセキュリティーホールではないのではないかとも思います。
スタックオーバーフローとバッファオーバーフローとヒープオーバーフローの定義が正しく運用されない限り、発見者/対応者の発言から危険度を判断はつかないと思います。
実際、発見元でさえ、タイトルにバッファオーバーフローと書いていながら、説明文ではヒープオーバーフロー [fourteenforty.jp]となっている訳ですし、その鵜飼氏さえも、「”スタック・ベースのバッファ・オーバーフロー”が“短縮”されて、まれに”スタック・オーバーフロー”と呼ばれる [nikkeibp.co.jp]」と認めているわけですから。
#スタックオーバーフローの94%は乙女心で出来ています [nosv.org]
#ヒープオーバーフローの68%は怨念で出来ています [nosv.org]
#バッファオーバーフローの47%は犠牲で出来ています [nosv.org]
Re:本家7-Zipのスタックオーバーフローは無関係では (Re:つか) (スコア:1)
ご指摘ありがとうございます。確かに、秋田さんのいう「スタックオーバーフロー」がスタック内のバッファーのオーバーフローの意味だったらそっちもセキュリティーホールになりえますね。僕はその用法は誤りだと思っていますが、確かにその意味で使われている例は見たことがあります。
#1217082 [srad.jp] の内容のうち、秋田さんの説明中に出てくる本家 7-Zip の 4.53 より前 (どのバージョン?) に見つかった「スタックオーバーフロー」 (詳細不明) は、 7-Zip32.dll の 4.42.00.03 以前に見つかったバッファーオーバーフローとは独立した話であって分けて考えるべき、という点は依然有効だと思っています。
Re:本家7-Zipのスタックオーバーフローは無関係では (Re:つか) (スコア:0)
Re:本家7-Zipのスタックオーバーフローは無関係では (Re:つか) (スコア:1)
なんだ、書いてあるじゃん! 読んだのにもう忘れていました。たぶん 3 歩歩くとすべて忘れるのでしょう。
ということで、 #1217489 [srad.jp] は間違いです。やっぱり本家 7-Zip にセキュリティーホールなんか最初からなかったのでは、というのが現時点の僕の結論です。
発見者のひと (スコア:2, 興味深い)
詳しくはセキュめものJVN#62868899 - 7-ZIP32.DLL におけるバッファオーバーフローの脆弱性 [ryukoku.ac.jp]が参考に参考になるかと思います。
# 公表当日に対策済みでもタレコミしてなかったことが悔しいのでAC
Lhaz も(オフトピック) (スコア:2, 参考になる)
国産総合アーカイバのひとつ Lhaz にも脆弱性 [itmedia.co.jp]が発見され
修正版 v1.34 が正式リリース [chitora.jp]されています。
+Lhaca の際 [srad.jp]も利用者が幾人か名乗り出ていましたが、
自身で利用していなくても、身の回りの利用者への警鐘も含め、ご注意を。
この種の脆弱性でいつも思うんだけど (スコア:1, 興味深い)
#もしかしてほとんど効果ないのかな
Re:この種の脆弱性でいつも思うんだけど (スコア:1, 興味深い)
Re:この種の脆弱性でいつも思うんだけど (スコア:1, 興味深い)
実行コードが示されない限り、有効/無効の判断が付かないから。
#だから、「可能性」しか示されないわけで
ま、それ以前に
・全てのプロセッサでハードウェアDEPを実装してないCPUでは意味がない。
・ハードウェアDEPを有効に出来ないWindowsXP SP2以前では意味がない。
と言う点を解決できない限り、リスク発生段階で潰したほうが有効だからでしょう。
Re:この種の脆弱性でいつも思うんだけど (スコア:1)
何故なんだな! (コミュニケーション不全)
一般論としては、効果がある場合もあるでしょう。「この種の脆弱性」が何を指すのかわかりませんが、セキュリティーホールが公表されるときに「ハードウェア DEP を有効にしていれば、この欠陥を悪用した攻撃の一部を回避できる」のような記述が付いていることもあります。例: 今年 5 月に Excel 2003 に見つかったセキュリティーホールの、発見者によるアドバイザリー [idefense.com]。
今回の 7-Zip32.dll の脆弱性に関しては、セキュリティーホールが見つかって修正されたという状況で、ハードウェア DEP を有効にしたら回避できるかどうかを検証する気が起きる人がほとんどいないというだけだと思います。そんなこと考えている間に最新版に上げてしまう方が簡単で確実なので、調査するコストに見合うメリットがないのでしょう。
Re:この種の脆弱性でいつも思うんだけど (スコア:0)
アンチウィルスと同じく無意味ですね。