セキュリティ専門家は、ロシアのセキュリティ企業カスペルスキーを標的とした、4年間にわたるiPhoneハッキング作戦を明らかにした。これは「これまでで最も洗練された攻撃」と評されている。
Operation Triangulationの攻撃は、iOSバージョン16.2までを対象とした、ゼロクリックiMessage攻撃を含む複雑な一連のエクスプロイトで構成されていました。攻撃は、未公開のTrueTypeフォント命令を悪用した悪意のあるiMessage添付ファイルから始まり、リモートコード実行を引き起こしました。
カスペルスキーの研究者ボリス・ラリン氏によると、このエクスプロイトチェーンには、リターン/ジャンプ指向プログラミング、JavaScriptの難読化、JavaScriptCoreとカーネルメモリの操作など、複数の手法が組み込まれていたという。
攻撃の重要な部分は、特殊なハードウェア制御(MMIOレジスタ)を用いてAppleのPage Protectionセキュリティレイヤーを回避することでした。これは、セキュリティ欠陥データベースでCVE-2023-41990、CVE-2023-32434、CVE-2023-38606として追跡されている特定の脆弱性を利用して実行されました。
これらの欠陥を悪用することで、攻撃者は iPhone のすべてのメモリにアクセスし、完全な制御を取得して、マイクからの録音、写真、位置情報、その他の機密データをサーバーに送信するなどのさらなる操作を実行できるようになります。
これらの脆弱性の一つであるCVE-2023-38606は特に巧妙で、攻撃者は新型iPhoneの追加セキュリティを回避できました。これは、おそらく問題のチェックと修正を目的としていると思われるAppleチップの隠しパーツを使って、iPhoneのメモリの特定の領域にデータを送信することで実行されました。
三角測量エクスプロイトチェーンの図
研究者たちは、これらの隠された部品がiPhoneのグラフィックプロセッサに接続されていることを発見しました。アクセスを試みると、グラフィックプロセッサがクラッシュし、これが攻撃の一部であったことが明らかになりました。
0x206040000という番号のコントロールは、攻撃の開始時と終了時に使用されたため、非常に重要でした。これは、特定のハードウェア機能のオン/オフを切り替えたり、攻撃中にアラートを管理したりするために使用されたことを示唆しています。
Apple は、デバイスの内部マップ (デバイス ツリーと呼ばれる) を更新し、攻撃で悪用されていた特定のメモリ領域 (具体的には 0x206000000 ~ 0x206050000 および 0x206110000 ~ 0x206400000 の範囲) を認識してアクセスを制御することで、セキュリティ問題を修正しました。
デバイスのシステム(XNU)は、このマップを使用して、メモリの特定の部分へのアクセスを許可するかどうかを判断します。マップ内の各領域には、メモリの種類と用途を明確に示すラベルが付けられています。
三角測量から安全を保つことは可能ですか?
Apple はすでに、ここで使用されたエクスプロイトの組み合わせにパッチを当てています。
ゼロデイ攻撃から完全に身を守ることは不可能ですが、iPhoneユーザーは被害を軽減するための対策をいくつか講じることができます。しかし、今回の攻撃はカスペルスキーの従業員を直接狙った標的型攻撃でした。
iOSを最新バージョンに定期的にアップデートすることは非常に重要です。既知のセキュリティ脆弱性の修正が含まれているためです。ユーザーは、特に不明なソースからのメッセージには注意し、疑わしいリンクをクリックしたり、添付ファイルをダウンロードしたりしないでください。
強力で固有のパスワードを使用し、Apple IDに2ファクタ認証を有効にすると、セキュリティがさらに強化されます。さらに、iPhoneのデータを定期的にバックアップすることで、攻撃を受けた場合の被害を軽減できます。
最後に、AppleはiOS 16、macOS Ventura、iPadOS 16でiPhone、Mac、iPadに「ロックダウンモード」と呼ばれる機能を追加しました。これは、高度なサイバー攻撃の標的となる可能性のある著名人向けに主に設計されたセキュリティ機能です。
この機能は、非常に制限的な性質があり、デバイスの機能を大幅に制限するため、日常的な使用には適していません。