SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Developers Summit 2023 セッションレポート(AD)

オンプレミスの当たり前が通用しない! 設計時から気をつけたい、コンテナ環境のセキュリティ対策

【9-E-5】クラウドネイティブのセキュリティ所在や対応を考える ~コンテナ環境のマルウェア対策を例に~

  • このエントリーをはてなブックマークに追加

コンテナデプロイ前に実施する対策5つ

 では実際にどんな対策ができるだろうか。コンテナデプロイ前に実施するマルウェア対策の代表例を5つ紹介しよう。

コンテナイメージに対するスキャン

 コンテナセキュリティで代表的かつ欠かせないものとなる。コンテナイメージに脆弱性やマルウェアが潜んでいないかスキャンする。セキュリティベンダー製品の利用、またはレジストリサービスに組み込まれている機能を利用する。

 なおコンテナイメージにマルウェアが混入する時とは、先述した通り、公開されているイメージが発端になるケースが多い。こういう場合だと不特定多数を狙うばらまき型が考えられる。逆に特定の企業を標的にするなら外部から脆弱性をついた攻撃が起点となり、成功すれば徐々に攻撃が進行していく。

 あるいは何らかの形で開発環境やビルド環境が侵害されてマルウェアごとパッケージングしてしまうケースであれば、コンテナイメージのスキャンだけではなく、脆弱性をつぶしておくことも有効な対策となる。

 野村氏は「コンテナイメージのスキャンで大切なことは、マルウェアや脆弱性を検知した時の対応方針やフローを事前に決めておくことが必要です。常套手段としてはコンテナイメージを新しく更新し、修正パッチが適用されたイメージを利用します。しかしもし修正パッチが公開されていなければどうするか。代替製品に切り替える、または脆弱性のリスクを許容するなどの判断が必要となります」と説明する。

脆弱性を作り込まないようにする

 脆弱性はあらゆる攻撃の起点となりうるため、脆弱性が生じる余地をできるだけつぶしておくことも有効となる。ミドルウェア(Kubernetes)やコンテナ内アプリケーションや各種コンポーネントは最新バージョンにしておく。

 コンテナやオーケストレーターを操作するAPIが起点になる場合もあるので、APIやメンテナンス用のポートの公開範囲は必要最小限に絞っておく。ユーザーアカウントの権限やアプリ実行ユーザーの範囲も最小限に。またWebアプリは外部との接点となるため、アプリ自体のコーディングや設定をセキュアにしておくことも重要だ。

Read Onlyモードの活用

 コンテナのファイルシステムをRead Only(読み取り専用)で動作させる。これならマルウェアの配置やファイルの書き換えを制限できる。この対策だと、コンテナ稼働後にコンテナに混入してくるマルウェアにも有効な対策となるため、とても有効だ。

 ただしコンテナで稼働させるシステムが読み取り専用に耐えうるものでなくてはならない。リフト&シフトでは難しいが、システムの設計段階から読み取り専用での運用を想定しておく必要がある。またファイルを使うことのないファイルレスマルウェアには効果的ではないことも忘れてはならない。

開発・ビルド環境をセキュアにする

 繰り返しになるが、開発環境やビルド環境が侵害されてマルウェアが混入してしまうケースがある。そこで開発に使う端末やビルド環境サーバーにアクセスするサービスアカウントの管理と運用をセキュアにしておく必要がある。またコードのリポジトリやコンテナイメージのレジストリの認証情報も適切に運用することで、侵入や侵害を防ぐことにつながる。

適切なコンテナイメージタグ運用

 コンテナではタグをつけることが可能だが、これを狙う攻撃もあるので注意が必要だ。野村氏は「デフォルトで付与される“Latest”タグを安易に使うことは推奨されていません。最新版を取ってくるので便利ですが、別のコンテナイメージに付け替えられることもあります。悪意ある第三者にマルウェア入りのコンテナイメージに“Latest”タグがつけられ、誤って拾ってしまうケースも想定されます」とくぎを刺す。

 そのためタグに頼らないことや、タグの付け替えができないような仕組みにしておく、取得したいコンテナイメージを一意に特定する仕組みにするなどの対策が有効となる。野村氏は「正規のレジストリから正規のイメージを確実に取得、利用できるような仕組みをつくることが重要です」と強調する。

次のページ
コンテナデプロイ後の対策4つ

関連リンク

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
Developers Summit 2023 セッションレポート連載記事一覧

もっと読む

この記事の著者

加山 恵美(カヤマ エミ)

フリーランスライター。茨城大学理学部卒。金融機関のシステム子会社でシステムエンジニアを経験した後にIT系のライターとして独立。エンジニア視点で記事を提供していきたい。EnterpriseZine/DB Onlineの取材・記事や、EnterpriseZine/Security Onlineキュレーターも担当しています。Webサイト:http://emiekayama.net

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

提供:トレンドマイクロ株式会社

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/17566 2023/04/26 12:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング