必要なのはWebAssemblyだけ:WASMを使ったChromeとV8サンドボックスを10回以上エクスプロイトする
DAY 2
13:50-
14:30
ブラウザーは複数のコンポーネントが統合された複雑なソフトウェアであり、個々のコンポーネントとそれそれの統合レイヤーはバグの潜在的な原因となり得る。しかし、すべてのバグが同等に危険であるわけではなく、初期のバグの悪用可能性が疑わしい場合もある。また、完全に任意のコード実行を実現するためには、しばしば緩和策の回避が必要となる。Chromeでは、この緩和策がV8サンドボックスとして知られており、V8サンドボックス領域内で発生するメモリ破損が他のメモリ領域に影響を与えないようにすることを目的としている。これにより、初期のバグを任意のコード実行にまで発展させることが非常に困難になる… と考えられてきた。
本講演では、WebAssembly(WASM)が依然として強力な攻撃ベクターであり、初期のバグおよびV8サンドボックスの回避策を提供する優れた手段であることを示す。まず、TyphoonPWN 2024でWASMのバグを見つけ、それをV8でのVariant Analysisを通じて悪用した経緯を紹介し、このバグの修正がv8CTFでさらに簡単に悪用できるvariant-of-a-variant bugを明らかにした過程を説明する。また、無害なタイプミスにより発生したWASM TurboFanコンパイラの別のバグを紹介し、一見悪用不可能に見えるバグが、特定の構成やプラットフォームでは重大な悪用可能性を持つことを示す。さらに、WASMにおける10件以上のV8サンドボックス回避事例をリストアップし、これにより完全な修正が困難な新しい回避技術のパラダイムが開かれたことを示す。この研究は約2ヵ月という短期間で行われたが、複数のハッキングコンテストやVRP(Vulnerability Rewards Program)で合計25万ドル以上の賞金を獲得することができた。
講演を通じて、ChromeのWASM実装におけるバグの発見方法や、最新のChrome環境でそれらを悪用する手法について、全体像と技術的な詳細を提供する。ブラウザーのバグは「発見が難しい」という一般的な誤解に挑戦し、実際にはいくつかのバグが簡単に発見され、悪用可能であることを示す。講演の締めくくりとして、他の主要ブラウザーにおけるWASM実装に関する今後の研究やエクスプロイトのデモンストレーションを紹介する。
-
Location :
-
Track 2(HALL A)
-
-
Category :
-
U25
-
-
Share :
Speakers
-
Seunghyun Lee
スンヒョン・イ
スンヒョン・イ(別名:Xion、@0x10n)は、カーネギーメロン大学のコンピューターサイエンス学科に所属する博士課程の学生である。KAISTでコンピュータサイエンス・電気電子工学の学士号を取得し、在学中はハッキングラボの研究インターンとして活動していた。彼の研究は、システムセキュリティ、バイナリ解析、自動脆弱性発見およびエクスプロイト生成に焦点を当てている。
最近の研究では、ブラウザーやLinuxカーネルの脆弱性調査とエクスプロイトに取り組んでおり、ハッキング競技で複数の脆弱性を発見し、エクスプロイトに成功している。特筆すべき成果としては、Pwn2Own バンクーバー 2024において2つのブラウザーエントリーでの優勝、TyphoonPWN 2024におけるChromeエントリーでの最高賞金獲得、さらにGoogle kernelCTFやv8CTFでの複数のエントリーでの勝利が挙げられる。彼は国内外のセキュリティカンファレンスで研究を発表しており、POC2023でも講演を行った。また、時折CTF競技にも参加しており、Maple Mallard Magistratesの一員としてDEF CON CTF 2023および2024で優勝し、DEF CON Black Badgeを受賞している。