Upgrade to Pro — share decks privately, control downloads, hide ads and more …

「7-Zip」の脆弱性について解説する (CVE-2022-29072)

「7-Zip」の脆弱性について解説する (CVE-2022-29072)

第18回 初心者のためのセキュリティ勉強会(オンライン開催)の発表資料です。
https://sfb.connpass.com/event/244461/

kuzushiki

April 29, 2022
Tweet

More Decks by kuzushiki

Other Decks in Technology

Transcript

  1. CVE-2022-29072 ってなに? DISPUTED 7-Zip through 21.07 on Windows allows privilege

    escalation and command execution when a file with the .7z extension is dragged to the Help>Contents area. This is caused by misconfiguration of 7z.dll and a heap overflow. The command runs in a child process under the 7zFM.exe process. NOTE: multiple third parties have reported that no privilege escalation can occur. 要約すると下記のとおり 対象製品:Windows 版 7-Zip ~21.07(最新版) 実行手順: .7z のファイルを Help > Contents エリアにドラッグ 発生リスク:権限昇格やコマンドの実行 発生原因: 7z.dll の設定ミスとヒープオーバーフロー 第18回 初心者のためのセキュリティ勉強会 kuzu7shiki HTTPS://CVE.MITRE.ORG/CGI-BIN/CVENAME.CGI?NAME=CVE-2022-29072 より引用 ` ` ` ` 5 / 13
  2. 検証してみよう 脆弱性報告者の Kağan Çapar 氏から PoC らしきものが提供されている。 https://www.youtube.com/watch?v=sT1cvbu7ZTA https://github.com/kagancapar/CVE-2022-29072 7-Zip

    は下記リンクから最新版をダウンロード https://www.7-zip.org/a/7z2107-x64.exe 検証のため Windows は仮想マシンで実行 https://developer.microsoft.com/ja-jp/windows/downloads/virtual-machines/ 第18回 初心者のためのセキュリティ勉強会 kuzu7shiki 6 / 13
  3. 検証結果 1. .7z ファイルをヘルプファイルにドラッグしてコマンドが実行できるか 実行できることを確認した 実体は HTML であり、 ActiveXObject 経由でコマンドを実行していた

    ただし ActiveX を実行できるように設定変更が必要 悪用する際にヘルプファイルにドラッグさせるのは難しそう 2. 権限昇格ができるか そもそも PoC が用意されていなかったため確認できず 第18回 初心者のためのセキュリティ勉強会 kuzu7shiki ` ` ` ` ` ` ` ` 8 / 13
  4. 検証後に出てきた疑問点 疑問点1 CHM ファイル(Microsoft Compiled HTML Help)はそもそも HTML を用いて記述されるもの HTML

    ファイルをドラッグすると開かれるのは正常な動作では? 少なくとも 7-Zip の脆弱性ではない 疑問点2 なぜ権限昇格の PoC を秘密にするのか? -> 個人的にはデマの可能性が高いと考えている 第18回 初心者のためのセキュリティ勉強会 kuzu7shiki ` ` ` ` ` ` 9 / 13
  5. CVE の DISPUTED について Q. CVE Recordが DISPUTED とマークされているのはどういう意味ですか? A.

    ある当事者が、特定の問題を脆弱性であるとする他の当事者の主張に同意しない場合、その問題に割り当てられた CVE Record は 「DISPUTED」(異説あり)と指定されます。 このような場合、CVE プログラムはどちらの当事者が正しいかについての判断は行いません。 その代わり、この論争を記録し、問題の事実を理解しようとする人々により良い情報を提供するために、公的な参考文献を提 供するようにします。 DISPUTED となった CVE Record を見かけたら、その問題を参照するか、影響を受けるベンダーまたは開発者に連絡して、より 多くの情報を得ることをお勧めします。 -> 一言でまとめると、「正しいかどうかは参考文献を見て各自で判断してね」、ということ 第18回 初心者のためのセキュリティ勉強会 kuzu7shiki HTTPS://WWW.CVE.ORG/RESOURCESSUPPORT/FAQS より抜粋して要約 10 / 13
  6. 有識者の見解 下記は Google のセキュリティリサーチャーの Tavis Ormandy 氏の発言 本 CVE は取り下げられると確信していることがわかる。

    第18回 初心者のためのセキュリティ勉強会 kuzu7shiki Tavis Ormandy @taviso Replying to @taviso @tony_bridges_el and @MalwareJake I asked them, but their explanation doesn't make much sense. I think I'm confident this CVE is going to be withdrawn. Kağan @kagancapar Replying to @taviso @jonasLyk and @MeAsHacker_HNA No, there is a heap overflow here. Let me explain here that the command execution process takes place over the CHM file after a buffer overflow. The mistake 7-zip made here is that it calls the small process that occurs after calling the API ++ 12 / 13