数日前、研究者チームから、 最初のロウハンマー攻撃 その にうまく誘導されました la GDDR6ビデオメモリ GPU、具体的には NVIDIA A6000 です。
この技術は、 GPUHammerと呼ばれるは、GPUのDRAM内の個々のビットを操作できる脆弱性であり、パラメータの1ビットを変更するだけで機械学習モデルの精度を大幅に低下させます。これらのビット反転により、悪意のあるGPUユーザーは、共有されたタイムスライス環境において、別のユーザーのGPUデータを操作できるようになります。
今まで、 ビデオメモリにロウハマーを適用することは非現実的だと考えられていた いくつかの技術的な制約により、GDDRチップのメモリセルの物理的なレイアウトはマッピングが困難で、アクセスレイテンシは従来のDRAMに比べて最大4倍遅く、リフレッシュレートは大幅に高くなっています。さらに、早期の電荷消失を防ぐ独自の保護メカニズムも備えており、そのリバースエンジニアリングには特殊な装置が必要でした。
これらの障害を克服するために、 研究者らはGDDR DRAMを対象とした新しいリバースエンジニアリング技術を開発した。彼らは低レベルのCUDAコードを用いて、特定の最適化によって特定のメモリセルへのアクセスを強化し、ビット操作が容易になる条件を作り出し、攻撃を実行した。成功の鍵は、隣接セルへの圧力を増幅させる、高度に組織化された並列コンピューティングの実現にあった。
攻撃はどのように機能しますか?
攻撃 DRAMの物理的な弱点を悪用し、 記憶の特定の列への集中的なアクセス(「ハンマリング」と呼ばれる) 隣接する行に変化を引き起こす可能性があるこの脆弱性は 2014 年に特定され、CPU DDR メモリで広範囲に研究されましたが、次の理由により、これまで GPU への移植は困難でした。
- GDDR6 の高いアクセス レイテンシ (DDR4 より最大 4 倍)。
- メモリの物理的な割り当ての複雑さ。
- TRR などの独自仕様で文書化が不十分な緩和策の存在。
Rowhammerは、メモリの2014行を高速にアクティブ化すると隣接する行のビット反転を引き起こすハードウェア脆弱性です。3年以降、この脆弱性はCPUやDDR4、DDR4、LPDDRXNUMXなどのCPUベースのメモリにおいて広く研究されてきました。しかし、AIや機械学習の重要なワークロードがクラウド内の個別のGPUで実行されるようになったため、Rowhammer攻撃に対するGPUメモリの脆弱性を評価することは非常に重要です。
これらの障害にもかかわらず、 研究者はリバースエンジニアリングを適用した CUDAにおける仮想/物理メモリの割り当てについて 彼らは特定のDRAMメモリバンクを識別する方法を開発した。 複数のスレッドとワープを使用して並列アクセスを最適化し、追加のレイテンシを発生させずにハンマリング レートを最大化します。
概念実証では、ディープニューラルネットワーク(DNN)モデルの重み、特にFP16指数における1ビットの反転が、ImageNet上の画像分類モデルのTop-80精度を0,1%からXNUMX%に低下させる可能性があることが示されました。この発見は、GPUを備えた共有環境でAIワークロードを実行するデータセンターやクラウドサービスにとって憂慮すべきものです。
緩和策と制限
NVIDIA はこの脆弱性を確認し、ECC サポートを有効にすることを推奨しています。 (エラー訂正コード)コマンドnvidia-smi -e 1を使用します。 この措置により誤りを修正できる シングルビット、 これは、パフォーマンスが最大 10% 低下することを意味します。 利用可能なメモリは6,25%減少します。また、複数のビット反転を伴う将来の攻撃に対する防御力もありません。
GDDR6000メモリを搭載したNVIDIA A6 GPUでRowhammerビット変動を確認しました。RTX 6などの他のGDDR3080 GPUでは、DRAMベンダー、チップ特性、あるいは温度などの動作条件のばらつきが原因と考えられるため、今回のテストではビット変動は見られませんでした。また、HBMメモリを搭載したA100 GPUでも変動は確認されませんでした。
チームは、 GPUHammerは現在、GDDR6000を搭載したA6 GPUでのみ検証されています。A100 (HBM) や RTX 3080 などのモデルでは利用できません。ただし、これは拡張可能な攻撃であるため、他の研究者がさまざまな GPU アーキテクチャやモデルで分析を再現して拡張することが推奨されます。
最後に、さらに詳しく知りたい場合は、以下の詳細を参照してください。 次のリンク。