公開日:2018/05/07 最終更新日:2018/05/07

JVNVU#92147586
統合型 GPU に対する WebGL を利用したサイドチャネル攻撃 および Rowhammer 攻撃

概要

スマートフォンなどの GPU が統合されたプラットフォームを利用する機器は、WebGL を利用した DRAM へのサイドチャネル攻撃 および Rowhammer 攻撃を実行される可能性があります。この攻撃は "GLitch" と呼ばれています。

影響を受けるシステム

  • スマートフォンを含む GPU が統合されたプラットフォームを利用する機器

詳細情報

GLitch と呼ばれる攻撃は、当該機器のWeb ブラウザで WebGL を利用させることにより下記の2つの異なるタイプの攻撃を組み合わせて実行します。

  • DRAM アクセスに対するサイドチャネル攻撃を実行し、物理的なメモリレイアウトを特定する
  • Rowhammer 攻撃を実行し、DRAM の物理メモリを数ビットを反転させる
WebGL が提供する高精度タイマーを利用し、キャッシュされた DRAM とキャッシュされていない DRAM へのアクセス時間の違いを計測することで Rowhammer 攻撃の実行に必要なメモリ領域の情報を特定します。この攻撃によって、Android プラットフォーム上の Firefox sandbox をバイパスできることが示されています。なお、この攻撃は CPU と GPU が同じメモリを共有するプラットフォーム(スマートフォンや類似の機器)に対してのみ適用可能です。
詳細は VU#283803 および 発見者が提供する情報を参照して下さい。

想定される影響

当該機器で悪意のあるサイトにアクセスした場合、遠隔の第三者によってブラウザが提供するセキュリティ機能をバイパスされる可能性があります。

対策方法

アップデートする
Google Chrome および Mozilla Firefox はブラウザでの高精度タイマーを無効化したアップデートをリリースしています。

ベンダ情報

参考情報

  1. CERT/CC Vulnerability Note VU#283803
    Integrated GPUs may allow side-channel and rowhammer attacks using WebGL ("Glitch")
  2. GLitch - VUSec
    GLitch

JPCERT/CCからの補足情報

JPCERT/CCによる脆弱性分析結果

謝辞

関連文書

JPCERT 緊急報告
JPCERT REPORT
CERT Advisory
CPNI Advisory
TRnotes
CVE CVE-2018-10229
JVN iPedia