専門家がAppleのGatekeeperに新たな脆弱性を発見したと主張 — だがAppleはあまり深刻視していない模様


  • 研究者らが、以前実行済みの正規macOSアプリをマルウェアに置き換えることでGatekeeperを回避できることを実証
  • 攻撃には事前にユーザー権限でのコード実行が必要で、その後Gatekeeperが再検証しない悪意あるアプリにすり替える
  • Appleはこの問題を軽視し、ローカルで再構築されたバンドルはGatekeeperの対象外だとして、リスクをソーシャルエンジニアリングの範疇に位置づけた

2人の研究者が、悪意あるソフトウェアや信頼できないソフトウェアの実行からユーザーを保護するmacOS標準のセキュリティ機能「Gatekeeper」を回避する方法を発見したと主張しています。しかしAppleはこの見解に同調しておらず、この問題についてこれ以上追及しない方針を選んだようです。

Gatekeeperの仕組みは至ってシンプルです。ユーザーがApp Store以外からアプリをダウンロードすると、そのアプリが身元確認済みの開発者によるもので、かつAppleによって公証(notarize)されているかを検証します。検証できなければ、そのマシン上での実行を許可しません。

今回、セキュリティ研究者のTalal Haj Barky氏とTommy Mysk氏は、正規のアプリがmacOSデバイス上で一度でも実行されていれば、それを悪意あるバージョンに置き換えることができ、Gatekeeperはまったく反応しないと主張しています。

ローカルでビルドされたバンドル

つまりこの攻撃は、実行するのがそう簡単ではないということでもあります。攻撃者はまず、ユーザー権限でコードを実行する手段を確保する必要があります(例えば、悪意あるアプリ、パッケージマネージャー経由でインストールされた侵害済みのソフトウェアパッケージ、あるいはAIエージェントを騙すプロンプトインジェクション攻撃などです)。

その手段を確保した後、正規のアプリをアーカイブし、オリジナルを削除してからマルウェアに置き換えます。すると、Gatekeeperはそれを再認可しようとしません。この悪意あるバージョンは、すでに一定の信頼が確立されているため、さらにデバイスを侵害するよう被害者を騙すことができます。

この問題をAppleに報告したところ、同社は単にこの件をクローズしたようです。

「Appleはこの攻撃を『署名済み実行ファイルの改変』とはみなしていません」とMysk氏は述べています。「その代わりにAppleは、アプリバンドルをアーカイブ/復元することで、概念実証コードがアプリバンドル全体を上書きし、結果としてローカルでビルドされたものになると説明しています。ローカルでビルドされたアプリバンドルは、macOSの保護機構の対象外です。だからこそ、KeychainやTCC保護対象のディレクトリへのアクセスにはシステムの認可プロンプトが必要になるのです。そして、ユーザーがそれを承諾してしまうかどうかは、Appleが対象外とみなしているソーシャルエンジニアリング攻撃の領域の問題なのです」

翻訳元: https://www.techradar.com/pro/security/experts-claim-to-have-found-more-weaknesses-in-apples-gatekeeper-tool-but-it-doesnt-seem-too-bothered

ソース: techradar.com