OVH判例に基づくフランスでのCrowdStrikeの損害賠償責任
(thehftguy.com)- 2024年7月19日のCrowdStrikeアップデート障害は、850万台のコンピュータを無効化し、54億ドル超の損害を生んだと推定されており、フランスのOVH事件と同様の損害賠償責任の論理につながる可能性がある
- OVH事件で裁判所は、バックアップ提供者は合理的な水準とベストプラクティスを守るべきだと判断し、同じ場所や近接したデータセンターに置かれたバックアップは合理的な運用とは認めなかった
- CrowdStrikeはカーネルレベルで先に実行されるセキュリティソフトウェアであり、銀行、旅行、スーパーマーケットなどの企業や重要産業の機器に配布されるほど、テストと段階的展開の負担が大きくなる
- 問題のアップデートは世界中の数百万台の機器に同時配布され、BSODを引き起こし、復旧には物理的アクセス、管理者権限、セーフモードまたは回復モードへの移行、ドライバ削除が必要だった
- 規制産業の顧客には変更のテスト・段階的展開・追跡が求められるため、CrowdStrikeがこれを行わなかった、あるいは拒否した場合、顧客のコンプライアンス違反や契約解除の根拠につながりうる
CrowdStrike障害と損害賠償責任の構造
- CrowdStrike事件は、1つのアップデートが大規模なコンピュータ障害につながった事例である
- 障害規模は850万台のコンピュータ無効化と推定される
- 損害額は54億ドル超と推定される
- 損害賠償の可能性は、フランスのOVH事件の判例と比較されている
- 一般的な契約書の免責条項は、米国外の多くの法域では効力が制限されており、重大な過失・犯罪行為・法令違反に関する責任は通常免除しにくい
- 重要なのは、発生した損害と故意または過失が結びつくと、損害賠償の可能性が生じるという点である
OVH事件で明らかになった運用上の失敗
- OVHはフランスのデータセンターおよびクラウド提供企業で、物理サーバー・仮想マシン・複数のクラウドサービスを提供している
- 2021年3月10日、OVHのSGB拠点で火災が発生した
- SGB1とSGB2のデータセンターが焼失した
- SGB3とSGB4もしばらく運用不能状態となった
- 複数の顧客サイトが破壊され、サービスとデータが回復不能な形で失われ、一部の顧客はOVHを相手取って提訴し勝訴した
- 裁判所が重視した点は、サービス喪失とバックアップ喪失が同時に発生したことである
- 事件の最中およびその後に完全なサービス喪失があった
- 事件後も回復不能なデータ損失が残った
- OVHは顧客にバックアップサービスを提供していたが、バックアップも完全に回復不能な形で失われた
- 複数のデータセンターがあったものの、実際には互いに近接した同一場所にあり、裁判所はこれを予見可能または合理的な構成とは見なさなかった
- バックアップが同じデータセンター、または同じ場所にありうる別のデータセンターに保存されていた点も合理的ではないと判断された
- OVHは、顧客が異なる場所に複数のバックアップを置くというベストプラクティスに従うべきだったと主張したが、裁判所はバックアップ提供者であるOVHが合理的基準に合ったバックアップを提供すべきだと見た
- 結果としてOVHのバックアップサービスは目的を達成できず、合理的な水準で運用されていないサービスと判断された
CrowdStrike障害の技術的特性
- CrowdStrikeは企業向け機器に導入されるアンチウイルスまたはEDR(Endpoint Detection and Response)ソフトウェアである
- このソフトウェアはコンピュータ起動時に動作し、WindowsまたはLinuxオペレーティングシステムにカーネルレベルで深く統合されている
- 可能な限り早く、他の構成要素より先に実行される
- 実行される項目を監視し、不審な項目を遮断または報告できる
- 2024年7月19日、CrowdStrikeはソフトウェアアップデートを配布し、そのアップデートは配布先のコンピュータをクラッシュさせた
- 世界中の数百万台のコンピュータが同時にアップデートを受け、異常動作状態になった
- 高い権限で先に実行される構造のため、CrowdStrikeのバグや誤判定は他のソフトウェア、さらにはシステム自体の実行まで妨げうる
展開・テスト・モニタリングの争点
- CrowdStrikeは銀行、旅行、スーパーマーケットなどの大企業の機器に広く導入されており、機密情報を扱う重要産業や重要機器を主な対象としている
- 機微な環境で動作する中核アプリケーションであるため、開発とテストには追加の注意が必要である
- 事件当日、アップデートが数百万台の重要機器に一斉配布され、優れた実務ではソフトウェアアップグレードは段階的に展開する
- 争点は、壊れたアップデートがどうやって数分で数百万台の機器に広がったのか、テストや段階的展開があったのかに集中している
- オンライン上の議論では、病院の顧客が以前にもこの問題を経験し、CrowdStrikeにアップデート制御権を求めたとの報告があった
- ある顧客は、CrowdStrikeが段階的展開を拒否する50ページのメモを送ったと主張している
- CrowdStrikeに段階的展開機能がない、またはそれを拒否したのであれば、販売先である規制産業の要件と衝突する可能性がある
- 問題のアップデートは配布先のコンピュータでBSODを引き起こし、外部配布前に明らかに壊れたアップデートが検知されなかった点は、テスト不在の根拠として使われる
- 数週間前にLinux向けCrowdStrikeエージェントでも類似の問題が発生していたとの報告があり、単発の事件としては見られないという論理につながる
- 誤ったアップデートが配布された後、CrowdStrikeが問題を認識しアップデートを停止するまでにほぼ2時間かかった
- 重要ソフトウェアの開発者は、配布後に想定どおり動作しているか、問題を起こしていないかを監視すべきである
復旧の難しさと顧客被害
- 影響を受けたコンピュータは起動不能になり、ユーザーはチケット作成や問題診断のためにコンピュータへアクセスすることすらできなかった
- 影響を受けた企業では、従業員が動作しないコンピュータを渡され、業務を遂行できなかった
- 復旧方法の1つは、ITチームがコンピュータを回収して完全に再インストールまたは再イメージ化する方式である
- その後に見つかった別の方法は、管理者が物理的にコンピュータへアクセスし、セーフモードまたは回復モードで起動した後、CrowdStrikeのドライバファイルを削除する方式である
- この復旧には物理的アクセスと管理者権限の両方が必要である
- ノートPCを回復モードで起動するための特別なパスワード、またはパスワードが入ったUSBキーが必要な場合がある
- 影響を受けた企業がすべてのユーザーノートPC、デスクトップ、サーバーを物理的に確保するには数週間かかる可能性がある
- 対象機器数は数千台から数十万台に及びうる
- 空港の画面端末、病院の医療機器や設備、エレベーターパネルのように密閉されていたりアクセスしにくかったりする機器では、さらに時間がかかることがある
- 物理的に塞がれている、または回復パスワードが分からない機器は復元不可能な場合がある
- 予備のコンピュータも同じ問題の影響を受けたため、影響を受けたユーザーに代替機器を提供するのは難しい
- CrowdStrikeはコンピュータを稼働状態に保ち、脅威から保護するためのセキュリティソフトウェアだったが、保護すべきコンピュータを無効化し、目的を達成できなかった
規制産業と契約解除の可能性
- 医療、金融、航空宇宙、輸送といった規制産業の顧客は、変更をテストし、段階的に展開し、追跡することが求められる
- CrowdStrikeは複数の認証と標準を保有していると述べているが、こうした基準は特定の開発実務と複数レベルのテスト実施を求める
- CrowdStrikeがそうした手順を実施しておらず、積極的に拒否していたなら、CrowdStrike自身のコンプライアンス違反につながりうる
- CrowdStrikeの利用によって顧客側までコンプライアンス違反状態になりうるため、望む顧客にとってはCrowdStrike契約を一方的に終了する十分な根拠になりうる
比較事例と追加根拠
-
BitLockerのテスト・展開方式
- BitLocker関連の従業員によるテスト・展開方式の議論が追加根拠として使われている
- BitLockerはコンピュータディスクを安全に暗号化するツールである
- コンピュータを紛失または盗難された際に、他人がデータを読めないようにする
- 起動時に最初に実行され、これがなければディスクからデータを読み込めない
- BitLockerのバグはコンピュータを動作不能にし、すべてのデータを読み取れなくする可能性があり、OVH事件の回復不能なデータ損失に類似している
- BitLockerは自分のコンピュータ、自分のチーム、他チームへと続く複数段階のテストを経る
-
以前のCrowdStrike障害経験の主張
- 匿名の企業従業員による以前のCrowdStrike障害経験も追加根拠として使われている
- その企業は以前のCrowdStrike問題の影響を受けたと主張している
- 企業はCrowdStrikeに段階的展開の許可を正式に要請したが、CrowdStrikeがこれを全面的に拒否する50ページのメモを送ったと主張している
- この主張が事実であれば、そのメモはCrowdStrikeに不利な重要証拠となりうる
1件のコメント
Hacker News の意見
フランスで別のフランスのクラウドサービスプロバイダーで働いているが、OVH の事故をリアルタイムで経験し、その余波もすべて見てきた。
OVH が責任を負ったのはサービス停止のためではなく、データ損失のためだった。データ損失は取り返しがつかず、永続的で確定した損害なので、一部の会社は運営するためのデータがなく、事実上つぶれた。さらに悪いことに、OVH は「オフサイトバックアップ」をデータセンターから文字通り数メートル離れた場所で販売していた。サービス停止は残念ではあるが起こり得ることで、双方が合意した SLA 契約で処理される。数日間の障害で会社を閉めることにはならない。
CrowdStrike が企業に対して大きな責任を負うことになるかは疑問だ。損害額をすべて支払えば、会社は廃業しなければならないだろう。ただし医療分野は別問題で、重要機関に対する規制がさらに増える方向に進むと思う。
史上最大規模の障害が設定パーサーの失敗で発生し、設定/パース処理で業界のベストプラクティスに従っていなかったように見え、カーネルモジュールのプログラミングでもベストプラクティスを守っていなかった可能性が高そうだ。だとすれば、損害賠償のために破産申請をしなくて済むというのは、正直おかしい。だからといってソフトウェアが消えたり保守されなくなったりするという意味ではなく、それを防ぐ方法はいくらでもある。たとえば Microsoft はいずれにせよ Falcon の買収に関心を持っていた。
論理的には、データが重要であればあるほど消えた可能性が高い。非公式な身近な事例では、多くのユーザーが BitLocker を使っており、それはデータ損失も多いという意味だ。
追記: 多くの場合、BitLocker で暗号化されたドライブを復旧できることを知った。実際のデータ損失がどれほどなのか気になる。
このタイトルは少し誤解を招く。実際にはブログに載った誰かの個人的な、ただし見識ある見解であって、事実の記述ではない。
「CrowdStrike は責任を負うと思う」または「CrowdStrike は責任を負うべきだ」に近いタイトルであるべきだ。
ライセンス契約でよく見かける一般的な責任免除条項は、別の法域で事業をしているなら米国の管轄外では意味がない場合がある、ということを思い出させてくれるのはよい。
すでに膨大な数の請求者が、補償を受ける方法について弁護士と話しているのだろう。フランスだけでなく世界中でそうだと思う。
法域がこれほど多い中で、こうしたことがどのように組織されるのか気になる。
だから世界中の多くの裁判所と弁護士が、しばらくこの件でかなり忙しくなるだろう。
弁護士でもないし、ましてフランスの弁護士でもないが、OVH との比較は妥当ではないと思う。
OVH の件ではバックアップシステム全体が失敗した。多くの顧客のデータがゼロになり、記事によれば「裁判所は、OVH のバックアップサービスが合理的な水準で運用されておらず、目的を達成しなかった」と判断した。
一方で CrowdStrike は、顧客のカーネルを「単に」約1時間クラッシュさせただけだ。その間はサイバー攻撃から100%安全だっただろうが。その後システムを再稼働させるのにかかった遅れは、私の見方では顧客側の災害復旧計画が十分によくなかったためだ。CrowdStrike のソフトウェアが「合理的な水準ではなかった」と争う余地は確かにあるが、一次的な影響であるソフトウェアクラッシュは、OVH のように文字通り炎の中ですべてのデータを永久に失ったこととは、規模がまったく違う。
ソフトウェアは常にクラッシュする。好むと好まざるとにかかわらず、ほとんどの産業ではソフトウェアのバグを避けられないものとして扱っている。もちろん例外はある。ソフトウェアバグの「責任」はベンダーにあるが、その影響を緩和するのはそれを導入する人たちの役目だ。日々発生するほかのソフトウェアクラッシュと比べて CrowdStrike の件がニュースになった唯一の理由は、CrowdStrike の多くの顧客がこのソフトウェアを複数の重要経路に組み込んでいたからだ。
CrowdStrike はトランプカード1枚を売り、顧客たちは collectively それで家を建てた。
追伸: これを CrowdStrike 擁護と受け取らないでほしい。彼らのソフトウェアはひどく、雑に開発されていると思う。その雑さの代償は払うべきだと思うが、現行の法制度ではそうはならない気がする。せいぜい今後、人々が財布で投票できるくらいだろう。
欠陥の影響を受けたほとんどのコンピューターは再起動ループにはまり、修正をダウンロードできなかったため、セーフモード起動による物理的な対応が必要だった。多くの場合、IT 技術者が現地に行ってコンピューターに物理的にアクセスし、修正しなければならなかったと理解している。
1週間、つまり168時間が過ぎた後でも、この欠陥のためにまだ文鎮化したコンピューターが非常に多い。直すのがひどく難しいからだ。
だから通常のクラッシュとはかなり違って見るべきだ。復旧がはるかに難しく、多くのコンピューターに同時に影響したためだ。
さらに、自社の復旧手順で失敗した会社もある。しかし手順がよかったとしても、これは大きな障害になり得る。簡単に巻き戻せず、通常は多くの別の障害に備えて冗長化されている複数の構成にも同時に影響するからだ。
Falcon が提供する保護機能を、なぜ OS 自体が提供しないのか説明してもらえるだろうか。まったく知らないわけではなく、重要な Linux サーバーもかなり多くセキュリティ対策してきたが、Windows ではセキュリティの役割分担が同じように明確ではないように思う
Red Hat や Canonical と比べると、あちらではユーザーが自分のアプリケーションを使える状態にするためにシステムのセキュリティと戦っているように感じるが、そのほうがむしろ正しい方向に思える
https://www.theregister.com/2024/07/22/windows_crowdstrike_k...
その一部には OS 標準の代替手段があり、一部にはなく、大半は Linux に標準で組み込まれていない。たとえば Linux カーネルチームは、新しいソフトウェアコンポーネントをカーネルや init システム、シェルが実行する前に照合するマルウェアシグネチャデータベースを持っていない。Falcon はそれを行う
別の例として、Linux や一般的な Linux ユーザー空間は、現在のユーザーが特定のソフトウェアを実行してよいか確認するためのフリート管理システムと標準で統合されていない。同じような問いはいくつもある
最後に、OS がこうしたサービスを標準提供していたとしても、たとえば Windows Enterprise 版は上記の機能を提供しているが、別ベンダーのソリューションを好むのは十分に合理的だ。たとえば Microsoft より CrowdStrike のマルウェアシグネチャ一覧を信頼できるなら、Windows Defender の代わりに CrowdStrike を買う理由になる
CrowdStrike や Windows を擁護したいわけではない。ただ、セキュリティという大きな傘の下には OS 自体に入れたくない機能が多くあり、内蔵版があっても企業が別の供給元を望むことは明らかに思える
しかし、ランサムウェアのような現実世界の多くの問題を防ぐには十分でないことが明らかになった
そのため、より攻撃的なサードパーティ製ソリューションの市場が生まれた。現実の脅威に追随するには頻繁な更新が必要で、高い権限レベルで実行されなければならない。その結果、こうしたサードパーティ製ソリューションがブルースクリーンやブートループを引き起こし得る状況になる。だからこそ、更新の配布方法は非常によく設計されていなければならない
たとえばファイルをダウンロードしてその内容をコードとして実行したり、アクセス可能なすべてのファイルをアップロードしたり暗号化したりできる
CrowdStrike と Defender は、こうした可能ではあるが疑わしい行動に対処する
多くのシステムに配布されてはいるが、Windows システムの 1% 未満というのは、絶対数ではなおニッチな領域だ。大半の人は CrowdStrike 自体も知らず、競合製品となるとなおさら知らなかった
CrowdStrike とアンチウイルスの大きな違いの一つは、コストが非常に大きいため、人間が常に介入することを期待しない点だと思う。コンシューマー向けソフトウェアでは、プライバシーの問題からも feasible ではない
この小さなニッチの中でさえ、ソリューションは非常に異質で、単一のマシンにはあまり意味がなく、実際にはネットワークレベルで動作するよう設計されている可能性もある
消費者を相手にする場合にはこうしたことが可能だと知っていたが、B2B 契約は洗練された当事者同士の契約とみなされるため、契約条件を超える立法上の保護はほとんどないと思っていた
私の法律理解はおおむね英国基準だが、責任を発生させた出来事が保健・安全や強く立法化された他の領域ではなく、契約履行上の一般的な誠実性/能力の問題だった場合に、責任制限条項を無効化する法律についてはよく知らない
だから、これが単なる「フランス法体系」の問題ではなく、他の管轄でも同じ種類の判断が出得るという記事の内容には確信が持てない
意図的に段階的ロールアウトを実装しなかったのなら、私には過失のように見えるが、弁護士ではない。カナリアを死なせるのには理由がある
そうしないなら契約違反になり得て、責任制限条項はもはや適用されない可能性がある
フランスだけの話ではない
ほとんど、もしかするとすべての EU 加盟国には、契約に何を書いても責任回避を制限する法律がある
国ごとの正確な境界は知らないが、少なくとも病院や緊急通報サービスなどは、障害が直接もたらした損害のうち無視できない部分について訴訟を起こせるだろうとかなり確信している
予定どおりに手術を受けられず被害を受けた個人も、自分に生じた損害全体について訴訟を起こせる可能性が高い。ただし損害額の算定が難しく、病院を相手に訴訟を起こした後、病院がより大きな損害を請求するという形で間接的に進める必要があるかもしれない
おそらく訴訟が難しい部分は、機会費用の損失や復旧にかかった人件費などだろう
また、人命被害ほど深刻ではなく、機会費用の損失ほど間接的でもない多くのケースでは、裁判官が過失の程度をどう見るかが大きな要因になると思う。ここでいう「過失」は、バグを作った特定の変更だけでなく、リスクを合理的に減らすためにツール選定、アプローチ、ビジネスプロセスなどで注意義務を尽くしたかどうかも含む。たとえば設定のパース方法が不適切だったか、業界のベストプラクティスに従っていたか、私にはそうは見えない。あるいは当該ドライバーをブート必須としてマークしたことが適切だったか、なども含まれる。そうでなければ Windows が自動的に無効化して再起動していたはずだ
「2019年7月19日にCrowdStrikeがソフトウェアアップデートを配布した」となっているが、年は2024年のことだと思われる
「孤立した事例ではない。数週間前にもLinuxのCrowdStrikeエージェントで同じことが起き、システムを飛ばしてしまったし、それ以前にも別の事例があった可能性がある」という部分について、この件のリンクはあるだろうか?
“CrowdStrike's Falcon Sensor also linked to Linux kernel panics and crashes”, https://news.ycombinator.com/item?id=41030352