Googleの脆弱性調査専門チーム「Project Zero」は、セキュリティ脆弱性の修正状況について、ベンダーやプロジェクト別に調査した結果を発表した。2019〜2021年の3年間にProject Zeroが開発元に報告した脆弱性が対象だ。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Googleの脆弱(ぜいじゃく)性調査専門チーム「Project Zero」は2022年2月10日(米国時間)、セキュリティ脆弱性が修正されるまでにかかった日数などの修正状況について、ベンダーやプロジェクト別に調査した結果を発表した。2019年1月〜2021年12月の3年間に、Project Zeroが開発元に報告した脆弱性が対象だ。
Project Zeroは脆弱性を報告する際、脆弱性開示ポリシーに従っている。開発元に連絡してから90日間の開示期限と14日間の猶予期間を設定した。調査結果には、この開示期限への対応と、猶予期間を使った修正の状況も記されている。
脆弱性の詳細をProject Zeroが公開するルールは、次のように定められている。
開示期間中に修正版が提供された場合
Project Zeroが開発元に脆弱性を報告してから、90日間の開示期限が切れる前に修正プログラムがユーザーに提供された場合、Project Zeroは、修正プログラムの提供開始から30日後に、脆弱性の詳細を公開する。
開示期間中に修正版が提供されなかった場合
90日間の期限前に修正プログラムが提供されなかった場合、Project Zeroは期限完了時に脆弱性の詳細を公開する。
修正版のリリースを開発元が確約した場合
開発元が開示期限から14日以内での修正プログラムのリリースを確約した場合、Project Zeroは14日間の猶予期間を認める。
脆弱性の修正状況や分布、修正に必要な時間について、報告書は次のようにまとめている。
2019〜2021年の3年間に、Project Zeroは90日間の開示期限に従い、376件の脆弱性を開発元に報告した。このうち351件(93.4%)は修正されたが、14件(3.7%)はベンダーなどが修正しないことを決めた。その他、11件(2.9%)の脆弱性が未修正となっている(調査結果の発表時点で8件は開示期限を過ぎており、残りの3件は開示期限内)。
376件の脆弱性のかなりの部分はベンダー数社に集中している。96件(26%)がMicrosoft、85件(23%)がApple、60件(16%)がGoogleに報告された脆弱性だ。
2021年にProject Zeroから報告されたセキュリティ脆弱性の修正に対して、開発元は平均52日を要した。これは、2019年の平均約80日から大幅に短縮されており、90日間の開示期限を大きく下回っている。
開示期限や猶予期間に修正が間に合わなかった脆弱性の件数も減少している。2021年には、開示期限を超過した脆弱性は1件のみで、猶予期間を必要とした脆弱性は14%だった。
次にProject Zeroの調査結果について一部の詳細を紹介する。
次の表は、Project Zeroが2019〜2021年に90日間の開示期限で開発元に報告し、修正された全ての脆弱性について、報告された脆弱性の件数が多かった開発元を対象にまとめたものだ。
なお、脆弱性が報告された製品はさまざまなタイプ(デスクトップOS、モバイルOS、Webブラウザ)にわたっている。
この表に登場する開発元のほぼ全てが、平均して90日以内に脆弱性を修正している。猶予期間に修正された脆弱性の大部分は、Apple製品とMicrosoft製品の脆弱性だ(合計34件中、2社で22件を占める)。
開示期限と猶予期間を超過した脆弱性は18件あり、全体の約5%だ。Oracleが最も高い割合で開示期限と猶予期間を超過しているが、これは報告された件数が約7件と比較的少ないことに関係しているのかもしれない。
脆弱性の修正にかかった平均日数は61日だった。
この表の中で、報告された脆弱性が多かった開発元(Apple、Microsoft、Google、Linux、その他)に絞って、2019、2020、2021年の各年について、脆弱性の修正にかかった平均日数をまとめた表を次に示す。
修正にかかった日数はほぼ一貫して減少している。特に2019年から2020年にかけての減少幅が大きい。さらに、その他のベンダーなどは2019年から2021年にかけて、修正にかかった日数が半分以下に減少している。
2019〜2021年にモバイルOSについて報告された脆弱性の件数と、その修正にかかった平均日数をまとめた表を次に示す。
この表では、「iOS」の脆弱性の件数が「Android」よりも断然多い。だが、これはAppleによるソフトウェアの提供方法を反映している。同社は「iMessage」や「Facetime」「Safari/WebKit」といったアプリケーションのセキュリティアップデートを、OSのアップデートの一部として提供している。そのため、この表ではこれらのアプリケーションについて報告された脆弱性が、OSについて報告された脆弱性に含まれている。
一方、Androidのスタンドアロンアプリケーションのセキュリティアップデートは、Google Playストアを通じて提供されるため、この表ではアプリケーションの脆弱性が含まれていない。
このような違いがあるにもかかわらず、iOS、Android(Samsung)、Android(Pixel)のいずれも、脆弱性の修正に要した平均日数がほとんど変わらない。
ほとんどのソフトウェアでは脆弱性の修正にかかった時間が分からない。開発元がセキュリティ脆弱性の報告を受けた後、修正プログラム(パッチ)が完成するまでにどれだけの時間がかかるのか、さらには修正プログラムの完成から、その修正プログラムを含むビルドをリリースするまでの時間が不明だ。
だが、オープンソースソフトウェアでは、こうした具体的なタイムラインが分かる。Project Zeroは、オープンソースのWebブラウザについての調査結果を次のように報告している。
Project Zeroは開発元に報告したセキュリティ脆弱性の修正状況を、今後も継続して調査し、毎年発表する計画だ。
開発元が脆弱性の報告を受けてから、パッチを作成、配布し、これを組み込んだ修正リリースを提供するまでのプロセスをさらに詳しく紹介したいとの考えも明らかにしており、プロセスの各工程の所要期間を集計したデータの公開を呼び掛けている。
「こうして業界全体で透明性を高め、情報を共有し、協力し合うことで、われわれはお互いのベストプラクティスから学び、既存の問題点をよりよく理解し、インターネットを全ての人にとって、より安全な場所にすることができると考えている」と、Project Zeroは述べている。
Copyright © ITmedia, Inc. All Rights Reserved.