クラウドサービスの普及により、近年「コンテナ環境」に注目が集まっています。コンテナはリソースの減少や効率化に効果がある一方で、対処すべきセキュリティリスクも存在します。
この記事では、コンテナ環境のセキュリティリスクと対策のポイントについて、ご紹介します。
目次 |
仮想化で注目されるコンテナ技術
「コンテナ」とは、アプリを動かすために必要なOSやライブラリなどを、1つにまとめたものです。コンテナと聞くと、港などで船に積まれているイメージを持っている人が多いと思いますが、仮想化技術としてのコンテナもイメージは同じです。1つの箱の中に複数のものを詰めておくことで、簡単に必要な動作を行えます。
コンテナは、クラウドサービスには欠かせない技術です。新型コロナウイルス感染症(COVID-19)の拡大でクラウドサービスが注目されている中、コンテナの利便性・可搬性は、より高度で便利なサービスの提供につながると期待されています。
コンテナ環境と仮想環境の違い
コンテナ環境と似たものに「仮想環境」があります。どちらも仮想化の技術ですが、これらの大きな違いは「必要なリソース」です。
仮想環境の場合、膨大なリソースが必要でした。なぜなら、環境やアプリごとに必要なOS、ライブラリなどを構築しなければならないためです。例えば、Windows、Linux、MacOSでの動作確認を行いたい場合それぞれの環境をひとつずつ作らなければなりません。
一方、コンテナ環境の場合は、コンテナではOSを共通で利用できるため、アプリごとに必要な環境を構築する手間を大幅に削減することが出来ます。加えて、必要なアプリやライブラリも1つの箱にまとめて入っています。つまり、仮想環境よりも場所を取らず、手間も少ないということです。これによって少ないリソースで稼働でき、起動も速くなります。特にクラウド活用が拡大する現代においては、新しい環境を素早く利用したいという需要が増えています。
ただし、複数のOSを使ってさまざまな環境を細かくカスタマイズして利用したいなら、仮想環境の方が向いています。それぞれにメリットとデメリットがあることを理解して、目的に応じた使い分けをしましょう。
セキュリティリスク
コンテナ環境には多くのメリットがある一方で、デメリットもあります。それが「セキュリティリスク」です。
コンテナはOSが1つにまとまっており、カーネル(OSの中核)も共通しています。万一コンテナが攻撃を受ければ、すべての環境がダメージを受けます。同じ箱に入っているために、その箱が載せられた船が沈没すれば、箱に入っていたすべてがダメになってしまうのです。
パロアルトネットワークス株式会社の調査によると、2019年上半期の時点で「4万以上のコンテナがデフォルトの状態であり、セキュアではない」とされています。こうした脆弱性への対策は、コンテナ環境を扱う上で必須と言えるでしょう。
コンテナのセキュリティ対策ポイント
コンテナをセキュリティリスクから守るためには
の5つについて対策が必要です。 ここからは、上記それぞれのセキュリティ対策について、ご紹介します。 |
コンテナイメージ
コンテナを利用する場合、自社で作成するのではなく、インターネット上で公開されている「コンテナイメージ」をダウンロード、カスタマイズして利用するケースも少なくありません。このような場合には、セキュリティスキャンをCI/CDパイプラインに組み込むなどの方法を用い、稼働前にチェックを行いましょう。
なぜなら、第三者が作成したコンテナイメージには、マルウェアが仕込まれている可能性があるためです。マルウェアに感染すると、情報漏えいやデータの喪失につながり、場合によっては金銭的損害を受けたり、信用を失ったりすることも考えられます。
コンテナイメージを利用する際には、事前に信頼性や脆弱性をよく確認しましょう。
レジストリ
レジストリは、コンテナイメージを保管する場所です。ここを適切に保護するには、アクセス権の設定が重要となります。アクセスをする際のパスワードを判別しにくいものにする、クラウドサービスの場合には多要素認証機能を備えたものを選ぶなど、第三者が侵入できないようにしましょう。
また脆弱性が発見されている古いコンテナイメージがレジストリ内に残っていると、悪意のあるユーザーがそこを攻撃してくる場合もあります。一定期間ごとにレジストリ内の整理を行ってリスクを軽減しましょう。
オーケストレータ
オーケストレータは、膨大で複雑なコンテナシステムの動作や調整を自動化するツールです。非常に便利なツールですが、それだけに悪意のあるユーザーに攻撃されるとシステムを一気に乗っ取られてしまう可能性があります。
こうした事態を防ぐため、オーケストレータでもレジストリと同じように強固な認証機能が必要です。管理者を制限し、外部からアクセスしにくい体制を整えましょう。
また、ノード間通信に高いセキュリティを施すことも重要です。ノードの認証鍵は共有しない、ノード間の通信は暗号化するなど、徹底したセキュリティ対策を行いましょう。
【関連事例】横河レンタ・リース株式会社 様 クラウド設定監査サービスで情報漏えいリスクの低減を実現
コンテナ
コンテナの場合も、重要なのは脆弱性への対処とアクセス権限の管理です。OSやアプリは常に最新のものにアップデートし、攻撃する隙を与えないようにしましょう。また常にコンテナの監視を行い、異常があればそれに適した対応を行うことが重要です。加えてセキュリティを多重構造にすることで、1つ目のセキュリティを潜り抜けても、2つ目で防ぐことができます。
さらに、コンテナへのアクセスは厳しい制限をかけて管理しましょう。もしコンテナにマルウェアが仕込まれた場合、そこから他のコンテナに侵入されることもあります。コンテナへのアクセスにポリシーを設けたり、ネットワークを監視したりすると安心です。
ホストOS
コンテナでは、コンテナエンジンを通してホストOSを利用して仮想環境を構築しますが、ホストOSの脆弱性を突いた攻撃が行われ、ホストOS上のコンテナやアプリまで影響を受けることも十分考えられます。OSの脆弱性対策(最新バージョンへのアップデート、セキュリティソフトの導入など)を忘れずに行いましょう。
監査からセキュリティリスクの検知・報告まで丸ごとおまかせ
ここまでコンテナ環境のセキュリティリスクと対策についてご紹介しましたが、これらをすべて自社のみで行うのは膨大な時間とコストがかかります。必要なセキュリティ対策を行うのなら、外部サービスに頼るのが良いでしょう。
JBCCの「クラウド設定監査サービス」では、お客様のパブリッククラウドを監視し、設定ミスや漏れを定期的にお知らせし 、セキュリティリスクを検知・修復できます。
まとめ
メールなどを通じて送られてくるランサムウェアは、企業にとって大きな脅威です。適切なセキュリティ対策はシステムの安全度を高め、ランサムウェア感染のリスクを軽減します。
そのためには、まず自社のセキュリティにどのような問題があるのかを知らなければなりません。JBCCでは、社内のセキュリティリスクを可視化するサービスを提供し、セキュリティの問題点を明らかにします。ランサムウェア対策にお悩みの方は、ぜひご相談ください。
クラウド設定監査サービス
「クラウド設定監査サービス」は、マルチクラウド環境(AWS 、Azure 、GCP)を対象とした、IaaS環境における設定ミスや漏れをコンプライアンス基準に基づき監査・診断し、定期レポートにて報告するサービスです。また、攻撃の予兆やデータの外部公開状態を検知・報告しセキュリティリスクを低減します。 |
JBCC株式会社JBCC株式会社は、企業のデジタル・トランスフォーメーション(DX)を支援する総合ITサービス企業です。クラウドサービスを中心にシステムの設計から構築、運用までを一貫して手掛けており、クラウド 2,150社、超高速開発による基幹システム構築 440社、セキュリティ 1,100社の実績があります。 |