権限を正しく設定する
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.
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社MatrixFlow] 「物流リソース最適化」ガイド:人員・配車・傭車を出庫依頼の確定前に決めきる -
製品資料
[株式会社キーエンス] なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは -
製品資料
[株式会社セールスフォース・ジャパン] 「CRMは設計と無関係」は本当か? PLMとの融合で実現する高速開発 -
事例
[日本ヒューレット・パッカード合同会社] AIエージェントの時代にどう備える? 「新たな働き手」を支える3要素とは -
製品資料
[日本ヒューレット・パッカード合同会社] “横並びの自動化”から脱却、AI活用で生産性と競争力を高める秘訣
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
2
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
3
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
4
情シスの約8割が転職や退職を意識 調査で分かった“辞めたくなる最大の理由”
-
5
「朝8時にバッチが終わらない」データ爆発の危機をJPX総研はどう乗り越えたか
-
6
「IBM iはDXのボトルネック」は誤解 意外と知らない今風モダナイズの効果
-
7
「Wi-Fi 7」経由でWindowsが乗っ取られる? 最高権限奪取の恐怖
-
8
AIの導入効果はどう測る? DMM.comのエンジニア組織に学ぶ効果検証のノウハウ
-
9
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
10
「中堅・中小企業のネットワーク・セキュリティ運用実態」に関するアンケート
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
3
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
4
プログラミング不要で誰でも実現できる、ネットワーク運用管理の自動化とは
-
5
財務部門がAIを最大限に活用する方法 無駄のない戦略的リーダーシップへの道
-
6
LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント
-
7
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
8
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
-
9
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
10
“あのファイル転送”で暗躍するノーウェアランサム
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー