サイバーセキュリティのためのレガシーシステム (多くは 10 年以上前に設計されたものです) は、新しいタイプの攻撃者の能力や脆弱性に対応していません。また、人間が設定に依存しているという、多くのソフトウェアの弱点も考慮されていません。  

この新たな現実に対する答えは、米国サイバーセキュリティ&・インフラセキュリティ庁 (CISA) が定めた「セキュア・バイ・デザイン」の原則を 補完する「セキュリティ・バイ・デフォルト」と呼ばれるソフトウェア開発コンセプトです。  

セキュア・バイ・デザインの原則では、ソフトウェアの設計と開発全体にわたってセキュリティを組み込むことを重視します。 デフォルトでセキュリティが確保されているため、製品は追加設定せずとも、そのままで本質的に安全です。 安全なログ管理や認証などのコア セキュリティ機能が事前に構成されているため、複雑な設定は必要ありません。 

脅威は進化し、加速しています 

最近まで、大部分のシステムの「被害の範囲」は限定的でした。ファイアウォールで包まれ、守られていたため、アクセスは組織内の少数の選ばれたユーザーに限定されていました。 攻撃者が弱点を探し出すために忍び寄り入り込める開かれた領域はなかったのです。 攻撃を自動化することはできませんでした。脆弱性を発見し、その脆弱性を突いたエクスプロイトを作成して武器に変え、その武器を用いた攻撃を展開するという攻撃プロセス全体には少なくとも数週間、多くの場合は数か月かかっていました。  

つまり、攻撃の速度だけでなく規模も制限されていたのです。 攻撃者は組織を1つずつ標的にして、特定の制御を回避する方法を見つける必要がありました。 全体的な攻撃率は低く、攻撃が発生したとしても、攻撃者が費やさざるを得ない時間と労力のために、その影響は比較的抑えられていました。 

関連項目: 攻撃対象領域を削減するための組織向けベスト プラクティス 8 つ

「進化するサイバー脅威の状況」と言われますが、これは控えめな表現であると言わざるを得ません。自然や技術の進化がこれほど急速だったことはかつてなかったからです。 わずか数年で、この領域はデジタル版「サンダードーム」闘技場へと変貌を遂げ、無防備な人々がかつてないほど危険にさらされる場所となったのです。  

これは、攻撃者が以下の 3 つの重要な開発を利用できるようになったためです。 

  • 現在の攻撃者は、脆弱性をすぐに武器に変えることができ、人工知能ツールによってそれがさらに簡単になっています。 情報を長く開示する時代は終わりました。 ダークウェブで簡単に入手できる自動スキャン ツールやエクスプロイト キットにより、技術に詳しくない攻撃者でもマルウェア攻撃に参加できるようになっています。 攻撃者が脆弱性を悪用する手口が巧妙化しているため、パッチがリリースされるよりも前にゼロデイ攻撃が発生する懸念が高まっています。 
  • クラウドが導入されたことによって、分散型クラウド インフラストラクチャがデータの保護と監視を困難なものにし、攻撃対象領域が拡大しています。 クラウド プロバイダーとユーザー間のセキュリティ責任共有モデルは、構成が誤っていたり、十分に理解されていなかったりすると、脆弱性につながる可能性があります。 さらに、クラウド アプリケーションでの通信は API に依存することが多く、適切に保護されていない場合は脆弱性が生じる可能性があります。 
  • ファイアウォールやウイルス対策などの従来のセキュリティ対策では対応できません。 ウイルス対策ソフトがまったく新しいゼロデイ脅威の検出に苦労しているときでも、ソーシャルエンジニアリングでファイアウォールが回避される可能性があります。 境界型セキュリティ アプローチはクラウド時代では時代遅れであり、IT インフラストラクチャ全体にわたってセキュア・バイ・デザインの原則を実装する必要があります。 

悪意ある人物は、製品が起動した瞬間に弱点を探ったり、攻撃を開始したりする準備ができているのです。 製品は、電源がオンになって組織のネットワークに接続された瞬間から、強力なゼロデイ防御を備えていなければならないのです。 

関連項目: これまでになく重要な「Secure by Design」の原則

セキュリティ・バイ・デフォルトの3つの柱 

セキュリティ・バイ・デフォルトの適切な実行は、3 つの基本的な柱に基づいています。 

「シフトレフト」セキュリティ 

シフトレフトは、開発プロセスの早い段階での脆弱性検出に重点を置くことです。 開発者は、OWASP Top 10 (Web アプリケーションのセキュリティ脆弱性) や CWE Top 25 (一般的なソフトウェアの弱点) などの資料で特定されている一般的な落とし穴を回避して、安全なコードを作成しなければなりません。  

これは、健康習慣と予防接種によって病気から人を守る予防医学に例えることができます。 開発者は最初から安全なコーディング手法に重点を置くことで、ソフトウェアに耐性と回復力を構築できるのです。 

安全な構成の実現 

人間が新しいソフトウェアを構成すると、ハッカーは喜びます。 誤った構成エラーを排除するために、ソフトウェア プロバイダーはデフォルトで安全な構成を実現しなければなりません。 これには、多要素認証 (MFA) やシングル サインオン (SSO)、およびハードコードされた資格情報 (パスワードやトークン) や、攻撃者に既に知られている脆弱性を持つデフォルト構成を避けることが含まれます。 

安全な構成を実施することで、ユーザーの経験や技術的な専門知識に関係なく、開発を通じて一貫したセキュリティが確保されます。 また、構成に関する決定を行う必要がないため、ユーザー エクスペリエンスも簡素化されます。  

ソフトウェアのサプライチェーンのセキュリティ確保 

自動車や航空宇宙部門での製造と同様に、現代のソフトウェア開発は、サードパーティのライブラリとオープンソース コードに大きく依存する組立ラインになっています。 セキュリティ・バイ・デフォルトでは、開発者はこれらのコンポーネントのセキュリティに厳重な注意を払い、脆弱性が生じないようにしなければなりません。 

関連項目: セキュア・バイ・デザインの誓約: より安全なデジタルの未来を創造するための取り組み

セキュリティ・バイ・デフォルトの評価 

現在、プロバイダーは計測器具とテレメトリを活用して、セキュリティ・バイ・デフォルト機能の性能を監視できます。 製品がオンプレミスの場合、テレメトリを有効にするには、ユーザーのネットワークからデータが出られるようにファイアウォールに穴を開ける必要があります。 クラウド内にあるデータは、テレメトリでプロバイダーに簡単に戻すことができます。  

いずれの場合も、相互同意が必要です。ソフトウェアのユーザーは、プロバイダーがソフトウェアの動作を確認し、組み込まれたセキュリティ制御が実装されているかどうかを確認できるように、デフォルトのテレメトリを有効にする必要があります。 幸いなことに、これは、ユーザーがセキュリティ機能を有効にする必要がないことも意味します。 プロバイダーは、顧客の同意があればリモートでこれを行うことができます。 

進化する脅威に先手を打つ

好意的かつ熱心なサイバーセキュリティ専門家でも、活用できるデータと見識に頼らざるを得ません。 たとえば、OWASP Top 10CWE Top 25 などの従来の脆弱性リストは、セキュリティを認識するための鍵となりますが、以下のような限界があります。 

  • これらのリストが更新されても、発見から緩和策が講じられるまでには一定の脆弱性が残ります。 攻撃者は、まだリストに掲載されていない「外れた」脆弱性を標的にして、このギャップを悪用します。 
  • 従来のリストは既知の脆弱性に焦点を当てているため、組織は「既知の未知」、つまり悪用される可能性があるがまだ特定されていない弱点の影響を受けやすくなります。 

 とはいえ、AIと機械学習は、これらのギャップを埋めることで、セキュリティ・バイ・デフォルトに革命を起こす可能性を秘めています。  

  • 機械学習アルゴリズムは、膨大な量のセキュリティ データを分析してパターンを識別し、従来のリストにまだ含まれていないものも含め、潜在的な脆弱性を予測できます。  
  • 機械学習は、エクスプロイトの傾向とソフトウェアの動作を分析することで、まだ文書化されていなくとも悪用される可能性が高い「既知の未知」の脆弱性を特定できます。  

ソフトウェア開発ライフサイクル (SDLC) にAIを追加する 

AIと機械学習によって、セキュリティ・バイ・デフォルトの原則をソフトウェア開発サイクルに組み込む方法を変えることもできます。 

  •  自動化された脆弱性検出: AI ツールは、既知の脆弱性と未知の脆弱性のいずれについてもコードを継続的にスキャンできるため、ソフトウェア開発ライフサイクル (SDLC) の早い段階で対処できます。 
  • プロアクティブなセキュリティ モデリング: AI は攻撃パターンを分析することで脅威を予測できます。これによって、プロアクティブなセキュリティ モデリングを用いて、こうした脅威に対する防御機能が組み込まれたソフトウェアを構築できます。 
  • インテリジェントな開発者支援: AI はコードを分析し、開発チームに安全なコーディング手法についてリアルタイムで提案を行うことができます。  

自己修復ソフトウェアによるセキュリティ・バイ・デフォルト   

セキュリティ・バイ・デフォルトに関心を持つ開発者の目標の 1 つは、それ自身が脆弱性を積極的に識別して修正する機能を内包するソフトウェアを作成することです。 このコンセプトは、製造業で使用される 遺伝的アルゴリズム にヒントを得たもので、システムが時間の経過とともに自己最適化し、改善できるようにします。 

これによって「セキュリティ・バイ・デフォルト」は、静的コンセプトから動的で自己監視、自己修復の機能を備える動的コンセプトへと変化し、エンタープライズ ソフトウェアに組み込まれます。 そして自ら脆弱性を修正し、脅威を阻止し、さらには新たな攻撃を開発者に報告する能力さえも獲得することになります。 

関連項目: 実践デモ: 安全な UEM 対策ですべてのエンドポイントを保護する

正しい方向へと踏み出す 

少し前に、私は「デジタル セキュリティ問題を解決するために産業界と政府が協力する官民パートナーシップ」が必要であることについて書きました。セキュア・バイ・デザインの原則の作成と、それを推進するための CISA と産業界のリーダーによる取り組みは、サイバー脅威に対して緊急に必要とされる共同防御を構築する上で大きな前進です。 

これらの対策を実行するかどうかは、個々のソフトウェアプロバイダーと開発者次第ではありますが。 セキュリティ・バイ・デフォルトの実践に従うことは、より安全なソフトウェアの開発と提供、そしてサイバーセキュリティの戦いで優位に立つために重要な役割を果たします。