セキュリティ

「macOSのユーザーデータ保護機能であるTCCは簡単に回避可能」という指摘


Appleの「Transparency, Consent and Control(TCC)」はmacOSに搭載されているセキュリティフレームワークで、ユーザーデータを関連アプリケーションのアクセスから保護する役割を担っています。しかし、macOS Mojaveから追加された「オートメーション」機能でこのTCCを回避する抜け道が存在していると、セキュリティ研究家のフィル・ストークス氏が報告しています。

Bypassing macOS TCC User Privacy Protections By Accident and Design - SentinelLabs
https://labs.sentinelone.com/bypassing-macos-tcc-user-privacy-protections-by-accident-and-design/


Appleは早い段階からユーザーデータの保護に積極的に取り組んでおり、2012年に発表されたOS X Mountain LionからTCCに基づいて管理機能を実装しています。このTCCはバージョンアップを重ねるごとに対象範囲が拡大しており、アプリケーションはユーザーから許可がなければユーザーデータにほとんどアクセスすることができないようになっています。

このTCCはユーザーレベルとシステムレベルという2つのレベルで存在し、ユーザーレベルでは、セキュリティ設定は個々のユーザーにのみ適用されます。例えば、Aさんが自分のデスクトップやダウンロードフォルダへのアクセスをターミナルに許可した場合、たとえBさんがAさんと同じデバイスでログインしても、ターミナルからBさんのデスクトップやダウンロードフォルダにアクセスできません。

ただし、Aさんが管理者ユーザーで、ターミナルに「フルディスクアクセス」を許可すると、BさんがTCCをどのように設定していても、AさんはBさんのデスクトップやダウンロードフォルダに容易にアクセスすることができるようになります。フルディスクアクセスは管理者権限を持つユーザーが設定できるものですが、「システム全体のすべてのユーザーへのデータアクセスを許可する」という意味を持ち、非常に強力です。なお、このフルディスクアクセスの権限管理は、macOS Mojaveから設定できるようになりました。


そして、Aさんがターミナルにフルディスクアクセスを許可した場合、管理者権限を持たないBさんも、「/usr/bin/tmutil」と「/sbin/mount」という2つのコマンドラインシステムのローカルスナップショットを作成してマウントすることで、すべてのユーザーへのデータにアクセスできるようになってしまいます。ストークス氏によれば、これはフルディスクアクセスの仕様であり、今後修正されることはないだろうと述べています。


アプリケーションのフルディスクアクセスは基本的にシステムの設定で管理されています。そして、macOSでは「常にフルディスクアクセスを許可されているにもかかわらず、システム環境設定ではアプリケーション一覧に表示されないアプリケーション」が唯一存在します。それが、Apple純正ファイルマネージャであるFinderです。

実はアプリケーションに他のアプリケーションの制御を許可する「オートメーション」機能で、アプリケーションにFinderを制御させることで、自動的にフルディスクアクセスを許可することが可能になります。


たとえば、ターミナルには通常フルディスクアクセスが許可されていませんが、オートメーションでターミナルにFinderの制御が許されている場合、ターミナルを介してTCCを回避してデータへのアクセスが可能になってしまいます。このTCC回避には、「ターミナルのようなアプリにオートメーションでFinderとの連係を許可するケースがよくあること」「Finderをオートメーションでアプリに制御させるのはパスワードが不要であること」という2点で問題があると、ストークス氏は指摘しています。

なお、TCCに関する脆弱性はこれまでにも複数報告されています。例えば、2020年8月に登場したマルウェア「XCSSET」は、SSH経由でTCCを回避する方法を悪用したものでした。XCSSETの脆弱性は2021年5月24日にリリースされたmacOS Big Sur 11.4で修正されています。

Xcodeプロジェクト経由で拡散するMac向けマルウェア「XCSSET」が登場 - GIGAZINE


また、TCCのアプリ検証フローが原因の脆弱性で、攻撃者が改変したアプリがユーザーデータに簡単にアクセスできてしまうことが判明。発見したエンジニアはAppleに既に報告済みですが、「報告してから半年も放置されている」と失望の念を表わしています。

Appleの脆弱性報奨金プログラムへ送られた脆弱性が半年間も未修正であると判明、発見者は「失望した」としてゼロデイ脆弱性を公開 - GIGAZINE


ストークス氏は「なぜフルディスクアクセスの画面にFinderが表示されないのでしょうか?なぜFinderのオートメーション制御がフルディスクアクセス管理を裏切ることが明らかになっていないのでしょうか?また、なぜパスワード認証が、実質的に同じ権限に対して簡単な同意を求めるだけのものに格下げされているのでしょうか?」とコメントし、TCCそのものの透明性の欠如によって、macOSユーザーが保護されていると思っているデータを知らず知らずのうちに公開してしまう危険性を負っていると指摘しています。また、すでにTCC回避をしたマルウェアが存在しており、他にもさまざまなバグが存在していると述べ、TCCが不正なアクセスからデータを保護してくれていると過信するべきではないと注意を促しています。

この記事のタイトルとURLをコピーする

・関連記事
Appleの脆弱性報奨金プログラムへ送られた脆弱性が半年間も未修正であると判明、発見者は「失望した」としてゼロデイ脆弱性を公開 - GIGAZINE

Xcodeプロジェクト経由で拡散するMac向けマルウェア「XCSSET」が登場 - GIGAZINE

Apple系アプリ開発者を標的とするマルウェア「XCSSET」が新たな脆弱性を突いていることが判明 - GIGAZINE

Apple系アプリ開発者を標的としたバックドア作成&スパイ機能を備えたマルウェアが見つかる - GIGAZINE

個人情報を抜き取るマルウェア「XcodeGhost」に感染してApp Storeで配信されていたことが判明しているアプリはコレ - GIGAZINE

in ソフトウェア,   セキュリティ, Posted by log1i_yk

You can read the machine translated English article here.