Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
コンテナサプライチェーンセキュリティ
Search
Kyohei Mizumoto
February 21, 2025
Technology
570
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
コンテナサプライチェーンセキュリティ
イベント登壇資料です。2025/02/21 #CNCJ
https://cncj-security.connpass.com/event/341812/
Kyohei Mizumoto
February 21, 2025
More Decks by Kyohei Mizumoto
See All by Kyohei Mizumoto
ソフトウェアサプライチェーンの構造的リスクとコンテナ環境の保護
kyohmizu
5
1.3k
最新の脅威動向から考える、コンテナサプライチェーンのリスクと対策
kyohmizu
1
1.1k
コンテナセキュリティの最新事情 ~ 2026年版 ~
kyohmizu
9
4.4k
Black Hat USA 2025 Recap ~ クラウドセキュリティ編 ~
kyohmizu
0
1k
CTFのためのKubernetes入門
kyohmizu
3
1.3k
クラウドネイティブ環境の脅威モデリング
kyohmizu
3
860
サイバーセキュリティの最新動向:脅威と対策
kyohmizu
1
480
コンテナセキュリティの基本と脅威への対策
kyohmizu
4
2.4k
安全な Kubernetes 環境を目指して
kyohmizu
4
1.4k
Other Decks in Technology
See All in Technology
SDDの運用にめげずに向き合った話
sansantech
PRO
1
130
AIに攻撃される前に、AIに攻撃させる
tsuchikazu
0
150
LocalStack を使ったサーバーレスアプリケーション開発 / Serverless Development with LocalStack
kakakakakku
0
260
Kernel testing frameworks
ennael
PRO
0
110
Execution in the Kingdom of Agents: Reflections on Abstraction and Complexity
bcantrill
0
870
Incremental HTTP
kazuho
5
2.1k
More Freedom on the Same Shared GPU Cluster: A Small Team’s Experience with vCluster
nttcom
0
140
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
17
120k
DevelopersIO 2026 知識の地図を描く ─ オントロジーとは何か?
ishikawa_satoru
1
110
IR Today: Theory, Practice, and Agents
dtunkelang
0
350
AI駆動開発、viviONの1年 ── うまくいったこと・いかなかったこと
vivion
0
260
「Docker Desktop不要の時代」は 来たのか?
ueponx
0
110
Featured
See All Featured
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
550
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Optimising Largest Contentful Paint
csswizardry
37
4k
Making Projects Easy
brettharned
120
6.8k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
2
400
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Testing 201, or: Great Expectations
jmmastey
46
8.3k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
68
58k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
Transcript
コンテナサプライチェーンセ キュリティ @kyohmizu CNCJ: ソフトウェアサプライチェーンセキュリティミートアップ
whoami Security Engineer at 3-shake inc. • Container/Kubernetes Security •
AWS/Google Cloud Security • Security Operations & Technical Support for Blue Team • Cloud Native Security Assessment Others: • 3-shake SRE Tech Talk イベント運営 • 「コンテナセキュリティ」書籍監訳 Kyohei Mizumoto
本セッションについて • コンテナシステムを前提とした、ソフトウェアサプライチェーンのセキュリティを取り扱います ◦ コンテナに関連するすべてのアーティファクト(アプリを含む)が対象です ◦ アプリ開発者、インフラ担当者向けの内容となります • ソフトウェアサプライチェーンの中でも、不正なコードを持ち込まないための考え方・対策に焦 点を当てます
◦ CI/CD基盤のセキュリティ強化、承認プロセスや権限管理などは対象外とします • 全体感をお話しする都合上、コンテナ要素が薄くなってしまいましたがご了承ください
Agenda 01 コンテナサプライチェーンセキュリティ ・ソフトウェアサプライチェーンとコンテナ ・各種セキュリティフレームワーク 02 コンテナサプライチェーンの脅威 ・脅威の事例紹介 03 具体的なセキュリティ対策
・対策方法とツールの紹介
コンテナサプライチェーンセキュリティ 01
ソフトウェアサプライチェーン(SSC)とは ソフトウェアの開発と提供に関わるすべてのコード、人、システム、プロセス • 作成するコードとその依存関係 • ソフトウェアの開発、ビルド、パッケージ化、インストール、実行に使用する内部および外部ソフ トウェア • システムアクセス、テスト、レビュー、監視とフィードバック、コミュニケーション、承認に関するプ ロセスとポリシー
• ソフトウェアとその依存関係の開発、ビルド、保管、実行を担うシステム https://cloud.google.com/software-supply-chain-security/docs/overview
ソフトウェアサプライチェーン(図) https://cloud.google.com/software-supply-chain-security/docs/attack-vectors
コンテナサプライチェーンのアーティファクト アーティファクト:データの集合、成果物 • アプリケーションのソースコード • アプリケーションの依存関係(言語のフレームワークやライブラリ) • アプリケーションバイナリ • Dockerfile
• コンテナイメージ • コンテナの依存関係(ベースイメージ、追加するパッケージ) • インフラのソースコード( IaC: Kubernetes Manifests, Helm Charts) https://cloud.google.com/software-supply-chain-security/docs/overview
コンテナサプライチェーン(図)
自社開発とOSS利用 自社開発における責任範囲 • ソースコードの安全性 ◦ 脆弱性(バグや設定ミス)を含まないこと • ビルドしたアプリケーション、コンテナイメージの安全性 ◦ 正規の手順でビルドされたものであること
• 開発プロセスおよびシステムの安全性 OSS利用における責任範囲 • 利用するOSSの安全性 ◦ 正規のソフトウェアであること ◦ 脆弱性などの問題が発覚した場合に適切に対処すること 本セッションの対象
SSCのセキュリティフレームワーク Supply-chain Levels for Software Artifacts (SLSA) https://slsa.dev/ Secure Supply
Chain Consumption Framework (S2C2F) https://github.com/ossf/s2c2f Microsoft - Containers Secure Supply Chain Framework (CSSC) https://learn.microsoft.com/en-us/azure/security/container-secure-supply-chain/ CNCF - Software Supply Chain Best Practices v2 https://github.com/cncf/tag-security/blob/main/community/working-groups/supply-chain-security/ supply-chain-security-paper-v2/SSCBPv2.md CIS - Software Supply Chain Security Guide https://www.cisecurity.org/insights/white-papers/cis-software-supply-chain-security-guide
Supply-chain Levels for Software Artifacts (SLSA) https://slsa.dev/spec/v1.0/threats-overview ソフトウェアの開発者、利用者に向けた SSCのセキュリティガイドライン •
サプライチェーンを Source, Build, Dependencies, Package の4つに分類 • v1.0ではビルドプロセスやプラットフォームに焦点を当てている • ビルドにおいて、0〜3のセキュリティレベルを定義 ◦ ビルド来歴(Provenance)の生成と管理 ◦ ビルドプラットフォームのセキュリティ強化 • SSCの脅威について複数の事例を紹介 • Attestation モデル、Provenance フォーマットを定義
Secure Supply Chain Consumption Framework (S2C2F) OSSの利用者に向けたセキュリティリスク低減のためのフレームワーク • 8つのセキュリティプラクティスと 4つの成熟度レベルを定義
◦ ただし、レベル4はコストが高く現実的ではないと自ら述べている • SSCの脅威について複数の事例を紹介 • 各要件を満たすためのツール(有償 /無償)を紹介 • 各要件を他のフレームワークと対応付け https://github.com/ossf/s2c2f
Containers Secure Supply Chain Framework (CSSC) コンテナライフサイクル全体のセキュリティ管理、統合を目的としたフレームワーク • コンテナのサプライチェーンを 5つのステージに分類し、プラクティスやツールを紹介
• 通常のソフトウェアサプライチェーンと観点に相違はなく、コンテナに焦点を当てた内容 • 実行環境のセキュリティにも言及 https://learn.microsoft.com/en-us/azure/security/container-secure-supply-chain/
Software Supply Chain Best Practices v2 ソフトウェアの開発者、提供者、利用者に向けたベストプラクティス集 • 開発ライフサイクルに沿う形で具体的なプラクティスを紹介 •
ビルドパイプラインやユーザー権限にも言及されており、網羅性が高い • ツール例はほとんど紹介されていない https://github.com/cncf/tag-security/blob/main/community/working-groups/supply-chain-security/supply-chain-security- paper-v2/SSCBPv2.md
コンテナサプライチェーンの脅威 02
事例:脆弱性の悪用(Log4shell) Javaのログ出力ライブラリ「Log4j2」で深刻な脆弱性(CVE-2021-44228) • 外部のclassファイルを読み込む機能を悪用し、任意コード実行が可能 • 広く利用されているOSSかつ、悪用が容易 • 脆弱性の公開当初から多数の攻撃を確認 https://piyolog.hatenadiary.jp/entry/2021/12/13/045541
事例:ビルドシステムの侵害(SolarWinds) SolarWinds社が開発するOrion Platformにバックドアが仕込まれる • ソースコードを直接変更するのではなく、ビルドプロセス中に悪意のあるコードを挿入 • マルウェアは自身の検出を回避するために、様々な偽装や隠蔽を行なっていた • 米国政府を含む利用組織に被害が発生 https://piyolog.hatenadiary.jp/entry/2020/12/20/045153
事例:OSSへの悪意のあるコード挿入(XZ) ファイル可逆圧縮ツールのXZ Utilsに悪意のあるコードが挿入される • コードを挿入したのはメンテナの一人 • SSHDが問題のあるライブラリをロードすることで、外部から不正アクセスを受ける • 様々なLinuxディストリビューションに影響 •
脆弱性としてCVEが採番(CVE-2024-3094) https://piyolog.hatenadiary.jp/entry/2024/04/01/035321
事例:悪意のあるコンテナイメージの公開 Docker Hubでマルウェアを含むコンテナイメージが公開される • 正規ツール/コンテナと同名のコンテナイメージを公開し、利用者の誤用を狙う • コンテナにはクリプトマイナーが含まれる • 多数のダウンロードを確認 https://sysdig.com/blog/analysis-of-supply-chain-attacks-through-public-docker-images/
事例:悪意のあるツール等の公開 • マルウェアを含むpythonパッケージ ◦ https://thehackernews.com/2023/11/beware-developers-blazestealer-malware.html • npmのタイポスクワッティング ◦ https://checkmarx.com/blog/a-new-stealthier-type-of-typosquatting-attack-spotted-t argeting-npm/
• 偽のAWSマシンイメージ ◦ https://thehackernews.com/2025/02/new-whoami-attack-exploits-aws-ami-name.html • GitHub上での正規のOSSを模したマルウェア ◦ https://sfujiwara.hatenablog.com/entry/2025/02/11/094755
サプライチェーン攻撃の特徴 攻撃側 • 1つの組織、ソフトウェアの侵害から多数の組織に影響を与えることができる • セキュリティレベルの高い組織に対し、比較的容易に侵入できる 防御側 • アタックサーフェスが多岐にわたり、網羅的に対策を実施するのが難しい •
組織や事業規模が大きくなるほどリスクが高まる • サプライチェーン上の被害者にも加害者にもなり得る
脆弱性がなければ安全か 脆弱性としては検出されない脅威がある • 攻撃目的で作成されたツール • 正規のOSSに混入する不正なコード ◦ XZの事例のようにCVEが採番されるケースもある • IaCにはCVEが採番されないため、脆弱性スキャンの対象とならない
→ 脆弱性対策とは別に、OSSの安全性を確認する必要がある
具体的なセキュリティ対策 03
脆弱性スキャン 効果 • 依存関係のライブラリやパッケージの脆弱性を検出できる • ソースコード、コンテナイメージに対してスキャン可能 注意点 • アプリケーション本体のバージョンおよび脆弱性は検出できない ツール例
• https://github.com/aquasecurity/trivy • https://github.com/anchore/grype • https://github.com/openclarity/openclarity
ビルド来歴(Provenance)の生成 効果 • コンテナイメージが期待通りの構成でビルドされたことを保証 • ビルド来歴をもとに、同じ構成のコンテナイメージをビルドできる 注意点 • 完全性(ビルド来歴が改ざんされていないこと)は別途保証する必要がある ツール例
• https://github.com/slsa-framework/slsa-github-generator • https://github.com/slsa-framework/slsa-verifier • https://docs.docker.com/build/metadata/attestations/slsa-provenance/
コンテナイメージの完全性の確保 効果 • コンテナイメージがビルド後に改ざんされていないことを保証 • イメージ署名、再ビルドによるイメージ比較 注意点 • ビルド前に脆弱性や悪意のあるコードが含まれないことを別途確認する必要がある ツール例
• https://github.com/sigstore/cosign • https://github.com/notaryproject/notation • https://github.com/reproducible-containers
OSSの安全性評価 効果 • OSSの導入前、アップデート時に悪意のあるコードが含まれないか確認できる • OSSプロジェクトのセキュリティ体制を評価し、導入可否の判断に利用 注意点 • 検知できるものに限界があり、また現状ではツールや実績に乏しい ツール例
• https://github.com/DataDog/guarddog • https://github.com/ossf/package-analysis • https://github.com/ossf/scorecard
信頼されたOSSの利用 効果 • 安全性評価を外部サービスに任せ、人的コストを削減 • 高品質な外部サービスを利用することでセキュリティレベルを向上 注意点 • 100%の安全は保証されない ツール例
• https://www.chainguard.dev/chainguard-images • https://cloud.google.com/security/products/assured-open-source-software • https://docs.docker.com/docker-hub/image-library/trusted-content/
さいごに ソフトウェアサプライチェーンのセキュリティはまだ発展途上 • OSSや外部ツールの利用増に伴い、攻撃も活発化してきている ◦ サプライチェーンのリスクを無視しつづけることはできない • 確立された方法はなく、使いやすいツールもあまりない ◦ 特にOSSの安全性評価については課題が多い印象
サプライチェーンセキュリティの知見をお持ちの方、実際に取り組まれた方が いらっしゃいましたらぜひ教えてください!
CREDITS: This presentation template was created by Slidesgo, and includes
icons by Flaticon, and infographics & images by Freepik Thanks! Do you have any questions? https://twitter.com/kyohmizu