macOS TCC の脆弱性 CVE-2024-54527:バイパスの可能性を証明する PoC とは?

macOS Vulnerability CVE-2024-54527 Unveiled: TCC Bypass PoC Exploit Code Released

2025/01/08 SecurityOnline — macOS に存在する深刻な TCC (Transparency, Consent, and Control) バイパスの脆弱性 CVE-2024-54527 の詳細が、セキュリティ研究者である Mickey Jin による技術解説PoC エクスプロイト・コードにより明らかになった。MediaLibraryService XPC サービスに影響を及ぼす、この脆弱性を悪用する攻撃者により権限が操作され、TCC 保護がバイパスされることで、深刻なセキュリティ・リスクがもたらされる。

この欠陥は、以下の XPC サービス内に存在する。

“/System/Library/Frameworks/MediaLibrary.framework/Versions/A/XPCServices/com.apple.MediaLibraryService.xpc”

Mickey Jin によると、このサービスには、以下のような強力な TCC 権限が含まれているという。

  • com.apple.private.tcc.manager:tccd デーモンを介して TCC データベース (TCC.db) へのダイレクトな変更アクセスを許可する。
  • com.apple.private.tcc.allow:kTCCServicePhotos へのアクセスを有効化し、メディア関連の操作を容易にする。

Mickey Jin は、「ILUserLibraryPluginLocationPath に悪意のあるプラグインを配置する攻撃者は、権限のある XPC サービスに、それをロードさせることが可能となる。その結果として攻撃者は、強力な権限である “com.apple.private.tcc.manager” の悪用が可能となり、TCC 保護を完全に回避できる」と説明している。

この問題は、プラグイン・パスである “~/Library/Application Support/iLifeMediaBrowser/Plug-Ins” が、 SIP (System Integrity Protection) や TCC により保護されないという事実により、さらに悪化している。つまり、ルート・アクセスを必要とせずに、変更される可能性が生じている。

Jin が解説するのは、保護されていないプラグイン・パスに、悪意のプラグインを挿入するエクスプロイト・プロセスである。その後に、署名されていない悪意のプラグインは、脆弱な XPC サービスによりロードされ、権限を悪用することで macOS の TCC 保護を完全に回避していく。

このエクスプロイトを実行するには:

  1. ペイロードをコンパイルし、適切なパスに配置する。
  2. macOS Ventura で導入された、Launch Constraints などの最新セキュリティ機能を回避するために、古い macOS システムからコピーした、脆弱なバージョンの XPC サービスを悪用する。
  3. 有効化されたアドホックなコード署名を使用して、エクスプロイト・プログラムをコンパイル/実行する。

この PoC エクスプロイト・コードは、Jin の GitHub リポジトリで公開されている。


すでに Apple は、macOS Ventura の Launch Constraints などの緩和策を導入し、この種のエクスプロイトに対抗している。その一方で Jin は、古い macOS バイナリは依然として脆弱であり、新たなセキュリティ対策であっても、攻撃者による回避が可能であることを強調している。

ユーザーに対しては、macOS システムを最新バージョンへと更新することを、そして、Apple に対しては、古いバイナリの保護を強化することを、Jin は求めている。