MIT CSAIL研究者のチームは、最近PACMANを開示しました, 「ポインタ認証をバイパスできる新しいハードウェア攻撃 (PAC) AppleM1CPUで。」この攻撃は、中央メモリ保護メカニズムを回避するための投機的実行攻撃に基づいています。, ARMポインタ認証として知られています, これは、ポインタの整合性のためのセキュリティ機能です.
PACMANとは何ですか?それはAppleにどのように影響しますか?
本質的に, PACMANは、オペレーティングシステムを危険にさらすために単独で使用することはできない悪用手法です。. 「PACMANで使用されるハードウェアメカニズムにソフトウェア機能をパッチすることはできませんが, メモリ破損のバグは,」チームは指摘しました.
抜け穴はポインタ認証コードに起因します, 略してPACとして知られています, これは、ポインタの予期しない変更から保護することを目的としたarm64eアーキテクチャのセキュリティ部分です。. すぐに言った, ポインタは、メモリアドレスをメモリに格納するオブジェクトです.
PACMANは、ソフトウェアとハードウェアの同時攻撃の組み合わせとして説明されています. 攻撃が機能するために, 既存のソフトウェアの脆弱性が必要です, 通常、メモリの読み取り/書き込みの問題であり、より危険なエクスプロイトになります. これにより、任意のコードが実行される可能性があります. でも, 成功するために, 攻撃シナリオには、特定の被害者ポインターのPAC値が必要です。. これは、いわゆるPACOracleを作成することによって実現されます。, または、PACが指定されたポインタと一致するかどうかを判断する機能, これらの条件下で:
誤った推測が提供された場合、PACOracleがクラッシュしてはなりません.
次に、PAC Oracleを使用して、考えられるすべてのPAC値をブルートフォースします。.
言い換えると, 「私たちのPACMAN攻撃の重要な洞察は、投機的実行を使用して、マイクロアーキテクチャのサイドチャネルを介してPAC検証結果をステルスにリークすることです。,」レポートによると.
働くために, 攻撃は、チームがPACMANガジェットと呼んだものに依存しています. これらのガジェットには2つの操作が含まれています:
- 推測されたPACの正しさを投機的に検証するポインタ検証操作;
- マイクロアーキテクチャのサイドチャネルを介して検証結果を投機的に送信する送信操作.
PACMANは野生で悪用されていますか? 研究者が知っている限り, 既知のアクティブな攻撃はありません. チームはそれ以来Appleと話し合っている 2021.
攻撃の完全な技術的開示は、元のレポートで入手できます [PDF].
5月に報告されたM1RACLESの脆弱性 2021
去年, AppleSiliconM1チップに影響を与える脆弱性が発見されました, として知られている M1RACLESおよびCVE-2021-30747. Apple Silicon M1チップの設計の欠陥により、OSで実行されている2つのアプリケーションが、それらの間で密かにデータを交換できるようになる可能性があります。, メモリを使用せずに, ソケット, ファイル, またはその他の通常のオペレーティングシステム機能. これは、異なるユーザーとして、異なる特権レベルで実行されているプロセス間で機能する可能性があります, 不正なデータ交換のための秘密チャネルの作成.