Googleの「Project Zero」は、Appleの「macOS」に存在するゼロデイ脆弱性の情報を、開発元に通知してから90日以内にパッチが提供されなかったとして公開した。
脆弱性については2018年11月にGoogleがAppleに通知していた。米国時間2月28日に情報が開示された同脆弱性は、ユーザー所有のファイルシステムイメージをマウントすることでコピーオンライト(COW)の振る舞いがバイパスされてしまうもので、深刻度は「高」に分類される。
Googleのバグトラッカーシステムである「Monorail」への投稿によると、macOSのカーネルである「XNU」に搭載されているCOWリソース管理システムが、「Mach」における「out-of-line(不整合)メッセージディスクリプタ」を含んだ、プロセス間データのコピー生成を許してしまうという。
コピーされたメモリは、ソース(転送元)プロセスによる将来の更新から保護される必要がある。さもなければ、「ソースプロセスはデスティネーション(転送先)プロセスにおける二重読み込みというエクスプロイトを利用できる可能性がある」と同チームは述べている。
同脆弱性の解説には、「COW時のこの振る舞いは、匿名メモリだけでなく、ファイルに対応付けられたメモリに対しても適用される。これはつまり、デスティネーションプロセスが転送済みメモリ領域からの読み込みを開始した後に、メモリプレッシャが高まることで、転送済みメモリを保持する該当ページがページキャッシュから待避される可能性があることを意味する。その後、待避されたページに対する要求が再度発生した際に、バッキングファイルシステムから該当ページが再ロードされることになる」と記されている。
従って、攻撃者が仮想管理サブシステムに対する警告を発生させることなく、ディスク上のファイルを改ざんできるのであれば、これは看過できない深刻なセキュリティ問題と言える。
macOSでは、ファイルシステムのイメージをマウントしたうえで、該当ファイルシステムイメージに対してpwrite()システムコールを直接発行することで、COWの通知をサブシステム側に行わずに、これらのファイルを変更できる。
ローカル環境での特権昇格が可能になると示唆されているこのゼロデイ脆弱性は、macOSシステムに対する標的型エクスプロイトに利用でき、より多くの攻撃者に悪用される可能性もあると考えられている。
なおProject Zeroのリサーチャーらは、この脆弱性をデモするための概念実証(PoC)コードを公開している。
Project Zeroによるとこの脆弱性には、同グループが標準として設定している90日間という猶予期間が与えられていたという。
リサーチャーらは「われわれはこの問題についてAppleと連絡を取ってきたが、現時点でフィックスは公開されていない」と述べるとともに、「Appleは今後のリリースでこの問題を解決しようとしており、われわれはAppleとともにパッチに向けた選択肢を評価しているところだ」と述べている。
この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。
CNET Japanの記事を毎朝メールでまとめ読み(無料)
ZDNET×マイクロソフトが贈る特別企画
今、必要な戦略的セキュリティとガバナンス
ものづくりの革新と社会課題の解決
ニコンが描く「人と機械が共創する社会」