DRAM スクランブルでCPU保護機能を全解除

मूल शीर्षक: Spaghettifying DRAM

यह क्यों महत्वपूर्ण है

ハードウェアレベルの保護機構がDRAMアドレス操作で迂回可能であることを示し、CPU・プラットフォームセキュリティ設計に根本的な問題提起をする。

セキュリティ研究者xoreaxeaxeaxが、DRAM コントローラーの物理アドレス変換を改ざんすることでAMD Family 16h CPUのPSP・SMM・マイクロコード等の保護領域を解除するツール「skitter-creek-bath-salts」をGitHubで公開した。

GitHubユーザーxoreaxeaxeaxは、DRAM スクランブリングを利用してCPUのあらゆる保護機能を解除する概念実証ツール「skitter-creek-bath-salts」を公開した。

このツールはDRAM コントローラーに働きかけ、物理的なDRAMアドレス変換を書き換えることでプラットフォームメモリ全体をスクランブル状態にする。これにより、通常はカーネルからも不可視の保護領域(カーブアウト)が露出し、その上に構築されたセキュリティ機構が崩壊する仕組みだ。

具体的に解除可能な対象として以下が挙げられている:Platform Security Processor(PSP)、System Management Mode(SMM)、C6 DRAM領域、CPUマイクロコード。

開発・検証はAMD Family 16h世代のCPUで行われた。この世代はデータシートにDRAM コントローラーのトランスレーションレジスタが記載されており、かつそれらがロックできないことが明示されている唯一の世代とされる。AMD 17h以降はこの情報をデータシートから省略しているが、研究者はARM・RISC-Vを含む他アーキテクチャにも同様の変換処理が存在すると指摘している。

リポジトリには483のスターと55のフォークが付いており、analysis・data・kernel・userspaceなどのディレクトリが含まれている。

स्रोत

github.com — मूल लेख पढ़ें →