7月19日に大規模なシステム障害が世界各地で発生した。多くの空港で一時的に航空便の運行が停止され、金融サービス、決済手続き、放送、政府機関のサービスなど、影響が多方面に広がった。

このシステム障害は、オンプレミスおよびクラウドプラットフォーム(Azure、AWS、Google Cloudなど)でWindowsマシンが反応しなくなったり、正常に起動できなくなった問題に起因する。影響を受けたWindowsマシンの多くは起動ループに陥り、オフラインになった。

  • システム障害により、Starbucksは19日にモバイルオーダーの提供を停止

    システム障害により、Starbucksは19日にモバイルオーダーの提供を停止

このWindowsの障害は、Windowsの問題やサイバー攻撃によるものではなく、セキュリティ企業CrowdStrikeのアップデートが原因である。

CrowdStrikeは問題を特定し、7月19日(米国時間)に原因と対策について説明する「Statement on Falcon Content Update for Windows Hosts」を公開した。主な内容は以下の通りである:

  • UTC 7月19日午前4時9分(日本時間:19日午後1時9分)に問題が広がり始めた。
  • 障害の原因は、CrowdStrikeのFalconプラットフォームのSensorエージェント(タイムスタンプが0409 UTCのチャネルファイル "C-00000291*.sys")である。
  • 影響を受けているのはWindowsホストのみで、MacまたはLinuxベースのホストは正常に稼働している。また、Windows 7/2008 R2で動作するホストにも影響はなかった。
  • 原因特定後に、問題に関連するコンテンツをアップデート前に戻したバージョン(C-00000291*.sysのタイムスタンプが0527 UTC)をリリースした。

ホストがクラッシュし、オフライン状態のまま修正変更を受け取れない場合、以下の手順で問題を解消できる。

  1. WindowsをセーフモードまたはWindows回復環境で起動。
  2. WINDIR%System32に移動(C:\Windows\System32)。
  3. 「C-00000291*.sys」に一致するファイルを探して削除する。
  4. ホストを通常通りに起動。

パブリッククラウドや仮想を含む環境では、0409 UTCより前のスナップショットにロールバックすることで解決する。

それができない場合、影響を受ける仮想サーバーからOSのディスクボリュームを切り離す。予防措置としてディスクボリュームのスナップショットまたはバックアップを作成。そのボリュームを新しい仮想サーバーに接続し、「C-00000291*.sys」に一致するファイルを見つけて削除する。修正済みのボリュームを新しい仮想サーバーから切り離し、影響を受けた仮想サーバーに再接続する。

問題の解消自体は難しくはないが、短時間で障害が広がり、すでに多くのWindowsマシンがオンライン状態を維持できない状態になっている。リモートではなく、直接手作業で修正しなければならないマシンが多数あると見られ、障害からの完全な復旧には数日から数週間かかる可能性が指摘されている。

セキュリティ企業CrowdStrikeとは?

CrowdStrikeは、企業のセキュリティ侵害の発見と防止を支援する高度なサイバーセキュリティ技術を提供している。2014年のSony Pictures Entertainmentに対する大規模なサイバー攻撃、2016年のロシアが関与した民主党全国委員会(DNC)のハッキング被害の調査に貢献し、企業価値を大きく向上させた。同社は「最速の平均検出時間、最も高い検出率」を謳っており、実際にAPT(持続的脅威)対策や、エンドポイントセキュリティの分野で高い評価を受けている。

Falconプラットフォームは、ウイルス対策、EDR(Endpoint Detection and Response)、脆弱性管理などを統合したクラウドベースのソリューションである。AI・機械学習を活用して、未知の脅威を含む攻撃に対応。ネットワーク全体の脅威状況をリアルタイムで可視化し、迅速な意思決定を支援する。

近年のサイバー攻撃やランサムウエア(身代金要求型ウイルス)の増加により、CrowdStrikeのようなサイバーセキュリティ・ソリューションを採用する企業が増えている。CrowdStrikeによると同社は約29,000社の顧客を持つ。しかしながら、今回は、サイバーセキュリティ需要の高まりにより、システムを保護するソリューションの不具合が大規模な障害を引き起こすことになった。