CVE-2021-30873 は AppKit に発見された権限昇格の脆弱性だ。macOS Monterey 12.0.1 より以前のバージョンに存在し、すでに対策済みの脆弱性だがアプリのコーディングがまずいと、いまだに攻撃が成立する。
2022年に開催された BlackHat USA にて、この AppKit の脆弱性を利用した攻撃手法が公開された。発表者は Computest 社のリサーチャー Thijs Alkemade 氏。同氏は 2021 年バンクーバーで開催された「 Pwn2Own 」では Zoom のリモートコード実行を、2022 年マイアミでは 5 つの制御システムの脆弱性の発表を行った手練れのリサーチャーである。
■ Mac OS に導入された SIP は朗報か?
攻撃手法は「サンドボックス回避」「権限昇格」「 SIP のバイパス」の 3 つだ。Mac OS は、2015 年の OS X El Captian からSIP(System Integrity Protection)というカーネルの保護レイヤが導入され、カーネルの変更や権限昇格などが実行しにくくなっている。
しかし、今回発表された攻撃手法を利用すれば、カーネルの変更・権限昇格といった攻撃が成立する。現在の Mac OS は BSD UNIX をベースとしている。Linux を含む UNIX 系 OS では、ユーザーごとのセキュリティ境界(パーミッションと呼ばれる 9 ビットのフラグでユーザー・グループ・その他の属性ごとに制御)は存在するが、プロセスごとのセキュリティ境界は明確ではない。すべてのプロセスは起動元の権限を踏襲するが、ルートユーザーは例外でオールマイティだ。UNIX 系 OS にとってすべてのプロセスの親はカーネルであるが、ルートユーザーはこれと同じ権限を持つことになる。