Skip to main content

開発者ファーストのコンテナセキュリティを定義する

Container security

2021年3月16日

0 分で読めます

シフトレフトはもう実践していますか?今、大きなトレンドですよね。セキュリティの責任を、中央のITチームから開発者へ移す動きを示す言葉ですが、実際はそう簡単ではありません。セキュリティ専門家向けのツールを単にサプライチェーンの早い段階で実行しても、開発者にとって有益な情報にはなりません。組織が責任を移せるよう支援することこそ、Snykが力を注いでいる取り組みです。だからこそ、コンテナ向けの修正PRを自動化できるようになったことを本日発表できるのをうれしく思います。これは、最近発表したDockerfileを一級市民として扱う取り組みに続くものです。

脆弱性の件数と深刻度別に、現在のベースイメージと代替イメージを比較するダッシュボード。修正用プルリクエストを作成するボタンも表示。

2019年にSnyk Containerを初めてリリースして以来、開発者がより優れた安全なコンテナを構築できるよう支援することを、私たちは目標にしてきました。これまでにSnykのお客様やユーザーがコンテナから5.8 百万件の脆弱性を排除できたことを誇りに思います。新たにDockerfileと修正プルリクエストの機能を追加して以来、そのペースはさらに加速しています。

開発者にランタイムコンテナセキュリティが利用されない理由

この分野についてお客様やSnyk Containerのユーザーと話す中でわかったのは、安全なコンテナを構築するために「何をすべきか」は多くの人が理解しているということです。セキュリティチームにはポリシーがあり、開発者向けの「コンテナのベストプラクティス10選」のようなリストがインターネット上に数多く公開されていて、非常に人気があります。(Snykのコンテナのベストプラクティス10選も、これまでで最も人気のあるブログ記事の一つです!)しかし、ポリシーを実践に移す段階になると、世界のセキュリティ意思決定者のうち、ポリシーを支えるツールが十分にあると答えたのはわずか45%です。これはForresterのレポート「コンテナセキュリティのベストプラクティス」によるものです。ですから、軽量イメージの使用といったベストプラクティスを組織が徹底できていないのも、おそらく驚くことではありません。

赤から紫への区分が45%を占め、残りが白で表示されたドーナツグラフ

ここからわかるのは、既存のツールで単に「シフトレフト」すればよいという考え方には問題があるということです。Dockerの誕生から間もなく8年、コンテナランタイムセキュリティツールもそのうち約5年間にわたって提供されてきました。それでも、ESGの調査によると、既存のセキュリティツールを使った対策が徹底されない理由として挙げられた上位4つの課題は、次のとおりです。

  • 開発者が投資済みのツールを十分に活用できていない

  • 開発者に、特定された問題を緩和するための知識が不足している

  • 開発に摩擦が生じ、開発サイクルが遅くなる

  • アプリケーションセキュリティベンダーの各種ツール間で、連携が難しい、または連携できない

これはランタイムセキュリティを批判するものではありません。ランタイムセキュリティは絶対に必要です。ほぼすべてのアプリケーションのセキュリティを確保するために、多くの企業はコードセキュリティツールと運用セキュリティツールの両方に投資してきました。それぞれ想定するユーザーは異なります。コンテナが興味深いのは、両方の側面を一つの便利なパッケージにまとめている点です。それでも、両方のユーザーが存在します。

Snykがコンテナのセキュリティを実現し、真の「シフトレフト」を可能にする方法

Snyk Containerは、開発者の日々の思考やビルドプロセスにセキュリティを組み込むために、ゼロから開発された唯一のソリューションです。セキュリティツールで一般的だった、脆弱性の長い一覧をただ提示するだけの方法には問題があると考えました。そこでSnyk Containerは、ベースイメージの推奨から始め、コンテナの問題を修正するための具体的なガイダンスを開発者に提供してきました。

Snyk CLIの出力を表示したスタイリッシュなターミナルウィンドウ。コンテナの脆弱性を特定し、ベースイメージのアップグレードを推奨しています。

このガイダンスにより、開発者は最新かつ軽量なベースイメージを選べるため、脆弱性の「攻撃対象領域」を縮小できます。Dockerfileのスキャンと修正PRにより、こうした推奨をさらに自動化できます。さらに、Snyk Containerはコンテナの実行方法を問いません。Snyk Containerを利用するために、サイドカーやエージェントを導入したり、Kubernetesで特別な権限を持つPodを実行したりする必要はありません。

コンテナ利用の拡大に合わせてセキュリティを拡張する

もちろん、Snyk Containerは開発者の作業環境で利用できます。開発者はCLIを使って、デスクトップ上で直接利用できます。また、任意のソースコード管理ツール(GitHubコードスキャンを含む)、あらゆるCI/CDツール、コンテナレジストリとの連携に加え、Kubernetesとも連携し、クラスターへのデプロイ時や更新時にワークロードをスキャンできます。

コンテナ化されたワークロードが増えるにつれて、ベースイメージ以外の問題についても、どれを優先して修正すべきか開発者が判断できるよう支援することがますます重要になります。コードがコミットされるとすぐにコンテナが作成され、同じように迅速にデプロイできます。だからこそ、最初から安全なコンテナにすることが目標です。Snykの優先順位付け機能は、深刻度や悪用の成熟度、コンテナが現在稼働中かどうかといった脆弱性の詳細を考慮し、重要な問題に開発者の注意を向けます。さらに、問題の絞り込みに使えるフィルターにより、何をどのように修正するかを簡単に判断できます。

重大度の高い問題と、悪用可能性やコンテナのリスク要因を示すスコアの説明を表示した、脆弱性優先順位付けダッシュボード

Snyk Containerのお客様がクラウドネイティブアプリケーションのセキュリティをどのように実現しているかをご覧ください

Red Venturesは、コンテナセキュリティを向上させるには、開発者にとって摩擦のない体験を実現する必要があると考えていました。そこでSnykをツールに統合し、対応可能なセキュリティ上の問題を開発者に提示して、より効率的な修正を促しています。開発者ファーストのセキュリティツールであるSnykは、同社のエンジニアリングワークフローに自然に溶け込んでいます。

Lunarが求めていたのは、すぐに使い始められ、特別なトレーニングや開発者への導入を促すための別のWebアプリケーションが不要なソリューションでした。パイプラインにSnykを導入したことで、チームは全体にわたる脆弱性をより明確に把握できるようになりました。これにより、忙しいチームでも全体的な懸念事項を把握し、その時点で最も緊急性の高い問題に対処できます。

開発者ファーストのコンテナセキュリティ

Snykは、コンテナイメージとKubernetesワークロードの脆弱性を検出し、自動的に修正します。

続きを読む

feature customer snowflake
Article

開発初期からセキュリティを確保:Snowflake Cortex Code向けSnyk Studioインテグレーションを発表

Snyk StudioがSnowflake Cortex Codeと連携し、開発中にAI生成コード、依存関係、コンテナの脆弱性をスキャンします。

blog feature pypi spoof
Article

オープンソースのメンテナーに、Snyk AI Security Platformをすべて無料で提供

オープンソースのメンテナーは、実際の脆弱性レポートに追われ、優先順位付けや修正、修正版のリリースを迅速に進めるための支援を必要としています。SnykのSecure Developer Programでは、条件を満たすプロジェクトにSnyk AI Security Platformを無料で提供します。

feature insights announcement
Blog

Node-gypサプライチェーン侵害:binding.gypに潜む自己増殖型npmワーム

新たなnpmワームがbinding.gypを悪用し、インストール時にnode-gypを起動。ライフサイクルスクリプトを使わずに悪意あるパッケージからコードを実行します。認証情報を窃取し、GitHub上に潜伏し、メンテナー間で自己増殖します。