PathScope
権限昇格の経路分析ツール
この端末で、一般のユーザーから root(管理者権限)や機密データに届く「経路」を洗い出し、どこから直せば効果が大きいかを、優先度つきで示します。分析は読み取り専用で、設定の変更や修正は自動では行いません。
経路の分析
dockerグループへの所属、root の権限で動く実行ファイル(SUID)、root で動くサービスの書き換えられる実行ファイル、パスワード無しの sudo、cron、macOS のプライバシー許可(TCC)などから、root や機密データに届く経路を、図と一覧で示します。
対策箇所と修正案
先に直すと効果が大きい箇所(対策箇所)を、優先度つきで示し、修正のコマンド例と MITRE ATT&CK の対応を添えます。コマンドは自動では実行しません。「これを直したら?」で、直した場合の経路を仮に分析できます(この端末は変更しません)。
履歴と比較
分析結果は、この端末の中に履歴として残り、前回との違いを比べられます。定期実行の設定の書き出しと、複数台の結果の集計にも対応します。
LLM による解説と設定の読み取り(任意・既定はオフ)
有効にすると、LLM に分析結果の解説を書かせたり、sudoers・cron・スクリプトなど、書き方がまちまちで機械的には読みにくい設定ファイルを読ませて、root 権限に関わる記述を探させたりできます。見つかった内容は、元のファイルにその行が実際にあることを確かめてから、分析に使います。
10言語対応
画面は、日本語、English、한국어、简体中文、繁體中文、Deutsch、Français、Español、Italiano、Português の10言語で、OS の言語に自動で合わせ、設定で選び直せます。コマンドラインは、日本語と英語です。
コマンドライン
画面と同じ分析を、pathscope コマンドでも行えます。前回との違いで経路が増えたら終了コード1で知らせるなど、定期実行や自動化にも使えます。
画面の例



掲載している画面のデータ(ユーザー名やファイルのパスなど)は、すべて架空です。LLM の返答は、決まった返答を返す代わりのコマンドによるものです。
起動のしかた
Mac: アプリケーションフォルダの「PathScope」(RoamSwitch とは別のアイコン)を開き、「分析する」を押します。
コマンドライン: PathScope.app/Contents/MacOS/pathscope で、同じ分析を行えます。--what-if-fix=all(すべて直したらどうなるか)、--baseline=前回.json --fail-on=new(前回より経路が増えたら終了コード1)などを付けられます。
プライバシーと範囲
PathScope は、分析をすべてこの端末の中で行います。読み取り専用で、設定やファイルを変更しません。待受ポートを開かず、画面は外部のサイトを読み込みません。分析結果の履歴と設定は、この端末にだけ保存します。分析結果には、この端末の構成の機微な情報(ユーザー名、ファイルのパス、権限)が含まれるので、保管と共有の範囲を限定してください。
RoamSwitch の「Zero Telemetry」(通信内容・ログを外部に送信しない)は、RoamSwitch 本体についての説明です。PathScope の LLM 連携を有効にした場合の通信は、これに含まれません。LLM 連携をオフのままなら、PathScope が分析の内容を端末の外へ送ることはありません。
ライセンス
PathScope は Apache License 2.0 でライセンスされ、RoamSwitch の使用許諾契約(EULA)の対象ではありません。ライセンス文、NOTICE、同梱する第三者ソフトウェアの一覧は、アプリの中(PathScope.app/Contents/Resources)にあります。
動作環境と更新
macOS 12 以降。アプリの「アップデート」で「更新を確認」を押したときだけ、最新版の情報を取得するため lafine.net に接続します(この端末や分析結果の情報は送りません)。ダウンロードした更新は、署名を検証して合格したものだけを入れ替えます。