こんにちは、SB C&Sの鈴木です。
5/18に「コンテナイメージスキャンは開発時に!~ シフトレフトでスピードとセキュリティを両立する方法とは?~」と題して、「SB C&S × Palo Alto × JFrog」の3社でウェブセミナーを共同開催しました。
本記事では、弊社SB C&Sから登壇いたしました竹石のパート「シフトレフトを実現するJFrogとPrisma Cloudの素敵な組み合わせ」についてレポートを書かせていただきます。
※各社の製品紹介は以下リンク先をご覧ください。
セミナー情報
登壇者
- SB C&S株式会社 竹石 渡
- JFrog Japan株式会社 三宅 剛史 氏
- Palo Alto Networks株式会社 CTO アジェイ ミスラ 氏
概要
昨今、コンテナの開発初期段階からセキュリティを組み込んで手戻りの発生を防ぎスピードとセキュリティを両立させる『シフトレフト』が注目されています。
本ウェビナーではDevOpsやDevSecOpsプラットフォームを提供する「JFrog」とサイバーセキュリティの雄「Palo Alto Networks」の製品を組み合わせて実現するシフトレフトについて両社製品を連携させたデモを交えてご紹介いたします。
アジェンダ
- シフトレフトを実現するJFrogとPrisma Cloudの素敵な組み合わせ(SB C&S株式会社 竹石 渡)←本記事のレポート対象
- 安全なソフトウェアサプライチェーンの実現(JFrog Japan株式会社 三宅 剛史 氏)
- 近代のCloud Native環境に適するCI/CD Pipelineのあり方(Palo Alto Networks株式会社 CTO アジェイ ミスラ 氏)
- 両社連携デモ(JFrog Japan株式会社 三宅 剛史 氏、Palo Alto Networks株式会社 CTO アジェイ ミスラ 氏)
レポート「シフトレフトを実現するJFrogとPrisma Cloudの素敵な組み合わせ」
DevOps、コンテナおさらい
- DevOpsはアプリケーションを早く開発するための概念。プロセスの変革、新たな技術の導入でアプリをどんどんリリースする。
- アプリケーションの可搬性をあげることができる。本番適用までに開発環境、テスト環境、本番環境などいろんな環境をまたぐが、その時に発生する問題をコンテナで解決することが可能。
コンテナのリスク
- Dockerやコンテナをターゲットにした攻撃が増えてきている。
- 一例として、仮想通貨MONEROを狙った攻撃があった。
- MONEROは匿名性の高い仮想通貨なのだが、MONEROを勝手にマイニングするマルウェアを仕込んだイメージがDockerHubにアップロードされていた。
- このイメージを使うと、サーバーで勝手にリソースを使われてMONEROをマイニングされ、その収益をハッカー側に送られるという動作をするものだった。
- DockerHubで、誰でもpullできるようになっていたのだが、合計で200万回以上取得されていた。
- コンテナは便利だが、セキュリティをセットで考えないといけない。
NIST SP-800 190(コンテナセキュリティベストプラクティス)
- NIST SP-800はシリーズもので、190がコンテナセキュリティついて書かれているもの。
- NIST SP-800 190はコンテナセキュリティを考える際のヒントになる。
- 非常に長文だが、一枚にまとめたものが上記の表。
- 縦軸:NISTがコンテナセキュリティを考えるときに重要なポイントとして挙げている項目。
- 横軸:縦軸に対するリスクと対策。
- 表の「リスクと対策」に書かれている内容を説明。
- イメージ:脆弱性などを検出するためにコンテナイメージをスキャンする。
- レジストリ:運用面に関する内容が記載されている。
- オーケストレーター:コンテナに限らずセキュリティの考え方が記載されている。
- コンテナ:開発者が勝手にコンテナを立てることもあるので、ランタイム検知などをする。「イメージスキャンをして問題なければデプロイする」「リスクの高い脆弱性があったらデプロイさせない」などの制御が必要。
- ホストOS:通常のホストOSだと無駄なものが多く、攻撃を受ける範囲が広くなってしまうので、コンテナ特化のOSを利用する。
NIST SP-800 190の一部切り出し
- NIST SP-800 190の一部を切り出し、イメージスキャン部分について深堀していく。
- 黄色い部分がポイント。
- セキュリティの責任の多くが開発者に移る。
- ビルドプロセスの最初から、組織が使用しているレジストリ、ランタイムに至るまでの、イメージのライフサイクル全体の統合。
- 品質ゲートを作成する:品質ゲートとは、「イメージスキャンしてからデプロイすること」を指している。
- バッチや構成設定を含むすべての脆弱性管理は、通常、新しいイメージのバージョンを構築する際に開発者が処理する。
- コンテナの場合、運用チームではなく開発者がアプリをイメージのセキュリティに大きな責任を負う。
- 通常、セキュリティ部門やインフラ部門がセキュリティを考えるが、特にコンテナにおいては開発者を巻き込んで開発時にセキュリティを行う必要がある。
シフトレフトの価値
- シフトレフトとは「開発時にセキュリティを考える」ということ。
- 語源は、「開発の工程は左から右へ移っていく。より左側、上流側にセキュリティをシフトしよう」というもの。
- 以下で表の説明。
- 横軸:開発のフェーズ
- 縦軸:修正コスト
- 右へ行くほど修正コストが高くなっていて、リリース後の修正はコーディング時の6倍になる。
- シフトレフトの価値
- 修正コストを低くする
- リリースのスピードアップ
機能に落とし込むと
- ここからコンテナのライフサイクル全体にかかわるセキュリティについて説明。
- 上図の各機能については元にコンテナのライフサイクル全体にかかわるセキュリティを説明。
- SAST:Static Application Security Testing
- SCA:Software Composition Analysis
- IaCスキャン:Infrastructure as Code。インフラをコード化して管理して開発のプラクティスを適用する。そのスキャンをする。未然に脆弱なインフラのデプロイを防ぐ。
- Image Scan:ビルド時に実施し、脆弱性がないか、マルウェアが含まれてないか、設定に不備がないかなどをチェック。
- デプロイ制御:ここまでの結果を元に、例えば「CVSSが8以上であればデプロイさせない」「マルウェアが含まれていればデプロイさせない」などでシステマチックに管理する。
- デプロイした後:ランタイムの保護、WebApp&API保護、Microsegmentation、ホストの保護が求められる。
- 開発段階でイメージスキャンを行うことで脆弱な環境がデプロイされることを未然に防ぐ。
- 万が一デプロイした環境に攻撃があっても、Runtime Protectionなどで保護することができる。
- シフトレフトすることでスピードとセキュリティを両立させる。
JFrog、Prisma Cloudカバレッジ
- 上図の緑がJFrog、水色がPrisma Cloudで提供している機能。
- JFrogはDevOpsのプラットフォーム製品となっているので、「CIの機能」「コンテナレジストリの機能」「バイナリ管理機能」などもある。
SB C&Sの取り扱い
- Devopsのキーワードでソリューションを提案している。
- JFrog、Prisma Cloudともに一次店で取り扱っている。
まとめ
- コンテナセキュリティは開発ライフサイクルの一部ではなく、全体を通して実施しないと意味がない。
- JFrogとPrisma Cloudを組み合わせることで、シフトレフトを取り入れ、セキュアな開発ライフサイクルを実現することができる。
今後、JFrogやPrisma Cloudの導入を検討されることがございましたら、お気軽にゼロトラストオンライン相談フォームまでお問い合わせくださいませ。
ゼロトラストオンライン相談フォーム
お問い合わせ先:SBCASGRP-cloudsec@g.softbank.co.jp
本セミナーの動画をご覧になられたい場合は、以下の「続きをご覧になる場合は下記をご記入ください。」にて情報をご入力ください。