日本のマスコミは、デジタルに対して知見が低いため
Windowsが傷害を起こした・・・
と報道していて
これは、一見 Microsoftが問題を起こしたような印象を与えてしまっている。
自分のところにも「うちのパソコンは大丈夫なのか?」という質問が何件か来ています。
原因は、マスコミがバカだからです。
正確にはセキュリティシステムの 「CrowdStrike」(クラウドストライク)が原因である。
という認識をきちんと説明していないからである。
今回なぜこういうことが起きてしまったのか?
Gigazineにわかりやすく解説してあるのでみてみよう。
目次
多数のWindowsでブルースクリーンを発生させてしまったCrowdStrikeのコードは何が悪かったのか
Gigazineの記事を見てみよう
世界中のWindows搭載PCにおいてブルースクリーンオブデスを発生させてしまったCrowdStrikeの問題について、エンジニアのパトリック・ワードル氏が原因を分析してXに投稿しました。
I don't do Windows but here are some (initial) details about why the CrowdStrike's CSAgent.sys crashed
Faulting inst: mov r9d, [r8]
R8: unmapped address...taken from an array of pointers (held in RAX), index RDX (0x14 * 0x8) holds the invalid memory address@_JohnHammond pic.twitter.com/oqlAVwSlJj
— Patrick Wardle (@patrickwardle) July 19, 2024
CrowdStrikeが原因で発生したブルースクリーンオブデス問題は850万台のWindows端末に影響し、いくつもの公共交通機関がストップしました。
全世界的に発生したCrowdStrikeによるブルースクリーンオブデス問題の影響を受けたWindows端末は850万台で全体の1%未満 - GIGAZINE
ワードル氏の分析によると、CrowdStrikeの実行ファイルである「CSAgent.sys」内の「mov r9d, [r8]」という命令において、不正なメモリアドレスが指定されてしまっていたことが原因とのこと。
上記の通り、不正なアドレスを指定してクラッシュを直接発生させたアプリケーションは「CSAgent.sys」ですが、不正なアドレスのデータは「C-00000291-[環境によって異なる名前].sys」というファイルに保存されており、CSAgent.sysはC-00000291~.sysファイルからデータを読み込んだせいでクラッシュしてしまっていました。
The other "drivers" (e.g. 'C-00000291-...32.sys') appear to be obfuscated data ...and are x-ref'd (perhaps ingested?) by CSAgent.sys
...so maybe invalid (config/signature) data triggered the fault in CSAgent.sys
This would be easier to tell/confirm via debugging 😅 pic.twitter.com/AEOAFVT40i
— Patrick Wardle (@patrickwardle) July 19, 2024
続きはこちらから👇
多数のWindowsでブルースクリーンを発生させてしまったCrowdStrikeのコードは何が悪かったのか - GIGAZINE
https://gigazine.net/news/20240722-windows-crowdstrike-bsod-analysis/
答えはここです。
不正なアドレスを指定してクラッシュを直接発生させたアプリケーションは「CSAgent.sys」ですが、不正なアドレスのデータは「C-00000291-[環境によって異なる名前].sys」というファイルに保存されており、CSAgent.sysはC-00000291~.sysファイルからデータを読み込んだせいでクラッシュしてしまっていました。
当ブログを読んでいる人は、これでわかると思いますが、
「CrowdStrike」(クラウドストライク)がアップデートファイルをしくった。
というわけで
ですから「CrowdStrike」(クラウドストライク)をインストールすていないパソコンは問題ないわけです。
なぜ Windowsだけ?
理由は、簡単です。
圧倒的なシェアのWindowsにインストールされていた。
というわけです。
Apple社のmacなど ビジネス現場では、使わないことがお約束(極端な言い方ですよ)なため被害がなかった。
ということが考えられるのですが、実は、そこにEUが絡んでいるという話が出てきました。
Microsoftが「CrowdStrikeの障害の原因は欧州委員会のクレーム」と当てこすり、なぜMacは無傷だったのかも浮き彫りに
同じくGigazineの記事を見てみよう
2024年7月19日に発生した世界的なIT障害であるクラウドストライク事件に関連し、Microsoftが「2009年に欧州委員会からの要求に応じたのが原因でCrowdStrikeのクラッシュがWindowsに波及するのを防げなかった」と示唆したことが報じられました。
Blue Screens Everywhere Are Latest Tech Woe for Microsoft - WSJ
https://www.wsj.com/tech/cybersecurity/microsoft-tech-outage-role-crowdstrike-50917b90Microsoft points finger at the EU for not being able to lock down Windows - Neowin
https://www.neowin.net/news/microsoft-points-finger-at-the-eu-for-not-being-able-to-lock-down-windows/2024年7月19日に、CrowdStrikeのセキュリティ製品をインストールしたWindows端末で一斉に障害が発生し、ブルースクリーンの表示と再起動を繰り返す大規模な障害が発生しました。今回よりも小規模ながら、以前にも同様の問題がLinuxディストリビューションで起きています。
CrowdStrikeのカーネルのバグが原因で、Linuxディストリビューションがクラッシュした問題の詳細は以下から読むことができます。
CrowdStrikeによるPC起動不能問題は過去にLinuxディストリビューションでも発生していた - GIGAZINE
CrowdStrikeが原因でOSがクラッシュする問題は、WindowsとLinuxディストリビューションで発生していますが、これまでのところmacOSでは大きな問題が報告されていません。
The Wall Street Journal(WSJ)の取材に応えたセキュリティ企業・Tenableのアミット・ヨランCEOは、Macが今回の問題を免れた理由を「Appleはクローズドなエコシステムを運営しているため、アップグレードを強制したり、アプリケーションに適切なセキュリティ対策を講じるよう強制したり、あるいはApp Storeから閉め出したりすることで、ほかのプラットフォームよりはるかに健全なバランスを保っているのでしょう」と分析しています。
そもそも、今回のCrowdStrikeの不具合が壊滅的な影響をもたらした理由は、同社のセキュリティソフト「CrowdStrike Falcon」がWindowsの根幹であるカーネルで動作していたためです。
CrowdStrikeは「カーネルモードで動くマルウェアに対してはカーネルモードのセキュリティ対策でないと検知・保護ができません。エンドポイントでの検知と対応(EDR)をするソフトとして、何が起きたのかをしっかりと見て対処を考えるという意味では、カーネルモードは必須です」と説明していますが、今回の障害ではCrowdStrike FalconがWindowsの中心部で動作していたことが裏目に出ました。
一方、Appleは2020年にセキュリティ製品の開発者に向けて、カーネルレベルへのアクセスを許可しないと伝えました。これはAppleのパートナー企業にとっては頭痛の種ですが、同時にMacが今回のような問題とは無縁になった理由でもあると、Mac専門のセキュリティソフト企業・DoubleYouのパトリック・ウォードルCEOは述べています。
しかし、Microsoftは他社製品がOSのカーネルにアクセスするのを防ぐことができません。なぜなら、Microsoftは2009年に締結した欧州委員会との契約で、Microsoftと同レベルのWindowsへのアクセス権をセキュリティソフトの開発者に与えなければならないことになっているからです。
続きはこちらから👇
Microsoftが「CrowdStrikeの障害の原因は欧州委員会のクレーム」と当てこすり、なぜMacは無傷だったのかも浮き彫りに - GIGAZINE
https://gigazine.net/news/20240722-microsoft-crowdstrike-eu/
EUの規定でWindowsは、アクセス権を開発者に与えなければならない
ということによる。
つまりmacOSは、EUの規定に該当していなかったことで問題が起きなかった。
まとめ
アホな陰謀論者(主にYouTuber)が、これは、「影の組織がどうのこうの・・・」なんて言っていますが、それはないだろう。
「CrowdStrike」(クラウドストライク)が失敗した。
という問題です。
マスコミも世界中で発生しているなんていう報道をしていますが、そんなことはなく
「CrowdStrike」(クラウドストライク)を導入している(主に企業)パソコンだけが問題だった。
しかも自動アップデートのものだけが影響を受けた。
という結論である。
そもそも企業で自動アップデートをしていた ということも 問題があった。
と言うことも言えよう。