本文へ
ハクソク

世界を動かす技術を、日本語で。

デスレイ:信頼できないサイトがMacをフリーズさせる簡単な方法

原文(auberon.xyz)

概要

  • WebGPUシェーダー を悪用した攻撃「Deathray」により、 MacのUIがフリーズ する脆弱性
  • リンクをクリックするだけ で発動し、再起動が必要になるケースが多い
  • MacOS限定 で再現し、他のOSでは深刻な影響は確認されていない
  • Appleは現時点で 重大なセキュリティ問題と認識していない
  • ユーザーの信頼を損なう可能性があり、 対策が求められる

Deathray:信頼できないサイトによるMacフリーズ攻撃

  • WebGPUシェーダー を利用した新しい攻撃手法「Deathray」の概要
  • 被害者がリンクをクリック するだけで、MacのグラフィックがハングしUIが操作不能となる現象
  • MacOSのChrome、Firefox、Safari すべてで再現、他のOSではタブフリーズ程度に留まる
  • MシリーズMacBook(Tahoe) で確認、他機種での再現性は未検証

技術的な仕組み

  • WebGPU はWebGLの後継として登場したブラウザ内蔵のGPU制御API
  • 攻撃コードは 非常に小さいファイル で実現可能
  • 重要部分は 無限ループを含むComputeシェーダー と、同一バッファを参照するVertexシェーダー
    • Computeシェーダーが バッファを無限にコピー し続ける
    • Vertexシェーダーが同じバッファを読み込もうとし、処理が停止
  • この結果、 WindowServer(MacのUI管理プロセス) もGPU資源を使えなくなり応答不能
  • 状況によっては マウス操作や画面表示も異常 になり、最終的にカーネルパニックが発生

他OSとの比較・Apple Siliconの課題

  • 他のOS ではGPUプロセスのプリエンプション(強制停止)が正しく機能し、深刻な影響を回避
  • Apple Silicon(Mシリーズ) ではGPU制御がカーネルから直接できず、 ASCコプロセッサ 経由となる特殊構造
    • プリエンプション制御は ASCファームウェア 内で完結
  • このアーキテクチャが 問題解決の難しさ につながっている可能性

過去事例とAppleの対応

  • 2023年にも類似事例 (ShadyShader、WebGL悪用)が発生し、AppleはCVE-2023-40441として 中程度(CVSS 6.5) の脆弱性認定
  • 当時は 入力検証強化 で対応
  • 今回のWebGPUでは 無限ループ検出が不十分 で、同様の問題が再発
  • Appleは本件を セキュリティ問題と認定せず、優先度が低い改善要望として扱う意向

セキュリティ観点とユーザー信頼

  • Appleの見解:「 クラッシュ・フリーズ・回復可能なデータ損失はセキュリティ問題でない」
  • セキュリティ研究者もこの意見に同調
  • 一方、 一般ユーザーの多くは「リンククリックでPC全体がフリーズ」は信頼侵害と感じる傾向
  • ブラウザの サンドボックス信頼性 に疑問を投げかける事例

今後への期待

  • Deathray はRCEやデータ漏洩ほど深刻ではないが、 被害発生の敷居が非常に低い
  • 悪用されれば「 意地悪なRickroll」のような迷惑行為が可能
  • Appleには WebGPUの無効化ではなく、適切なプリエンプション強化 による根本対策が求められる
  • ユーザー側も 不用意なリンククリックを避ける などの自衛が重要

まとめ

  • WebGPUの普及に伴う新たな攻撃リスク の顕在化
  • Apple Silicon固有のアーキテクチャ的課題 による対応の難しさ
  • ユーザー信頼とセキュリティ認識のギャップ が浮き彫りとなった事例
  • 今後の Appleの対応とWebGPUの発展 に注目