00:02 はじめに
02:12 サイバー犯罪の増加
05:59 競争環境
10:41 これまでの経緯
13:00 地獄の9つの輪
14:50 脅威モデル(概念 1/3)
20:54 攻撃面(概念 2/3)
25:14 ブラック・レイディウス(概念 3/3)
30:48 不安全なハードウェア(罪 1/3)
38:05 不安全なソフトウェア(罪 2/3)
43:42 供給チェーン攻撃(罪 3/3)
49:22 常識(美徳 1/3)
57:23 セキュリティの逆転(美徳 2/3)
01:03:28 設計上の(非)安全性(美徳 3/3)
01:09:56 結論
01:12:10 次回の講義と聴衆からの質問
説明
サイバー犯罪は増加傾向にあります。ランサムウェアは急成長中のビジネスです。物理的に分散しているため、供給チェーンは特に脆弱です。さらに、環境の複雑性はコンピュータセキュリティの問題が発生しやすい温床となっています。コンピュータセキュリティは、その設計自体が直感に反するため、攻撃者が脆弱性を見つけ出し悪用するための視点として採用されています。数値レシピに関わる供給チェーン最適化の種類によって、リスクは増大することもあれば低減することもあります。
完全な書き起こし
この供給チェーンに関する講義シリーズへようこそ。私はジョアネス・ヴェルモレルです。本日は「供給チェーンのためのサイバーセキュリティ」についてお話しします。現代の供給チェーンは高度にソフトウェアに依存しており、日々その依存度は増しています。ソフトウェアは生産性の向上や反応速度の向上といった大きな利点をもたらす一方で、深刻な欠点も伴います。その欠点の一つがコンピュータセキュリティであり、これは独自の問題群を形成し、非常に高いコストがかかる可能性があります。しかし、供給チェーンにおいては、ソフトウェア以前の時代に戻ることは不可能であり、大規模な供給チェーンを利益を上げながら運用するためには、ソフトウェアは必須です。したがって、コンピュータセキュリティには正面から取り組む必要があります。
この講義の第一の目的は、コンピュータセキュリティの課題の規模と広がり、特に供給チェーンの視点から見たその本質を理解し、現代の供給チェーンを如何にして守るかを考察することです。第二の目的は、コンピュータセキュリティがなぜこれほど独特で困難なのか、つまりその直感に反する性質を理解することです。特に供給チェーンの視点から、コンピュータセキュリティに適用可能な知見が、供給チェーンに関する一般的な常識とはどのように対立しているのかを明らかにしたいと考えています。
サイバー犯罪はこの10年以上にわたって増加しています。FBIはサイバー犯罪に関して非常に興味深い統計を提供しています。昨年、アメリカ国内で報告されたサイバー犯罪による損失は40億ドルを超えました。これらの数字は実際の問題の規模を過小評価している可能性が高く、さまざまな理由から企業は問題の報告を控えがちです。まず、小規模な事件は評価や定量化が特に困難です。例えば、軽微なコンピュータセキュリティ侵害により、ある倉庫で半日の倉庫運用が停止した場合、実際に損害が発生していたとしても、それが報告や損害賠償の対象となる事件とみなされることはほとんどありません。
一方、大企業では、市場のパニックを引き起こさないために、大規模な事件が報告されにくい傾向があります。そのため、大きな事件は過小評価されがちです。しかし、これらの報告で最も重要かつ興味深い数値は、報告された損失の年間成長率であり、約30%に達しています。FBIによれば、ここ5年間この数字は非常に安定しているとのことです。私個人の見解では、この成長傾向は今後10年間は安定して続く可能性が非常に高いと思われます。実際、ソフトウェアの重要性は着実に増しており、現代経済はますますソフトウェアに依存するようになっています。したがって、この傾向はある程度の期間、約10年ほど成長を続け、その後一定の水準に達するのではないかと考えられます。
サイバー犯罪は大きな問題であり、ますます拡大していますが、他の問題の規模と比較すれば世界の終わりとも言えません。例えば、年率30%の成長が10年間続くと仮定すると、アメリカにおける報告された損失は年間約500億ドルに達するでしょう。これは、この問題の規模が違法薬物市場のおよそ3分の1に相当することを意味します。つまり、サイバー犯罪は大きな問題ですが、アメリカのGDPと比較すれば、黙示録的な問題とは言い切れません。それでもなお、この問題は非常に深刻化しており、特にそのコストの大部分が注意を払っていないプレイヤーによって負担されているため、十分な対策が求められています。このコストは均等に分布しているわけではなく、私の見解では、供給チェーンは特に脆弱であるため、経済全体と比較してより大きな割合のコストを負担していると考えられます。その中で、最も注意を払っていない企業が実際にその大部分のコストを支えているのです。
コンピュータセキュリティの問題を引き起こすためには、機器や人、またはその両方を標的にすることが可能です。人間の弱点を突く手法は技術的にソーシャル・エンジニアリングと呼ばれ、コンピュータセキュリティの問題を突く上で非常に効果的です。しかしながら、ソーシャル・エンジニアリング自体は別の講義に値するほど奥深い内容であり、本講義ではコンピュータに関する部分に焦点を当てます。供給チェーンは設計上、非常に露出しやすい構造になっています。まず、供給チェーンは多くの機器を含みます。次に、供給チェーンは地理的に分散した運用から成り立っています。さらに、設計上、供給チェーンの機器は非常に相互接続かつ相互依存的です。最後に、多くの人が供給チェーンに関与しているため、アプリケーションの全体像は非常に複雑です。複雑なシステムには、コンピュータセキュリティにおいても脆弱性が伴います。総じて、供給チェーンはコンピュータセキュリティの問題が発生する絶好のターゲットとなる要素を全て備えています。
十分に複雑でなかったとしても、ここで即座に指摘しておきたいのは、コンピュータセキュリティは他の種類のセキュリティと対立することが多く、したがってコンピュータセキュリティの状況を改善しようとすると、他のセキュリティ問題が生じる可能性があるという点です。この一見直感に反する側面を説明するために、データレイクの事例を見てみましょう。供給チェーンの全データを集約するデータレイクを導入すると、単一障害点が発生します。もしこのデータレイクに侵入され脆弱性が突かれた場合、攻撃者は一度に全てのデータを抽出することが可能になります。これはデータレイクという概念自体に内在する設計上の問題であり、回避策は存在しません。
しかし、データレイクには利点もあります。データレイクがなければ、企業は別の種類の問題に晒されることになります。多くの企業詐欺は、大企業では右手が左手の動きを把握していないという事実に依拠しており、社内のコミュニケーションや連携の欠如を利用してさまざまな詐欺が行われるのです。これらの問題を軽減する一つの方法は、全データを一元化することで、不正行為をはっきりと浮かび上がらせることにあります。この点において、データレイクを持つことは、データの照合が困難なために見過ごされがちな各種詐欺を防ぐための優れた方法と言えます。つまり、データレイクの導入はコンピュータセキュリティの問題を引き起こす一方で、企業にとって非常に高額な詐欺被害を防ぐ解決策の一部でもあるのです。
ここで見て取れるように、コンピュータセキュリティはセキュリティ機構に伴うコスト間のトレードオフだけでなく、コンピュータセキュリティの特定の範囲を超えた他の種類のセキュリティとの間にもトレードオフが存在する問題です。
この講義は供給チェーンに関する第4章の中の第7講義であり、この第4章は供給チェーンの補助科学に焦点を当てています。補助科学とは、厳密には供給チェーンそのものではないものの、現代の供給チェーン実務に不可欠なテーマを指します。
この第4章を始めて以来、私たちは抽象度の階段を上ってきました。まずコンピューティングの物理的側面から始め、次にソフトウェアの最も基本的な要素であるアルゴリズムへと進みました。その後、供給チェーンにとって重要な2種類のかなり精緻なアルゴリズム、数学的最適化と機械学習に踏み込みました。特に、数学的最適化と機械学習の両者がプログラミングパラダイムにより推進されていることが明らかになりました。これにより、言語とコンパイラに関する講義という迂回路をたどりましたが、これは供給チェーンの領域におけるコンピュータ知識の中で最も過小評価されている話題の一つと言えるでしょう。
前回の講義では、ソフトウェアエンジニアリングに踏み込み、一時的に機械を脇に置き、そもそも供給チェーンを運用するために必要なソフトウェアを作り出す人々に焦点を当てました。本日は、供給チェーンの運用に必要なソフトウェアを構築するために求められる要素に焦点を当てた後、逆にその供給チェーンを機能させるはずのソフトウェアを破壊・無効化するために必要な要素に焦点を当てます。
この講義の残りは、三つのブロックに分けられます。第一に、コンピュータセキュリティを理解する上で重要な三つの基本概念を振り返ります。コンピュータセキュリティは直感に反する側面を持つものの、合理性や論理的分析が全く通用しないというわけではありません。第二に、現在の多く(あるいはほとんど)のコンピュータセキュリティ問題の根本原因として非常に共通する事項を分析・列挙します。特に、その根本原因の広がりを考えると、圧倒されずにはいられないことがわかるでしょう。最後に、少なくともコンピュータセキュリティリスクを軽減するために何ができるかを検討します。対策として取れる行動のほとんどは、「すべきこと」よりも「避けるべきこと」を強調する負の知識の一種であることがわかるでしょう。これらのトピックは供給チェーンの視点から取り上げようとしますが、コンピュータセキュリティに関しては供給チェーン特有ではない側面も多く存在します。
解決策を考えるためには、そもそも解決しようとしている問題を明確にする必要があります。これは、このシリーズの第3章(供給チェーン担当者に捧げられた章)で私が考えていたのと同じアプローチです。実際、供給チェーンの担当者は解決すべき問題を明確化しようと試みており、コンピュータセキュリティにおいては、これに相当する緩やかな概念として脅威モデルが存在します。脅威モデルは、セキュリティ上の問題を明確化するためのツールそのものです。コンピュータセキュリティは非常に捉えどころがなく、漠然として多様であり、その本質を論理的に議論するのは非常に困難です。セキュリティに関する議論を行う際、参加者が善意で議論していたとしても、論点が次々と移り変わる問題に悩まされるのは避けられません。
例えば、従業員によってパスワードが公開されてしまうという脅威について議論する場合、従業員に落ち度がなくてもその脅威は現実的であるにもかかわらず、議論が弱いまたは一般的なパスワードという他の脅威に逸れるべきではありません。脅威を明確に考えることは、コンピュータセキュリティにおいて極めて重要です。なぜなら、十分に考え抜かれていない対策は元の問題をさらに悪化させる傾向があるからです。もし、企業がパスワードの露出問題を抑制するために、パスワードを公開した従業員に対して懲戒処分を行うことにした場合、このアプローチは大きな逆効果をもたらす可能性が高いのです。従業員は支援を求めるのではなく、自らのパスワードに関する問題を隠すようになり、長期的には問題がさらに悪化するでしょう.
脅威モデルの興味深い点は、実際に存在する脅威であっても、どの脅威に対処すべきか、どの脅威は見送るべきかを選択することを強制する点にあります。例えば、以下の脅威を考えてみましょう。高い権限を持つ不正行為の従業員がデータレイクにアクセスした場合はどうでしょうか。この人物がその高い権限を利用してデータを不正に持ち出したらどうなるでしょうか。これは脅威ですが、この特定の脅威に対抗するかどうかは、限られた資源と時間の中で判断する必要があります。まさにこの特定の脅威に対処することは非常に高コストとなる可能性があるため、脅威モデルは、いずれ対処するにはあまりにも費用がかかる脅威が存在するという判断材料にもなるのです。資源と時間は、同様に脅威でありながらも、対策がはるかに安価で容易な他の種類の脅威に充てる方が賢明でしょう.
この点において、類推には注意が必要です。コンピュータセキュリティにおける脅威は、産業リスクや物理的リスクの脅威とは全く異なります。コンピュータセキュリティは、あなたの慣行や方針に合わせて考え、行動を適応させることができる敵対者、すなわち人間が関与します。例えば、セキュリティプロセスが十分に文書化されている場合、攻撃者はその文書を利用してあなたの盲点を突くことが可能です。ここで言いたいのは、セキュリティに関する文書を持つべきでないということではなく、コンピュータセキュリティにおいては、敵対者が賢明であり、たとえそれが自社のセキュリティプロセスであっても、与えた情報を利用できるということです。したがって、脅威モデルはこのような問題を考え始める上で非常に有用なのです.
現実世界では、攻撃対象領域は比較的明白なものです。中世の城を例に挙げれば、攻撃対象は城壁や跳ね橋となります。しかし、コンピュータの世界では状況ははるかに複雑です。コンピュータセキュリティの観点からは、一見些細に見える要素であっても攻撃の対象となり得ます。攻撃対象領域に関する重要な洞察は、その規模が思っている以上に大きいという点です。
この実例として挙げられるのがOMGケーブルです。これは一見普通のUSBケーブルに見えますが、中にはマイクロコンピュータが内蔵されており、そのケーブルを接続するだけで任意のコンピュータを侵害する可能性があります。この低価格なハードウェアはわずか139ドルで購入でき、攻撃対象領域へのアクセスの容易さを示しています。
攻撃対象領域の観点からは、どんなに些細に見えるハードウェアやソフトウェアであっても、それぞれに独自の攻撃対象領域があります。さらに、サプライチェーンの特定のケースでは、すべての攻撃対象領域を特定することさえ非常に困難です。サプライチェーンの現場で蔓延しているシャドウITや、従業員所有のデバイス(BYODパターン)は、攻撃者がサプライチェーンに侵入するための追加の入り口となります。それは、ITチームが管理するものだけでなく、管理外であっても何らかの形でサプライチェーンの運用に貢献しているすべてのものが対象となります。
攻撃対象領域の概念は、攻撃の手法ではなく「何が攻撃可能か」を明確にすることにあります。概念的には、攻撃対象領域の考え方は、どの要素が何らかの形で侵害され得るかをマッピングすることを強制します。サプライチェーンの観点から見ると、ExcelのスプレッドシートやPythonスクリプトのようなプログラム可能な機能を持つあらゆる種類のソフトウェアは、一般的なプログラミング言語でプログラマビリティや広範な互換性が実現される場合、非常に大きな攻撃対象領域を持ちます。したがって、サプライチェーンに関しては、実際行われている多数の設定を考慮すると、攻撃対象領域は通常かなり大きなものとなります。
ここで、第三の概念として爆風半径(blast radius)があります。これは、セキュリティイベントの潜在的な全体影響を測る方法です。爆風半径の観点で考えると、このイベントが発生するかどうかではなく、「発生した場合、実際にどの程度の影響範囲になるのか?」と考えるようになります。つまり、対策の有無にかかわらず、その結果について考えるということです。もしこのイベントが発生した場合、どのような影響が生じるでしょうか?
城の例に戻ると、コンピュータの世界での爆風半径は信じられないほど大きくなることがあります。例えば、コロニアルパイプライン攻撃の場合、侵害されたシステムは全体のごく一部、すなわち請求システムに過ぎませんでした。しかし、たった一社の請求システムが侵害されたことで、テキサス州全体に影響が及んだのです。これは、サプライチェーンを考えるときの、実際のコンピュータセキュリティ問題の爆風半径の概念を示しています。
クラウドコンピューティングの登場により、爆風半径は飛躍的に拡大しました。クラウドコンピューティングは、ビジネスモデルやIT運用モデルとして極めて競争力がありますが、その代償として巨大な爆風半径を伴います。攻撃者がクラウドコンピューティングリソースの管理者権限を取得すれば、一度にアプリケーション全体の構成を無効にし、広範な影響をもたらす単一点の障害を生み出すことができます。アプリケーションをクラウドに移すという事実は、相互接続性の問題を一層悪化させ、結果としてより大きな爆風半径を招くのです。
アプリをクラウドに移すと、クラウド内の他のアプリとの連携が容易になり、実際のビジネス上のメリットが得られます。しかし、爆風半径の観点からは、攻撃者によって利用され得る膨大な相互依存性を生み出してしまい、その結果、驚くべき規模の爆風半径が生成される可能性があります。
サプライチェーンの観点から言えば、爆風半径について考えることは、その爆風半径を軽減する方法を模索する上で有効です。別のサプライチェーンの例に戻ると、前回の講義で述べたように、サプライチェーン管理には2種類のソフトウェア要素があります。1つは、在庫水準の追跡など、トランザクション要素、すなわちサプライチェーン管理そのものです。もう1つは、需要予測や計画、そして各種統計分析などを含む分析要素です。
もし、すべての分析系ソフトウェア要素を本番環境から厳格に隔離し、アナリティクス部分がトランザクションシステムからデータを読み取るだけで書き込みを一切行わないようにすれば、分析システムが侵害された場合、その爆風半径はアプリケーション全体の分析部分に限定されることになります。率直に言えば、需要予測ソフトウェアが侵害されても、在庫水準を管理する部分のソフトウェアが侵害されるわけではありません。
さて、ここでコンピュータセキュリティ問題の根本原因と発生源を振り返ってみましょう。ハードウェアに関しては、状況はまさにひどいものです。要するに、樽からあちこち漏れ出しているような状態で、コミュニティ全体が次々と出現する問題を急ごしらえのダクトテープで修正し続けています。今日では、ほとんどのハードウェアが破損しているのです。
例えば、すべての現代CPUはほぼ故障していると言っても過言ではありません。2018年、セキュリティ研究者のチームは、SpectreとMeltdownと呼ばれる現代のCPUに存在する2種類の新たな脆弱性を明らかにしました。これらの脆弱性は、現代CPUに見られる分岐予測機能を悪用します。サプライチェーン向けのモダンコンピューティングに関する講義でもご覧になったように、現代のCPUは非常に深い実行パイプラインを持ち、高性能を実現するための一手段として分岐予測が利用されています。しかし、市場に出回っているすべての現代CPUに搭載されているこの分岐予測メカニズムは、セキュリティの境界を突破するために悪用可能であることが判明しました。この問題は、そもそもCPUに分岐予測が存在するという根本的な設計上の欠陥に起因しているため、解決が困難です。
CPUには数多くの問題があり、レガシーサポートによる偶発的なバックドアについてはここでは触れません。しかし、メモリもまた壊れているのです。高密度の現代DRAMに見られるメモリセルの物理的配置を悪用するRowhammer攻撃という攻撃手法があります。これにより、メモリエラーを誘発し、そのエラーを利用して機器からデータを抜き出すことが可能です。ECC DRAM(エラー訂正コード付きDRAM)を搭載していたとしても、根本的な回避策は存在しません。ECCはRowhammer攻撃の進行を遅らせるだけで、防止することはできません。必要なのは、JavaScriptが有効なウェブページを機器に実行させるだけで、そこから直接メモリ内のデータを抜き出すことができるのです。CPUとメモリが壊れているだけでなく、USBもまた故障しています。USBに関しては、自分の機器に接続する任意のUSBデバイスが、その機器を侵害しかねないと考えるのが無難です。以前のスライドで「Oh My God」ケーブルの例も見ましたが、根本的にはこの問題は非常に深刻です。その原因は、特にプラグアンドプレイに関して、数十年前に下された非常に悪いUSBに関する決定に起因します。
ユーザー体験の観点からは、デバイスをコンピュータに接続するとすぐに使えるのは素晴らしいことです。しかし、内部ではUSBコントローラに大量のインテリジェンスが組み込まれており、ドライバを自動インポートし、各種機能を自動で有効化することで、攻撃者が機器を乗っ取るための入り口となり得るのです。したがって、これらのプラグアンドプレイ機能はユーザー体験上は非常に優れているものの、サイバーセキュリティの観点からは完全な悪夢と言えます。
ちなみに、多くの、あるいはほとんどのWi‑Fiチップセットにもひどいセキュリティ上の欠陥があります。2017年の研究者たちは、iPhoneやSamsungのスマートフォンで広く使用されているBroadcom製のチップセットに欠陥があることを示しました。攻撃者がデバイスを侵害するために必要なのは、Wi‑Fiの範囲内にいることと、Wi‑Fiがアクティブであれば、リモートでデバイスを制御できるという事実だけです。
サプライチェーンの観点から見ると、従来のハードウェアが大部分で故障しているだけでなく、サプライチェーンにIoTなどが組み込まれている場合、地理的分散がさらに拡大し、ここで述べた問題以上の数々の問題に晒されることになります。攻撃者はしばしばハードウェアに物理的にアクセスでき、あるいはサプライチェーンに接続されるデバイスへの物理的アクセスを防ぐのが非常に困難になります。したがって、ハードウェアの観点からは、サプライチェーンは設計上、極めて露出した状態にあると言えるでしょう。
ハードウェアセキュリティの状況がひどいことは既に明らかですから、ソフトウェアセキュリティに関しても状況が悪いことは驚くべきことではありません。ソフトウェアに存在するすべての欠陥を列挙するつもりはありませんが、重要なのは各層それぞれに固有のセキュリティ上の問題があるという点です。オペレーティングシステム、仮想マシン、ハイパーバイザー、アプリケーションフレームワーク、ウェブサーバーなど、あらゆる層で深刻なセキュリティ問題が発生しています。
しかし、ここで強調したいのは、ソフトウェアにおいては、あなたを守るために存在するはずのソフトウェアでさえ、深刻な逆効果を招く可能性があるということです。例えば、アンチウイルスソフトは一連のセキュリティ問題を抱えています。アンチウイルスは、他のすべてのプロセスの動作をスキャンするため、膨大な特権で動作するソフトウェアです。そのため、攻撃者にとって格好の標的となります。さらに、アンチウイルスは多くの企業の多くの機器にインストールされているため、非常に高い特権を持つ同じソフトウェアが多数存在することになり、攻撃者にとっての主要な標的となります。実際、今日では多くの攻撃者がアンチウイルスを直接狙っています。ちなみに、画面に映っているのは、市場に出回っている既存のアンチウイルスをいかにして侵害し、そのアンチウイルスを利用してターゲットからデータを抽出するかを示すセキュリティ研究者たちの様子です。
しかしながら、アンチウイルスに関する問題は非常に深刻です。アンチウイルスは本質的に非常にリソースを消費する計算を行っているため、望ましいパフォーマンスを達成するには多くの低レベルなプログラミングテクニックが必要となります。残念ながら、優れた計算性能を得るために低レベルな手法を多用すればするほど、低レベルな問題を露呈することとなり、結果として攻撃対象領域が拡大してしまいます。さらに、アンチウイルスは設計上、常に外部と連携するソフトウェアであり、最新のシグネチャや検出ロジックで常に自ら更新しなければ意味がありません。そのため、結果としてネットワークなどとの接続が必要となり、攻撃対象領域が増加してしまうのです。
個人的には、現代のエンタープライズソフトウェア市場において、ほとんどのアンチウイルスソリューションはかえって害をもたらしていると考えています。しかし実際、ほとんどのセキュリティソリューションについても同様のことが言えます。近年、攻撃者が特定のセキュリティソリューションを狙った非常に深刻な世界的問題が発生しており、その理由はアンチウイルスと同じ重要な特性、すなわち高い特権、広範なリーチ、そして高い接続性を共有しているため、攻撃者にとって格好の標的となっているからです。
サプライチェーンの観点から結論づけると、サプライチェーン分野で普及しているエンタープライズソフトウェアは、その内部の膨大な複雑性ゆえに、セキュリティが極めて脆弱であるということを指摘したいと思います。非常にシンプルなソフトウェアのセキュリティを確保するのが難しいのに、何十年も成長し続けた非常に肥大化した製品になると、そのタスクはほぼ不可能に近いほど困難になります。
最後に、サプライチェーン攻撃が注目される理由は少なくとも2点あります。第一に、サプライチェーン攻撃は過去数年間で飛躍的に増加しており、非常に興味深い現象となっていることです。私個人の予測では、今後10年でこれらのサプライチェーン攻撃が主要なコンピュータセキュリティ攻撃の一つとなるでしょう。第二に、攻撃の名称に「サプライチェーン」というキーワードが含まれることで、特にサプライチェーンに関心のある層との議論において大きな混乱を招く可能性がある点です。サプライチェーン攻撃とは、単にソフトウェア依存関係の一部を狙う攻撃のことです。例えば、Amazonが直接開発したソフトウェアそのものを攻撃するのは非常に困難かもしれません。おそらく、Amazonのチームは非常に自信があり、有能で、そのソフトウェアはあまりセキュリティ上の欠陥がないように設計されているでしょう。しかし、Amazonが利用しているものの、Amazon自身が最初から作成または設計していないすべての依存関係やソフトウェア要素はどうでしょうか?例えば、それらの多くはオープンソースソフトウェアのケースに該当します。今日、ほぼすべてのベンダーが大規模にオープンソースソフトウェアを使用しており、どの大企業を挙げても、広範にオープンソースソフトウェアの一部を活用している可能性が高いのです。
Amazonのケースに戻ると、もしAmazon自体を直接侵害できない場合、Amazonが使用しているオープンソースコンポーネントの一つを侵害するのはどうでしょうか?それがまさにサプライチェーン攻撃の本質です。先週の金曜日、Log4jの「壊滅的」な脆弱性が発見され、十年でおそらく最大規模のコンピュータセキュリティ侵害の一つとなりました。簡単に言えば、Log4jはエラーを記録するために使われるオープンソースコンポーネントです。基本的に、ソフトウェアがエラーに遭遇すると、そのエラーを後からたどるために、通常、エラーをログに記録します。これがLog4jのようなロガーの主要な機能です。Log4jの「j」はJavaを意味し、エンタープライズソフトウェアの世界では主要なソフトウェアスタックのひとつです。Javaで実装されるすべてのソフトウェアはロガーを必要とし、現時点でほとんどがLog4jを使用していると考えられます。
先週の金曜日に、セキュリティ重要度スケールで満点の10点と評価される壊滅的な脆弱性がLog4jに発見されたことが判明しました。この特定のソフトウェアは厳しく精査された結果、この1つの脆弱性が原因で世界的な大混乱が発生し、さらに今日、2つ目の重大な脆弱性が発見されました。これこそがサプライチェーン攻撃の本質であり、一見無害で依存していることに気づかない小さなコンポーネントが、実はシステムの中核にあって脆弱性を生み出し、甚大な混乱を引き起こすのです。
サプライチェーンの観点から見ると、サプライチェーン自体がサプライチェーン攻撃に対して特に脆弱であることが分かります。これは、現代のサプライチェーンが非常に密接に連携しているためです。現代のサプライチェーンを運用している企業は、供給業者とも顧客ともソフトウェア面で強く接続されている可能性が高いです。これはEDIの形を取る場合もあれば、企業間のコンピューター統合によるあらゆる形態を伴う場合もあります。サプライチェーン攻撃においては、あなた自身のソフトウェア依存関係だけでなく、供給業者や顧客の依存関係のどれかを侵害するだけで十分であることを意味します。攻撃の表面積という観点からも、サプライチェーンは設計上非常に脆弱で露出しているのです。
これまで見てきた状況は非常に厳しいものですが、これは現代のコンピュータセキュリティを正確に描写していると私は考えます。我々には山のような問題があり、残念ながらこの最後のセクションでは、その対策について議論することになるでしょう。しかし、はっきり言っておきます。今は上り坂であり、ときには敗北を覚悟しなければならない非常に困難な状況です。困難だからといって、セキュリティを向上させようとする努力を怠ってはならないのです。
コンピュータセキュリティに関する一般的な知見から始めましょう。FBIはコンピュータセキュリティにおけるトップ5の推奨事項を提示しています。これらの推奨事項を見ていきましょう。最初の推奨事項は、バックアップを取り、テストし、かつバックアップをオフラインで保管することです。全体としては良い推奨ですが、バックアップをオフラインで保持するというアイディアは、やや非現実的です。非常に費用がかかり、困難です。バックアップが有用であるためには頻繁に行う必要があり、1ヶ月前のバックアップは通常、全く役に立ちません。毎日、毎時、あるいは毎分とバックアップを取っている場合、真にオフラインのバックアップを維持するのは困難になります。私の提案は、バックアップを厳格に隔離しておくことです。バックアップにおいて重要なのは、バックアッププランを持つのではなく、システムが侵害された際の迅速な復旧プランに注力することです。
二番目の推奨事項は、多要素認証を利用することです。これは良い推奨であり、パスワードだけでは安全ではないからです。しかし、多要素認証の問題は、多くの場合、それがあたかも機能しているように見せかけるだけであるという点にあります。例えば、パスワードと電話での確認があれば、二要素認証と言えるかもしれません。しかし、もし手元の電話でパスワードリセットが可能であれば、実際には一要素認証に過ぎません。多要素認証を使う際は、各要素が真に独立していて、一つの要素が他を凌駕して一要素認証に陥らないようにすることが重要です。
三番目の推奨事項は、システムを更新し、パッチを適用することです。これは良い習慣ですが、良いことも過ぎれば悪いことになる場合があります。現代で最も深刻な問題の一つは、自動ソフトウェアアップグレードに依存するサプライチェーン攻撃です。攻撃者がオープンソースソフトウェアの一部を侵害してサプライチェーン攻撃を実行し、そのようなソフトウェアが何千もある場合、自動更新をそのまま許すと、そのマルウェアがシステム内に入り込んでしまいます。これはますます危険になっています。USBハードウェアに関する問題の多くは、ファームウェアの自動更新機能に由来しています。したがって、システムの更新とパッチ適用は重要ですが、それが逆により大きなセキュリティ問題を引き起こしていないか常に考慮する必要があります。
四番目の推奨事項は、セキュリティソリューションが最新の状態にあることを確認することです。この推奨事項について、何がセキュリティソリューションと見なされるかはあまり明確ではありません。この推奨は、セキュリティ会社のロビー活動の直接的な産物であるかのような印象すらあります。今日、セキュリティソリューションとして宣伝されているほとんどのものは、必ずしもあなたのサプライチェーンや会社をより安全にするわけではありません。それにもかかわらず、ソフトウェアであれば、セキュリティソリューションであろうとその他のものであろうと、常に最新の状態に保つ方が良いでしょう。
最後の推奨事項は、インシデント対応計画を見直し、実践することです。この推奨自体は悪くはありませんが、私の意見ではトップ5には入らないでしょう。このような考え方は、火災リスクなどの産業事故に対処する際には適しているかもしれませんが、必ずしもコンピュータセキュリティの問題には当てはまりません。私自身のセキュリティに関する第4の推奨事項は、自分の脅威モデル、攻撃面、そして爆発半径を把握することです。そもそもどのように脆弱で、何が起こり得るのかを知っているだけで、問題の予防に大いに役立ちます。コンピュータセキュリティにおいては知識が鍵です。
私自身の第5の推奨事項は、コンピュータセキュリティはプロセスでも解決策でもなく、文化であるということです。これは、どんなチェックリストも長期的にはあなたの会社に役立たないということを思い出させるためのものです。セキュリティは文化なのです。
セキュリティの逆転に関して、コンピュータセキュリティにおいて誰を信頼すべきか、どのようなロールモデルにすべきかという直感的な期待は常に誤りであるようです。外見上、または見た目では最も安全に見える組織が、実際には最悪であることが多く、一方で非常にグレーで怪しげに見える組織がしばしば最も優れているのです。これがセキュリティ逆転のパラドックスの本質です。
逸話的な証拠として、2014年の空港セキュリティに関する講演を挙げたいと思います。その講演で、2人のセキュリティ研究者は、コンピュータセキュリティの観点から空港が実際には非常に劣っていることを示しました。セキュリティがあまりにも不十分で、深刻でなければ、ほとんど笑い話になってしまうところです。国際空港は非常に厳格なコンピュータセキュリティの恩恵を受けるはずですが、現実は全くその逆です。空港のコンピュータセキュリティは、文字通り完全な冗談であり、脆弱性の百科事典のようで、多くの問題が完全な無能さ、無関心、そして問題に対する無頓着さを示しています。
この講演は、私自身の職業経験と一致しています。プロとしての趣味で、私は10年以上にわたり投資会社のために技術監査を行ってきました。数十社のテック企業を監査する機会がありましたが、私の観察では、外見や状況が安全に見える企業ほど、実際のコンピュータセキュリティは悪い傾向にあるのです。例えば、防衛やセキュリティ分野で活動する企業は非常に劣悪なセキュリティである一方、賭博サイトやアダルトサイトなどのグレーな領域で活動する企業は、優れたコンピュータセキュリティを備えている傾向があります。
同じ問題は特定の業界内でも見られます。例えば、医療分野では手術中に外科医が使用する機器のセキュリティが全く不十分であるのに対し、病院内の自動販売機のコンピュータセキュリティは非常に優れています。直感的には、手術に使用される機器は患者の命がかかっているため非常に安全であるはずですが、実際はその逆です。自動販売機の方が、外科医が使用する機器よりも安全なのです。
この直感に反する逆転現象は、ダーウィニズムという単純な理由から生じていると私は考えています。どの国際空港も大規模なコンピュータセキュリティの問題で破綻したことはなく、むしろ失敗を許されず、長年にわたって印象的な無関心さでセキュリティ問題を放置できるのです。逆に、オンライン賭博アプリを運営し、ハッカーによって金銭が流出すれば、長くは持たず、誰も救いに来ないでしょう。
逸話的な証拠として、再び2014年の空港セキュリティに関する講演を挙げたいと思います。その講演で、2人のセキュリティ研究者は、コンピュータセキュリティの観点から空港が実際には非常に劣っていることを示しました。セキュリティがあまりにも不十分で、もし深刻でなければ笑い話になってしまうところです。これは予想される全くの逆であり、国際空港は非常に厳格なコンピュータセキュリティを備えているはずですが、実際の空港のコンピュータセキュリティは文字通り完全な冗談です。これらの研究者は、一つの脆弱性だけでなく、無数の脆弱性が存在し、多くの問題が完全な無能さ、無関心、そして無頓着さを示していることを明らかにしました。
この講演は私自身の職業経験と一致していました。プロとしての趣味で、私は10年以上にわたり投資会社のために技術監査を行ってきました。数十社のテック企業を監査する中で、外見や状況が安全に見える企業ほど、実際のコンピュータセキュリティは劣っているという観察結果に至りました。例えば、防衛やセキュリティ分野で活動する企業は非常に劣悪なセキュリティであるのに対し、賭博サイトやアダルトサイトなどのグレーゾーンで活動する企業は、優れたコンピュータセキュリティを有している傾向があります。
興味深いことに、同じ問題は特定の業界内でも見られます。例えば、医療分野では、手術中に外科医が使用する機器のセキュリティは惨憺たるものであるのに対し、病院の廊下にある自動販売機のコンピュータセキュリティは非常に優れています。直感的には、手術室に入るものは患者の命がかかっているため非常に安全でなければならないと思われますが、実際はその逆です。自動販売機の方が外科医が使用する機器よりも安全なのです。
この直感に反する逆転現象は、ダーウィニズムという単純な理由に起因していると私は考えています。どの国際空港も大規模なコンピュータセキュリティ問題で破綻したことはなく、失敗すら許されません。その結果、彼らは長年にわたってセキュリティの問題を無頓着に放置することができます。一方、オンライン賭博アプリを運営し、ハッカーにベットの結果を変えられて金銭が流出すれば、長くは持たず、誰も救いに来ないでしょう。
結果として、そのような人々は本質的に生き残り主義者なのです。システムを安全に保つために必要なあらゆることを実行した人物です。サプライチェーンにおける重要なポイントは、もし本物のコンピュータセキュリティ支援を求めてサプライチェーンの保護を図るのであれば、完璧な経歴を持つ元軍関係者を探してはいけません。むしろ、システム管理者や、アダルトサイトまたはオンライン賭博に関わっていた人物―そうした生き残るために本当に必要なスキル、才能、そして献身が求められる周縁分野の人を探すべきです。そうでなければ、その会社は彼らの監督下で存続することはなかったでしょう。
コンピュータセキュリティに関して何ができるかの最終章として、デザインの役割について概説したいと思います。コンピュータセキュリティにおいて、多くのいわゆる専門家は、チームの訓練が必要だと言います。しかし、私個人としては、人間にミスをしないよう訓練することはできないと考えています。最も賢い人々でさえ、時には疲労や病気、非常に愚かなミスを犯すものです。訓練だけに依存することはできません。コンピュータセキュリティは軍事セキュリティのように、本能的に動けるように人々を厳しく訓練するだけでは対応できないのです。ほとんどの場合、状況は冷静に何が起こっているのかを深く考えることを要求します。そうでなければ、対策が最初の問題よりも悪化する可能性が高いのです。
私の見解では、もし組織内でコンピュータセキュリティに関するデザイン上の問題があるなら、どれだけ訓練やダクトテープを使ってもその問題は解決しません。それは勝利の見込みのない戦いになるでしょう。デザインの視点から見ると、脅威モデル、攻撃面、爆発半径に多大な影響を与える決定や側面を探すことになります。可能な限り多くの脅威モデルの分類を排除し、攻撃面全体をなくし、潜在的な爆発半径を制限するようなデザイン上の判断を下すことが求められるのです。
例えば、攻撃面について語る際には、関係する設計上の決定事項を考慮してください。もし貴社が提案依頼書(RFP)や見積依頼書(RFQ)を用いてソフトウェアベンダーを選定している場合、RFPやRFQの性質上、設計段階から大規模なサイバーセキュリティの問題を抱えることになるのは避けられません。
同様の設計上の決定は、爆風半径にも大きな影響を与えます。例えば、データへのアプローチの仕方はサプライチェーンの視点から非常に劇的な結果をもたらします。ほとんどの個人データはサプライチェーンの最適化には全く役に立たないものです。もしより良い予測やより良い計画を望むなら、顧客の名前や名字を知る必要はありません。個人データを資産ではなく負債とみなすという考え方は、Lokadが10年以上前に採用した実践です。爆風半径の観点から言えば、システムが侵害された場合に個人データが漏洩していなければ被害ははるかに小さくなります。もちろん、全ての在庫レベルが公開されるのは好ましくありませんが、個人データが漏洩するのとは異なり、会社に大きな悪影響を及ぼすことはありません。これは、サプライチェーンの構築において爆風半径に関して大きな影響を与える設計上の側面の一つです。
最良の設計決定とは、問題の根本的な原因となるクラス全体を排除するものです。企業におけるサイバーセキュリティ文化の役割は、会社を守るためにどのような設計上の決定が必要かという正しい洞察を組織が育むことを可能にする点にあります。適切なサイバーセキュリティ文化からこそ、正しい設計の洞察が生まれるのです。
これにより、サイバーセキュリティはIT専門家だけに委ねるにはあまりにも重要であり、企業全体の文化として取り組むべきものであるという結論に至ります。サイバーセキュリティは、セキュリティというキーワードが職務に含まれている人々だけの責任ではなく、企業全体で共有すべき責任なのです。この講義で先に述べたように、企業内ではサイバーセキュリティが他のセキュリティと競合することもあり、サイバーセキュリティ専門家ひとりがすべてを救ってくれるという考えは幻想に過ぎません。彼らは問題の一面しか対処できない可能性があるため、企業に大きなセキュリティ効果をもたらす設計上の決定を促すためには、文化が不可欠なのです。
正しい文化は、本能的に後で修正不可能な継続的な問題を引き起こす悪い設計決定を拒絶するためにも必要です。優れたセキュリティ文化とは、何をすべきかだけでなく、何をしてはならないかも示すものです。健全なサイバーセキュリティ文化の最も困難な側面の一つは、従業員が問題に十分な関心を持ち、単なるセキュリティの見せかけに満足しないようにすることです。健全なサイバーセキュリティ文化では、人々は見かけ上のセキュリティではなく、本物のセキュリティを求めています。セキュリティの幻想は、実際のセキュリティ不足よりもはるかに深刻な場合が多いのです。
これは2021年最後の講義であり、次回の講義は2022年、同じ曜日に開催されます。次回の講義では、予測に関する第五章の開始を予定しています。特に、LokadがM5予測コンペティションで非常に壮観な成果を収めたため、かなり興味深い発表になると考えています。この成果を発表するだけでなく、サプライチェーンに関するこのモデルに付随する教訓についても議論します。
さて、ここで質問にお答えしましょう。
Question: 一般的に、サプライチェーンのリーダーたちはサイバーセキュリティを彼らにとって無関係なものと考えているのでしょうか?
私の感じでは、大いにその通りですが、それ以上に問題がある場合もあります。無関心は大きな問題ですが、たとえサプライチェーンのリーダーが関心を持ったとしても、彼らは工業的リスクに適用されるリスク分析の視点からサイバーセキュリティに取り組む傾向があります。これはサイバーセキュリティにおいて最も効率的なアプローチとは言えません。つまり、現代のサプライチェーンを破壊しうる要因に対して、サプライチェーンのリーダーは十分な関心を持っておらず、適切な対策方法を身につける必要があるのです。
Question: サイバーセキュリティが台頭する中で、企業のこの業界への投資は他のソフトウェア予算よりも速く増加しています。将来的には、ソフトウェアシステムによってもたらされる利益が、サイバーセキュリティへの莫大なコストによって相殺され、人々が再び紙とペンに戻る可能性はあるのでしょうか?
私はサイバーセキュリティが台頭しているとは言っておらず、サイバー犯罪が増加していると言ったのです。いつかサイバーセキュリティも向上することを望んでいます。確かに、企業のこの業界への投資は他のソフトウェア予算よりも速く成長しています。問題は、将来的にソフトウェアシステムによって得られる利益がサイバーセキュリティにかかる莫大なコストによって相殺され、人々が再び紙とペンに戻る可能性があるかどうかという点です。
前述の通り、サイバー犯罪が増加しているため、人々はプレッシャーを感じ、その結果、サイバーセキュリティソリューションに資金を投入しています。実際、FBIでさえ何らかのセキュリティソリューションへの投資を推奨しています。私がこれらのセキュリティソリューションに懸念を抱くのは、セキュリティが後付けのものではなく、ほとんどが設計段階から組み込まれているべきだからです。もし貴社がRFPに基づいてソフトウェアを選定しているのであれば、企業の根幹に問題があり、結果としてセキュリティ面で極めて劣るエンタープライズソフトウェアベンダーを選んでいることになります。したがって、その後でどれだけ高級なセキュリティソリューションに投資しようと、もう手遅れなのです。設計上、貴社は既に危険にさらされているのです。
中世のお城の例えに戻ると、弱い跳ね橋の上により大きな堀を設計することも、城壁が十分な高さでなければ高くすることもできません。中世のお城は多くが時間をかけて拡張され、一度に全てが作られたわけではありません。物理的リスクに対しては追加のセキュリティ層を重ねる考え方が有効ですが、ソフトウェアでは通用しません。コード行数が増えるほど、セキュリティ上の問題は大きくなってしまうのです。
サイバー犯罪が増加し、サイバーセキュリティへの支出が増えていることには同意します。しかし、サイバーセキュリティをサイバー犯罪による報告被害額とGDPの比率で測定すると、その比率は悪化しています。つまり、対策に多額を費やしているにもかかわらず、実際のセキュリティは低下しているのです。
紙とペンに戻る可能性についてですが、世界が前デジタル時代に逆戻りするとは思いません。そのコストがあまりにも大きすぎるからです。ソフトウェアがもたらす利益は絶大であり、たとえサイバー犯罪が重大な問題とみなされたとしても、その規模は違法薬物問題のおよそ3分の1に過ぎません。違法薬物は大きな問題ですが、産業文明の終焉を意味するものではありません。よって、人々が紙とペンに戻るとは考えにくいですが、多くのソフトウェアベンダーはよりシンプルな技術的ソリューションを採用し始めるのではないかと私は疑っています。
この点を説明するために、世界中の大企業に大混乱をもたらしたLog4jの脆弱性を考えてみましょう。このサプライチェーン攻撃に関連する脆弱性は、Log4jコンポーネントの複雑さと多機能性によって引き起こされました。本来はエラーを記録する小さなソフトウェアであるはずが、その機能の豊富さから実質的に巨大な存在へと変貌してしまいました。人々はこの巨大な存在を悪用して、意図しない結果を招く方法を見出したのです。
LokadではLog4jは使用しておらず、当社のスタックは.NETで構成され、.NETスタックに相当するNLogを利用しています。しかし、Javaコミュニティ内の問題を受け、CTOと私はNLogを段階的に廃止し、はるかにシンプルなものに切り替えることに決めました。それはより優れたNLogではなく、複雑さがわずか1%のものです。これらのロガーは非常に多機能ですが、その機能性が大きな負債となってしまうのです。
紙とペンに戻るのと同等のアプローチとは、非常に強力で複雑なソフトウェアを、はるかに小規模で能力が限定されたソフトウェアに置き換え始めることです。これにより、セキュリティコストの負担を軽減できる可能性があります。やがて、必要な機能だけを備えた小さなソフトウェアを再実装する方が、規模による膨大な追加攻撃面をもたらす無料のオープンソースコンポーネントを使用するよりも安価であることが明らかになるのです。
サプライチェーンに影響を与える大規模な既知の攻撃については、報道される攻撃に偏りがある可能性があります。Log4jは、銀行、サプライチェーン、クラウドコンピューティングプロバイダー、ゲーム企業など多くの産業に影響を及ぼしたため、世界的に大問題となりました。しかし、Colonial Pipelineの攻撃を見ると、一つの特定の請求ソフトウェアを狙ったランサムウェア攻撃でした。私が見るところ、報道で大きく取り上げられる攻撃は注目を集めるものの、サプライチェーン特有の攻撃が起こっていないというわけではありません。Lokadの顧客情報の詳細は明かせませんが、100社以上の顧客の中でランサムウェア攻撃を目撃しています。企業が状況を改善するために苦労し、通常はバックアップからシステムをゼロから復旧する間、1~2週間ほどデータが受信できないという事実は明らかです。時には、Lokadが彼ら唯一のバックアップとなることもあります。サプライチェーンシステムを狙った深刻な攻撃は、かなり頻繁に発生しているのです。
Lokadは比較的小規模なサンプルながら100社以上のクライアントを抱えていますが、決して100万社というわけではありません。それでも、年間で約6件の大規模なインシデントが発生しており、これは重大なサイバーセキュリティインシデントに対して年率5%のリスクに相当します。私にとってこれは非常に高いリスクです。
Question: サイバーセキュリティは個人の衛生管理のデジタル版のようなものになってきているようですが、学校は子供たちにこれらのスキルを教え始めるべきだと思いますか?
はい、衛生面に関するご指摘は理解できます。しかしサイバーセキュリティでは、攻撃者は知的です。現実世界のウイルスは変異し、病原体を封じ込めるのは困難ですが、無分別な攻撃に直面するのと、最大の被害を与える方法を長時間考え抜く相手に対峙するのとは大きく異なります。
サイバーセキュリティについて、ましてや子供たちに教育・訓練することには困難があるという点には同意します。私自身の考えでは、12歳の子供は本質的には大人と同じくらい賢いですが、経験が不足しているだけです。ですから、詐欺やソーシャルエンジニアリングの手口を含め、これは取り組むべき課題です。今なお、多くの人々が悪名高いナイジェリアの王子メールなどの明らかな詐欺に騙され続けています。
学校は、若い心や次世代が敵対的な世界に対峙できるよう準備させるべきです。たとえ比較的平穏な時代であっても、あなたに害を及ぼそうとする人は存在します。サイバーセキュリティの肝心な点は、悪意ある人物が何千キロも離れた場所にいても、あなたやあなたの組織、さらにはあなたの親族に被害を与える可能性があることです。
いずれ、学校はこの問題に取り組むべきです。しかし、少なくともフランスでは、基本的なプログラミングスキルを教えられる教師を見つけるのに苦労しているのが現状です。この継続する困難は、子供たちにサイバーセキュリティやデジタルセキュリティを教える教師を見つけることをさらに難しくしています。それでも、おそらく取り組まれるべきですが、私としては今後10年でこの分野に大きな進展があるとはあまり期待していません。
以上で質問は終了ですので、皆様にメリークリスマスをお祈りするとともに、来年またお会いしましょう。