ゼロデイ脆弱性:定義とその例とは?
未発見・未検出の脆弱性について知る
2023年11月7日
著者: Ahona Rudra
翻訳: 島田 麻里子
この記事はPowerDMARCのブログ記事 Zero-day Vulnerability: Definition and Examples? の翻訳です。
Spelldataは、PowerDMARCの日本代理店です。
この記事は、PowerDMARCの許可を得て、翻訳しています。
ゼロデイ脆弱性とは、プロトコル、ソフトウェア、アプリケーションの脆弱性であり、一般の人々や脆弱性が存在する製品開発者にはまだ知られていないものです。
一般にも開発者にも知られていないため、パッチを利用することはできません。
GPZの調査によると、ソフトウェア・アップデートが提供される前の2022年上半期にハッカーに悪用された18件のゼロデイ脆弱性の半数は、ソフトウェア・ベンダーがより徹底的なテストを実施し、より包括的なパッチを作成していれば防げた可能性があるとのことです。
驚くべきことに、2022年のゼロデイ脆弱性のうち少なくとも4件は、2021年からの変異で占められていました。
しかし、ゼロデイ脆弱性とは一体何なのでしょうか?
それがこのガイドで学ぶことです。
しかし、その定義を完全に理解するためには、まず他のいくつかのことを定義しなければなりません。
ゼロデイ・エクスプロイト(攻撃)とは何か?
ゼロデイ・エクスプロイトとは、一般に公開または修正されていないセキュリティ脆弱性のことです。
この用語は、エクスプロイトそのものと、エクスプロイトと関連ツールを含むコードパッケージの両方を指します。
攻撃者は多くの場合、ゼロデイ・エクスプロイトを利用して、パッチが適用されていないシステムやネットワーク上にマルウェアを展開します。
また、防御側は、ネットワークの脆弱性を検出するための侵入テストを実施する際にも利用することができます。
「ゼロデイ脆弱性」「ゼロデイ・エクスプロイト」「ゼロデイ攻撃」という言葉を、ゼロデイ・エクスプロイトについて学ぶ際によく聞くでしょう。
これらの用語には本質的な違いがあります。
- ゼロデイ・エクスプロイト
- ハッカーがソフトウェアを標的にする手法
- ゼロデイ脆弱性
- 企業のシステムの欠陥
- ゼロデイ攻撃
- ハッカーが脆弱性を悪用してシステムに侵入すること
ゼロデイ脆弱性について語るとき、「未発見」という言葉は不可欠です。
というのも、「ゼロデイ脆弱性」と呼ばれるには、その欠陥がシステムの設計者にとって未知のものでなければならないからです。
セキュリティ上の欠陥が発見され、修正プログラムが利用可能になると、それは「ゼロデイ脆弱性」ではなくなるのです。
ゼロデイ・エクスプロイトは、攻撃者によって様々な方法で利用される可能性があります。
- パッチが適用されていないシステム(つまりセキュリティ・アップデートを適用していない)を悪用して、マルウェアをインストールしたり、コンピュータを遠隔操作したりする
- 悪意のある添付ファイルや、Webサイトのホスティングを悪用するリンクを使って、フィッシング・キャンペーン(受信者を騙してリンクや添付ファイルをクリックさせようとするメールの送信)を行う
- サービス拒否攻撃(サーバにリクエストを殺到させ、正当なリクエストが通過できないようにする)を行う
ゼロデイ・エクスプロイトのどのような特徴が危険なのか?
ゼロデイ脆弱性には2つの分類があります。
- 未発見
-
ソフトウェア・ベンダーがまだその欠陥を把握していない。
ほとんどの大企業では、ハッカーや悪意のあるユーザに発見される前にソフトウェアの欠陥を発見し、修正する専門チームがフル稼働しているため、このようなケースは極めて珍しい。 - 未検出
-
その欠陥はソフトウェア開発者によって発見され、修正されているが、システムに異常があることに気づいていないため、まだ誰も報告していない。
この脆弱性は、他人のシステムに対して攻撃を仕掛けようとしていて、それが完了するまで何が起こっているのか知られたくない場合に、非常に重宝することになる!
ゼロデイ攻撃は、既知の欠陥に対する攻撃よりも成功する確率が高いため、特にリスクが高いのです。
ゼロデイで脆弱性が明らかになった場合、企業はまだその脆弱性にパッチを当てる必要があり、攻撃が可能となります。
ある種の巧妙なサイバー犯罪組織は、ゼロデイ・エクスプロイトを戦略的に展開しているため、リスクが非常に高くなっています。
このような組織は、政府機関、金融機関、医療施設など、価値の高い標的のためにゼロデイ・エクスプロイトを温存しています。
これにより、攻撃の期間が長くなり、被害者が脆弱性を発見する可能性が低くなるのです。
パッチが作成された後も、ユーザはシステムをアップグレードし続けなければなりません。
もしそうしなければ、システムにパッチが適用されるまで、攻撃者はゼロデイ・エクスプロイトを使うことができます。
ゼロデイ脆弱性を特定するには?
ゼロデイ脆弱性を特定する最も一般的な方法は、NessusやOpenVASのようなスキャナを使うことです。
これらのツールは、シグネチャ(既知の不良ファイル)を使ってコンピュータの脆弱性をスキャンします。
シグネチャが一致した場合、スキャナはどのファイルに対して一致したかを教えてくれます。
しかし、この種のスキャンは多くの脆弱性を見逃すことが多いのです。
なぜなら、シグネチャは時々しか利用できなかったり、新しい脅威が出現したときにそれをすべて捕らえるのに十分な頻度で更新されなかったりするからです。
ゼロデイを特定するもう一つの方法は、ソフトウェアのバイナリ(実行ファイル)をリバースエンジニアリングすることです。
この方法は非常に難しいのですが、オンライン上には技術的な知識や専門知識を必要とせず、効果的に使用できる無料のスキャナがたくさんあるため、ほとんどの人にとって通常は必要ではありません。
ゼロデイ脆弱性の事例
ゼロデイ脆弱性の例としては、以下のようなものがあります。
Heartbleed
2014年に発見されたこの脆弱性は、攻撃者がOpenSSL暗号化ライブラリを使用するサーバから情報を抜き取ることを可能にしました。
この脆弱性は2011年に公表されましたが、発見されたのはその2年後で、研究者がOpenSSLの特定のバージョンが攻撃者から送信されるハートビート(接続が有効であるかを確認するために定期的に送信する信号)の影響を受けやすいことを発見したのです。
ハッカーは、この暗号化ライブラリを使用しているサーバから秘密鍵を取得し、ユーザが送信しているデータを復号化することが可能になりました。
Shellshock
この脆弱性は2014年に発見され、攻撃者はBashシェル環境を通じて攻撃に対して脆弱なオペレーティングシステムを実行しているシステムにアクセスすることができました。
ShellshockはすべてのLinuxディストリビューションとMac OS X 10.4以前のバージョンに影響を及ぼします。
これらのオペレーティング・システムにはパッチがリリースされていますが、このエクスプロイトに対するパッチがまだ適用されていないデバイスもあります。
Equifax情報漏洩
Equifaxの情報漏洩は、2017年に発生した大規模なサイバー攻撃です。
この攻撃は未知のハッカー集団によって行われ、EquifaxのWebサイトが侵入され、社会保障番号(米国のマイナンバーのようなもの)や生年月日を含む約1億4500万人の顧客の個人情報が盗み出されました。
WannaCryランサムウェア
WannaCryはMicrosoft Windowsオペレーティング・システムを標的とするランサムウェア・ウイルスで、ユーザのファイルを暗号化し、復号化するためにビットコインによる身代金の支払いを要求するものです。
EternalBlue(脆弱性攻撃ツール)を使用してネットワークを通じて拡散します。
2017年4月にNSAから流出したWindowsエクスプロイトで、このワームは2017年5月12日にリリースされて以来、世界中で30万台以上のコンピュータに影響を及ぼしています。
病院へのマルウェア攻撃
ハッカーが個人的な利益や政治的な理由で医療機関を標的にするようになり、マルウェア攻撃は近年ますます一般的になっています。
そのような攻撃のひとつに、ハッカーがハリウッド・プレスビテリアン・メディカル・センターの患者記録に、同病院の管理部門から送られたフィッシング・メールを介してアクセスしたというものがあります。
最後に
ゼロデイ脆弱性とは、特定はされているものの、まだベンダーが明かしてないソフトウェアのバグのことです。
少なくとも一般には知られていない「ゼロデイ」なのです。
言い換えれば、最初に発見し報告した人を除いては、誰もそのことをまったく知らない、野生のエクスプロイトということです。