ランサムウェアの攻撃 – パート3、コンテナセキュリティ
はじめに
ランサムウェアに特化したこのシリーズの第3回目は、Kubernetes環境をどのように保護できるかを探っていきます。
ランサムウェアの攻撃からKubernetes環境を守る方法
コンテナの採用が進むにつれ、コンテナ化されたソフトウェアがランサムウェア攻撃の標的になることが増えており、Kubernetes環境の動的な性質が独自の課題をもたらしています。ランサムウェアの拡散は急速で、イメージレジストリやソフトウェアサプライチェーンの他の部分に感染し、Kubernetesクラスターのすべてのポッドの危険につながる可能性があります。また、攻撃者がKubernetesクラスターを支配することもあり、一度始まった攻撃を止めることは困難です。
このシリーズの最初の投稿で述べたように、Kubernetes環境を攻撃から守るには予防が不可欠です。この攻撃は、実行中のソフトウェアのアプリケーション脆弱性、Kubernetesクラスターの認証情報の盗難、ソフトウェアのサプライチェーンに仕掛けられたマルウェアなどを通じて発生する可能性があります。
これらの潜在的な攻撃ベクトルには、特定のセキュリティソフトウェアと事前に定義されたプロセスを使用することによってのみ対処できるものもあります。
アプリケーションの脆弱性を突いた攻撃を防ぐために、私たちが使えるいくつかの戦略があります。
- ソフトウェアを最新のバグフィックスに保つ。脆弱なソフトウェアがクラスターにデプロイされないようにするには、SUSE Neuvectorでアドミッション・コントロール・ルールを実装することができます。
- SUSE NueVectorは、既知の攻撃がアプリケーションに到達する前にネットワークレベルでプロアクティブにブロックします。他のセキュリティソリューションが重視するネットワークレイヤー3および4のプロトコルだけでなく、アプリケーションプロトコルを含むネットワークレイヤー7も調べるため、このタスクに特に適しています。つまり、DPI(Deep Packet Inspection)技術により、アプリケーション層で行われる攻撃を特定し、悪意のあるネットワークパケットがアプリケーションに到達する前にブロックすることができるのです。
- アプリケーションの特権を制限する。 Seccomp、AppArmor、SELinuxといったKubernetesのセキュリティ機構を利用することで、ランサムウェア攻撃をさらに防ぐことができます。本連載で以前紹介したように、SELinuxとAppArmorは、アプリケーションが特定のファイルにアクセスしたり、特定のプロセスを実行したりするのを防ぐのに効果的です。これらは、SLESやSLEmicroなど、これらの機能が有効なLinuxディストリビューションの上で動作するKubernetesノードでのみ利用可能です。
マルウェアの拡散を阻止するためにゼロトラスト・ポリシーを使用する理由は?
これらの対策は、特に攻撃者がゼロデイを利用してアクセスした場合、不十分なものになる可能性があります。
ゼロデイから保護するためには、ネットワークやシステムレベルでアプリケーションが示す期待される動作から逸脱しようとする試みを観察してブロックできる、行動ベースのゼロトラスト・ポリシーを実装する必要があります。つまり、攻撃者がアプリケーションを制御できるようになったとしても、そのアプリケーションを使ってクラスター内の他のアプリケーションにアクセスすることはできないのです。通常、ほとんどのバックエンドアプリケーションは外部に公開されておらず、セキュリティ保護も弱いのですが、中にはより大きなシステム権限やネットワーク、データアクセスを持つものもあり、これらを制御することは攻撃者にさらなる拡散の機会を与えることになります。
このシナリオでは、既知の攻撃だけでなく、アプリケーションの動作に注目しているため、SUSE NeuVectorのゼロトラスト・セキュリティポリシーを使用することができます。この場合、セキュリティポリシーを定義する必要がありますが、NeuVectorの行動学習機能のおかげで、実行中のアプリケーションごとに簡単に作成することができます。この記事では、NeuVectorの行動学習機能を使ってゼロトラスト・セキュリティポリシーを作成する方法を説明します。
SUSE NeuVectorは、システムやネットワークレベルのゼロトラスト・ポリシーの実装に利用できるだけでなく、DPI技術を使って各ポッドが確立する接続を見ることで、Kubernetes環境内の疑わしい活動を可視化し検出することができます。
クラウドネイティブ環境において、安全なソフトウェアサプライチェーンを持つことの重要性とは?
クラウドネイティブ環境において、ソフトウェアサプライチェーンは重要な要素です。Kubernetesが動作するハードウェアやOSから、エンドアプリケーションで使用される最小のライブラリに至るまで、クラウドネイティブ環境で使用されるすべてのアプリケーションやコンポーネントが安全であることを保証するエンドツーエンドのプロセスのことです。
安全性を確保するためには、ソフトウェアの信頼性を検証する必要があります。例えば、規制対象のサードパーティからの署名に基づき、脆弱性に定期的にパッチを適用し、安全な配信方法を使用し、誰がいつコードを変更できるかを管理し、すべての変更がピアレビューの対象となることを確認します。
SUSE製品の開発および保守のプロセスが、これらの認証の取得に必要な厳格なセキュリティ評価に合格していることを保証する、SLSA4やCommon Criteria EAL4+などの認証がその価値を発揮する場面です。
残念ながら、私たちは常に認証されたソフトウェアで作業することはできません。その場合、SUSE NeuVectorのようなセキュリティプラットフォームやRancherのようなKubernetesクラスターマネージャを使用して、レジストリ上のイメージの脆弱性のスキャン、セキュリティ規制への準拠の検証、インフラのセキュリティベンチマークを実行するなど、手段を選ばなければならないのです。これらのチェックが一過性のものにならないよう、反復可能で自動化できることが肝要です。
なぜ、Kubernetes環境のセキュリティを自動化しなければならないのか?
Kubernetes環境におけるセキュリティの自動化は、環境の安全性、コンプライアンス、最新性を確保し、サプライチェーン内のソフトウェアリソースを安全にパッチを適用し設定することで攻撃対象領域を減らすために必要不可欠です。
クラウドネイティブ環境のセキュリティは静的なものではないため、新しい脆弱性やパッチが毎日登場し、犯罪者は攻撃を自動化して被害者を素早く見つけて攻撃するので、その手法に合わせる必要があります。
自動化は、手作業によるミスをなくし、環境全体で一貫してセキュリティポリシーが適用されるようにするなどの他の利点ももたらします。
また、攻撃されたシステムを元の状態に戻すのにかかる時間を大幅に短縮することもできます。しかし、復元する前にシステムにパッチを適用することが重要であり、そのためには更新プロセスを簡素化し、自動化する必要があります。
これを実現するために、SUSE NeuVectorのようなセキュリティプラットフォームや、RancherのようなKubernetes管理ツールは、自動化を意識して設計されています。Rancherでは、Fleetや独自の外部CI/CDシステムを使用してクラスター間でワークロードを自動的にデプロイおよびアップグレードすることができ、Infrastructure-as-Codeの採用が容易になります。
SUSE NeuVector APIとCRDを使えば、Kubernetesの他のリソースと同じようにセキュリティポリシーをロードできるので、既存のCI/CDプラットフォームを使ってSecurity-as-Codeを非常に簡単に実装することができます。
複数のクラスターがある場合、これらの対策をどのようにスケールさせることができるのでしょうか?
リソースを大量に消費すると、アプリケーションのパフォーマンスに影響を与え、需要の増加に対応できなくなるため、フットプリントが小さく、信頼性の高いソフトウェアが必要です。
先ほど紹介したRancherのセキュリティ機能を活用し、すべてのKubernetesクラスターが適切に設定され、セキュリティが確保されていることを確認することができます。Rancherは、アクセス制御、セキュリティポリシーの実施、脆弱性スキャンを支援することができます。
SUSE NeuVectorを使えば、各クラスターに連携ルールをプッシュし、複数のクラスター間でレジストリスキャンの結果を同期することで、マルチクラスターやマルチクラウドの展開におけるセキュリティ態勢を管理することもできます。
このアプローチにより、複数のクラスターがある場合でも、セキュリティ対策を拡張することができます。また、NeuVectorのアーキテクチャは、サイドカードなどを使用せずに完全に動作するため、アプリケーションのワークロードに合わせて保護を拡張することが容易になります。
まとめ
安全なソフトウェアサプライチェーンを持ち、システムおよびネットワークレベルで行動ベースのゼロトラスト・セキュリティポリシーを実装することで、ランサムウェアなどの悪意のある攻撃や、犯罪者が利用するZero Day脅威から保護できることを確認しています。SUSEの製品は、セキュリティを優先し、スケールで動作するように設計されています。当社のチームは、お客様のビジネスの安定性と回復力を維持するために、セキュリティの分野で常に革新を続けています。
NeuVectorのデモをご希望の方は、お気軽にお問い合わせください。
このシリーズの他の記事については、こちらをご覧ください。
ランサムウェアの攻撃からSAPアプリケーションを保護する方法
Related Articles
7月 11th, 2023
SUSEは選択肢を提供します
1月 03rd, 2023
未来のデジタルファースト・エンタープライズにおけるオープンソース・ソフトウェアの重要性
8月 03rd, 2023
SUSEとIBM: データセキュリティの強化 (テクニカル・リファレンス・ドキュメント・入門ガイド)
2月 27th, 2024