パッチが適用されていない Parallels Desktop の特権昇格の脆弱性に対する 2 種類の悪用が公開され、影響を受ける Mac デバイスで root 権限を取得できるようになった。
Parallels Desktop は仮想化ソフトウェアであり、Mac ユーザが macOS と一緒に Windows、Linux、その他のオペレーティングシステムを実行できるようにします。開発者や企業、再起動せずにMac上でWindowsアプリケーションを必要とするカジュアルユーザーの間で非常に人気がある。
セキュリティ研究者のミッキー・ジンは先週、9月に修正された特権昇格の欠陥であるCVE-2024-34331に対するベンダーの修正プログラムをバイパスすることを実証するエクスプロイトを公開した。
この欠陥は 2024 年 5 月にMykola Grymalyuk によって初めて発見され、Parallels Desktop for Mac のコード署名検証の欠如に起因していました。
ジン氏は、ゼロデイパッチバイパスのエクスプロイトを公開したのは、開発元がこの欠陥を 7 ヶ月以上修正せずに放置していたためだと述べています。
「ベンダがこの脆弱性を 7 ヶ月以上放置していたため、この 0-day exploit を公開することにしました。
「攻撃者がこの脆弱性を悪用する可能性があるためです。
Parallels の修正を回避する
Parallels のオリジナルパッチは、’createinstallmedia’ ツールに root 権限を付与する前に Apple の署名があるかどうかを確認することによって、信頼されていないコードの実行を防止しようとしていました。
しかし、Jin 氏はこの検証には欠陥があり、攻撃者は少なくとも 2 つの方法でこの検証をバイパスできることを示しました。
1つ目は、「createinstallmedia」がAppleの署名入りかどうかをチェックしてからroot権限で実行するまでの間のレースコンディションを悪用するTOCTOU(time-of-check to time-of-use)攻撃だ。
攻撃者は偽の macOS インストーラを作成し、Parallels が Apple 署名済みの ‘createinstallmedia’ バイナリを確認するのを待ち、実行前に悪意のあるスクリプトに置き換えて root 権限を獲得します。
2 つ目のエクスプロイトは、任意の root 権限でファイルを上書きする脆弱性がある ‘do_repack_manual’ 関数を介した攻撃です。
do_repack_manual’ 関数を操作することによって、攻撃者はシンボリックリンクを使用して特権フォルダをリダイレクトし、Parallels を騙して攻撃者が制御するファイルをルート所有のパスに書き込ませ、root 権限で実行される ‘p7z_tool’ を置き換えます。
パッチの状況
Jin 氏は Mykola 氏の記事を読んですぐにバイパスの可能性を発見し、2024 年 6 月に Parallels に報告しました。
研究者によれば、Parallels はこの報告について調査することを約束したが、その後 3 回のアップデートの要請(最後の要請は 2025 年 2 月 19 日)にもかかわらず、Parallels からの回答はなかったという。
研究者は、TOCTOU 攻撃を含む今回の最初のエクスプロイトは、Parallels の最新バージョンである 20.2.1(55876) および 19.4.0 以降のすべてのバージョンで機能すると警告しています。
Parallels はバージョン 19.4.1 でリパックプロセスを変更し、’do_repack_createinstallmedia’ から ‘do_repack_manual’ に切り替えたため、エクスプロイトが解除されました。
しかし、この変更により、攻撃者が任意のルート所有ファイルを上書きできる新たな脆弱性が導入され、2つ目の悪用が可能になった。
この変更は最新バージョン(20.2.1)で元に戻されたため、エクスプロイトは再び機能するようになった。
結論として、最新バージョンを含むすべての既知のバージョンの Parallels Desktop には、少なくとも 1 つのエクスプロイトに対する脆弱性が存在します。
は Parallels に連絡を取り、Jin の調査結果および報告書についてコメントを求めたが、すぐに回答は得られなかった。
Comments