権限を正しく設定する
IT専門家が語るコンテナセキュリティのヒントと注意点
コンテナのセキュリティを確保するためには、コンテナ、ホスト、Kubernetes、アプリケーションの各構成を詳しく調べる必要がある。
優秀なIT部門がコンテナオーケストレーションを導入した。そこで問題になるのが、複数のソフトウェアが混在する大規模インフラの中で完全なセキュリティをどのように確保するかということだ。
まず着手しなければならないのは、セキュリティに抜け道ができる可能性をなくすために、「Docker」と「Kubernetes」両方のデフォルト設定を変更することだ。例えば配布されているコンテナイメージのデフォルトコンポーネントとして、「docker.sock」という名前が付いたソケットを考える。このソケットが、用途を管理するためのセキュリティツールなしでマウントされたとする。このソケットに脆弱(ぜいじゃく)性があると、攻撃者はこれを使用してホストOSにアクセスし、その後バックエンドデータベースにアクセスしてデータを持ち出してしまう恐れがある。同様に、KubernetesのAPIのデフォルト設定では、コンテナから悪意のあるポッドを通じてホストOSにアクセスされる恐れがある。
2018年9月前半に米ボストンで開催されたセキュリティカンファレンス「DevSecCon」のプレゼンテーションで、ジェイソン・パターソン氏は次のように語った。同氏は、オンラインバンキングと小売業者向けに金融取引システムを製作する企業NCRで、アプリケーションセキュリティアーキテクトを務める。「コンテナには他の仮想マシン(VM)と同じ問題もある。コンテナは、社内ネットワーク経由で相互に通信する。つまり、1つの構成ミスが環境内のほぼ全てのコンテナを危険にさらす恐れがある」
重要なのはコンテナのセキュリティ構成設定
NCRは、Red Hatのコンテナ管理ツール「Red Hat OpenShift」を利用している。OpenShiftはKubernetesのAPIの設定に標準で制約を設けている。「だが認証情報を定義するためのセキュリティコンテキストについては、ユーザー自身が制約を設定しなければならない」とパターソン氏は言う。
一般に、ユーザーのアクセス許可と各コンテナの機能には可能な限り厳しい制約を設け、実行を承認された呼び出しと操作のみをホワイトリストに入れるようにコンテナイメージを構成するのが最適だ。しかし「それでもまだ最高の方法とはいえない」と同氏は付け加える。
「コンテナ外部、あるいはコンテナを実行しているホストOSで、コンテナの管理権限を持つユーザー(ルートユーザー)が実行可能なことを制限する、という選択肢もある」――DevSecConの別のプレゼンテーションでこう話したのは、PaaS(Platform as a Service)製品を展開し、2011年にSalesforceに買収されたHerokuでシニアセキュリティエンジニアを務めるエティエンヌ・スタルマンズ氏だ。そのためには、コンテナの管理者がLinuxカーネル内でアプリケーションをサンドボックス化するメカニズム「seccomp」の設定を調整して、アプリケーションのアクセス許可や権限を設定する必要がある。
「依然としてルートユーザーには権限があるが、コンテナ外での権限はなくなる。つまり、コンテナを利用するユーザーの全権限を削除してから、必要な権限だけを付け直すのが最適だ」(スタルマンズ氏)
特に重要なアプリケーションに対しては、ハイパーバイザーによる分離が必要だ。分離すれば、攻撃者がホストOSにアクセスする危険性はなくなる。Intel、Google、Microsoftなどのベンダーは、コンテナ分離用に調整を施したハイパーバイザーを提供している。
従業員管理とベンダー管理ソフトウェアを販売するBeelineは、「Smith」というOracle製のコンテナ構築ツールを使用して不必要なOS機能を取り除いている。Beelineでエンタープライズアーキテクトを務めるジェイソン・ルーニー氏は「このツールによって当社のDockerイメージのサイズは65MBから800KB~2MB程度にまで減らすことができた」と話す。
ホストOSよりもコンテナのセキュリティに注意
コンテナセキュリティに関する著名な手法の大半は、攻撃者が侵害したコンテナインスタンスから、ホストOSやその他のバックエンドシステムにアクセスしないよう抑制するというものだ。一方でAPIへの不正アクセスを防ぐことも重要だ。クラウドサービス「Amazon Web Services」(AWS)ベースのシステムへの攻撃で、ホストOSではなく、脆弱性のあるAPIを標的としていたものが注目を集めていたためだ。DevSecConのプレゼンテーションでこう語ったのは、ITセキュリティソフトウェアベンダーThreat Stackで、最高セキュリティ責任者(CSO)を務めるサム・ビスビー氏だ。
ビスビー氏によると、攻撃者は必ずしも大量のデータを探しているわけではないという。「セキュリティポリシーは、重要なデータだけではなく、インフラ全体をカバーしなければならない」と同氏は言う。
Kubernetesのバージョン1.8では、従来の属性ベースのアクセス制御から、ロールベースのアクセス制御(RBAC)に切り替えることで、APIのセキュリティを強化している。Kubernetesの導入企業、あるいはベンダーの大半が、RBACのKubernetesのAPIへのアクセスをデフォルトで実装するようになってきている。一方でユーザーは、信頼できないポッドがKubernetesのAPIと通信するのを防ぐために、構成設定を細かく調整する必要がある。
「(Kubernetesコミュニティーでは)RBACをデフォルト設定にしようという議論がある。『Calico』『Istio』『Weave』などのコンテナネットワーキングユーティリティーを通じて設定することも可能だ。しかしこれは新しい標準設定が決まるまで、ファイアウォールによる防御という原始的な手法が必要なことを意味する」(ビスビー氏)
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「Excel至上主義」の終わらせ方 丸2日の手作業地獄から情シスと現場を救うには
-
2
取手市がVDIと決別した理由 更改費用「4倍超」を約1.7倍に圧縮
-
3
「Microsoft 365のセキュリティ運用」に関するアンケート
-
4
急増する「AIはこう言ってる」マン 判断を狂わせる「AI忖度」を防ぐには?
-
5
221人調査で分かった「情シス最大のストレス」は?
-
6
「Salesforceのテスト自動化ツール」に関するアンケート
-
7
「データストレージの活用方法」に関するアンケート
-
8
「AI時代の統合基盤・エンタープライズAI管理」に関するアンケート
-
9
AIで人を減らした企業がもう心変わり 「AIブーメラン現象」の実態
-
10
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
ホワイトペーパーランキング PR
-
1
年収2000万「クラウドセキュリティのプロ」になれる資格とは
-
2
セキュリティソフトをすり抜ける標的型攻撃メール、不審メールの見破り方とは?
-
3
Windows Updateの通信集中で回線が逼迫、ネットワーク刷新事例に学ぶ解決策
-
4
財務を戦略的組織へ進化させるAI活用術、4つの主要な障壁と解消方法
-
5
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
6
“あのファイル転送”で暗躍するノーウェアランサム
-
7
標的型攻撃メールを見破るには? サンプル文面を例に傾向を解説
-
8
商用利用の安全性を確保し大量のコンテンツを高速で生成する、AI活用の秘訣
-
9
マンガで解説、1日で生成AI環境を構築できるワークショップの中身とは?
-
10
Dark AIが台頭する時代の新発想、「より高度なAIで対抗する」具体的方法とは?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー