Parallels Desktop の脆弱性 CVE-2026-90894:パッチ提供前の root アクセス阻止のために

Parallels Desktop Flaw Lets Unprivileged Mac Users Gain Root Access

2026/09/16 gbhackers — Parallels Desktop に存在する深刻なローカル権限昇格の脆弱性は、JFrog の Vulnerability Research チームに所属する Yuval Moravchick により公表され、ParaShells と名付けられた CVE-2026-90894 である。この脆弱性を悪用する権限を持たない macOS ユーザーや悪意のあるプロセスにより、ホスト・システム上の root 権限が奪取される可能性がある。

この脆弱性は、Apple silicon システム上の Parallels Desktop バージョン 26.4.0 (ビルド 57513) に存在する。研究者によると、この攻撃では、管理者権限/実行中の仮想マシン/Parallels が署名したクライアント・アプリケーションが必要とされないため、低権限のローカル・ユーザーが Parallels の特権ホスト・サービスとやり取りすることで、攻撃者が制御するコードを root 権限で実行できる。

Parallels Desktop の脆弱性

この脆弱性の中心となるのは、アプライアンスのインストール/仮想マシンの登録/ネットワーク操作などを担う、Parallels Desktop の root 権限で動作するデーモン prl_disp_service である。このサービスは、/var/run/prl_disp_service.socket に配置された Unix ドメインソケットを介して通信するが、影響を受ける環境では、このソケットが全ユーザーから書き込み可能な状態となっており、任意のローカル・プロセスによる接続が可能になる。

JFrog の研究者が特定したのは、脆弱なローカル・クライアント認証とアプライアンス展開処理における、一連の引数インジェクションの問題である。PrlSrv_LoginLocal の仕組みでは、要求元プロセスが Parallels に属することが検証されず、代わりにローカルのピア認証情報が用いられるため、署名されていないクライアントからの接続も受け入れていたと報告されている。したがって、管理者権限を持たないローカル・アカウントであっても、アプライアンスのインストールに関連する特権機能を呼び出すことが可能である。

もう 1 つの問題は、Parallels がアプライアンスのアーカイブを展開するコマンドを構築する方法にある。脆弱なコードにより、ユーザーが制御する仮想マシンの親パスを用いて tar 展開コマンドが構成され、Qt の QProcess::splitCommand ルーチンに生成された文字列が渡される。それにより、この脆弱性を悪用する攻撃者は、親パスの値に引用符を埋め込むことで、tar コマンドへ渡される引数を変更できる。

これは一般的なシェル・コマンド・インジェクションではなく、攻撃者が制御するセミコロン/コマンド置換/連結されたコマンドなどをシェルに解析させる必要はない。その仕組は、tar の引数リストに追加のオプションを注入するものである。

研究者が実証したのは、–use-compress-program オプションの悪用であり、このオプションにより tar によるアーカイブ処理中に外部プログラムが起動される。prl_disp_service は root 権限で tar を呼び出すため、その外部プログラムも root 権限で実行される。

 one-liner POC script and got a root shell (Source: JFrog)
 one-liner POC script and got a root shell (Source: JFrog)

攻撃チェーンは、脆弱なバージョンの Parallels Desktop が稼働する Mac へのローカル・アクセスから始まる。攻撃者は、細工したアプライアンス・パッケージの提供/一般ユーザーとしてのディスパッチャーへの認証/細工したインストール・パスの指定などを実行できる。アプライアンスのインストール処理で展開エラーが報告された場合でも、すでに昇格した権限で注入されたプログラムは実行されている可能性がある。

このリスクが特に大きいのは、Parallels Desktop がインストールされた開発者向けワークステーション/共有トレーニングシステム/企業の Mac である。侵害された npm パッケージ/悪意のあるインストーラー/汚染された CI ワークフロー/標準ユーザーアカウントで実行されるコードなどを通じて、この脆弱性が悪用され、基盤となるホストが掌握される可能性がある。

管理者に求められるのは、Parallels Desktop バージョン 26.4.0 (ビルド 57513) が稼働するシステムの特定と、/var/run/prl_disp_service.socket の権限の確認、ベンダーのアップデートが提供され次第のパッチ適用である。組織にとって必要なのは、不審なアプライアンスのインストール活動/想定外の tar 子プロセス/異常な root 所有スクリプト/sudoers または launchd の永続化に使用される場所への権限のない変更を監視することである。