VU#293714: macOS (APFS) におけるシン... ノート

VU#293714: macOS (APFS) におけるシンボリックリンク追従による Develar app-builder (zipx.Unzip) の任意のファイル上書き

macOS、Windows、Linux向けのアプリケーションバンドルをパッケージ化および配布するために使用されるコマンドラインビルドツールであるDevelarのapp-builderに脆弱性が発見されました。この問題は、zipx.Unzip抽出ルーチンにおけるUnicode正規化の衝突と安全でないシンボリックリンク追従動作の組み合わせから生じます。これにより、攻撃者はUnicode正規化の衝突と悪意のあるシンボリックリンクを組み合わせたZIPアーカイブを作成することで、Apple File System(APFS)を使用するmacOSシステム上の任意のファイルを上書きできます。この脆弱性は、管理者権限を必要とせずにZIP抽出中に悪用可能であり、整合性の喪失、サービス拒否、または潜在的なコード実行につながる可能性があります。Develarのapp-builderはエコシステム全体で依存関係として広く使用されており、多数の下流リポジトリに影響を与えています。すでにいくつかのプロジェクトがその影響を軽減しています。完全な修復には、脆弱性をソースで修正する必要があります。GitHubのプルリクエストが開発され、下流の顧客に参照修正を提供しています。プルリクエストは、解決されたターゲットが出力ディレクトリから逸脱するシンボリックリンクを拒否し、通常のファイル書き込みにO_NOFOLLOWを追加することで、脆弱性のシンボリックリンク追従バリアントに対処しています。報告者のTomas Illuminatiは、多く下流のベンダーや開発者がこの問題を軽減するのを支援しており、Electron-Userlandは迅速に対応し、下流のユーザーを保護するための軽減策を実装しました。この脆弱性は、Unicode正規化の衝突とシンボリックリンク追従動作を組み合わせることで悪用でき、攻撃者はパス検証チェックをバイパスし、意図した抽出ディレクトリ外への書き込みをリダイレクトできます。CERT/CCは、ユーザーに問題について通知し、軽減および修復に関するガイダンスを提供するための脆弱性ノートを準備しました。全体として、この脆弱性はAPFSを使用するmacOSシステムのセキュリティに重大な影響を与えており、ユーザーは影響を軽減するための措置を講じることをお勧めします。