Apple iOSゼロデイ脆弱性が、またひとつ発見されました。今回のCVE-2026-20700は、なんとiOS 1.0から存在していたとされる欠陥で、Googleの脅威分析グループ(TAG)が発見したものです。自分もiPhoneユーザーなので、この報道を見たときはさすがにちょっとヒヤッとしました。
CVE-2026-20700の概要と影響範囲
この脆弱性は、iOSの「dyld」というコンポーネントに存在していました。dyldはダイナミックリンカーと呼ばれるもので、iPhoneでアプリを起動するたびに動作する基幹部分です。すべてのアプリがまずdyldを通過してメモリに読み込まれるため、ここに穴があると影響範囲がとてつもなく広くなります。
Appleのセキュリティアドバイザリによると、「メモリ書き込み能力を持つ攻撃者が任意のコードを実行できる」とされています。さらに、「iOS 26より前のバージョンで、特定の標的に対する極めて高度な攻撃に悪用された可能性がある」とも記載されていました。
dyldの脆弱性がなぜ危険なのか
セキュリティ企業Huntressの副CISOであるBrian Milbier氏の説明が分かりやすかったので紹介します。同氏はdyldを「スマホの門番」にたとえていました。
通常、この門番はアプリの認証情報を確認して、サンドボックスという安全な空間に案内します。アプリはサンドボックス内でしか動けないので、個人データに勝手にアクセスすることはできません。ところが今回の脆弱性を悪用すると、セキュリティチェックが始まる前にマスターキーを手に入れられてしまう——というイメージのようです。
これが10年以上も気づかれずに残っていたというのは、率直に驚きです。もちろん、悪用するには別の脆弱性と組み合わせる必要があったようなので、簡単に攻撃できるものではなかったみたいですが。
商用スパイウェアとの関連
Appleが「極めて高度な攻撃」と表現しているのは、商用スパイウェアによる攻撃を示唆している可能性があります。Google TAGが発見したという事実も、この見方を裏付けているかもしれません。TAGは過去にもNSOグループのPegasusなど、商用監視ツールの分析で知られています。
今回のケースでは、WebKitの脆弱性と組み合わせることで「ゼロクリック攻撃」が可能になっていた可能性があるようです。つまり、ユーザーが何もクリックしなくても、特定のウェブページを読み込むだけで端末が侵害されてしまうというシナリオですね。
iOS 26.3で修正済み——すぐにアップデートを
幸いなことに、Appleは2026年2月のiOS 26.3アップデートでこの脆弱性を修正しています。同時に、関連するWebKitの脆弱性も修正されたとのことです。
まだアップデートしていない方は、「設定」→「一般」→「ソフトウェアアップデート」からすぐに適用することをおすすめします。特に、ジャーナリストや活動家、ビジネスの要職にある方など、標的型攻撃のリスクが高い方は優先的に対応したほうがよさそうです。
古い脆弱性が今になって見つかる理由
「10年以上前からあった脆弱性がなぜ今さら?」と疑問に思う方もいるかもしれません。これにはいくつかの背景がありそうです。
まず、セキュリティ研究の手法が年々高度化しています。以前は見つけられなかったような深い部分の欠陥も、最新のファジングツールや静的解析で検出できるようになってきました。また、攻撃者側の技術も進歩しているため、かつては実質的に悪用困難だった脆弱性が、他の攻撃手法と組み合わせることで現実的な脅威になるケースも増えています。
個人的には、こうした「眠っていた脆弱性」の発見は今後も続くのではないかと感じています。ソフトウェアが複雑化する一方で、レガシーコードはそのまま残り続けるわけですから。
自分でできるセキュリティ対策
今回のようなゼロデイ攻撃を完全に防ぐのは難しいですが、リスクを下げるためにできることはいくつかあります。
- OSとアプリは常に最新バージョンにアップデートする
- 不審なリンクを安易にクリックしない
- Appleの「ロックダウンモード」を検討する(標的型攻撃のリスクが高い場合)
- 二要素認証を有効にしておく
地味な対策ばかりですが、こうした基本的なことの積み重ねが結局は一番効果的なのかなと思います。
セキュリティ関連の記事として、Python 3.14のZSTDモジュールでテキスト分類が変わる|圧縮ベースの新しいアプローチやGPT-5が連邦判事を超えた?法的推論テストで正答率100%を記録した実験の意味も参考になるかもしれません。
参考: Apple patches decade-old iOS zero-day (The Register) / Apple Security Advisory
