Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Leaky Vessels/CVE-2024-21626から分かるコンテナセキュリティ
Search
hayama
August 02, 2024
0
160
Leaky Vessels/CVE-2024-21626から分かるコンテナセキュリティ
hayama
August 02, 2024
Tweet
Share
More Decks by hayama
See All by hayama
チームメンバー迷わないIaC設計
hayama17
1
630
Featured
See All Featured
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
310
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
420
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
130
Producing Creativity
orderedlist
PRO
348
40k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
1.9k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Deep Space Network (abreviated)
tonyrice
0
78
How to make the Groovebox
asonas
2
2k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
Transcript
©2024 Supership Inc. Confidential Confidential 2024/07/29 Supership株式会社 羽山公平 Leaky Vesselsからわかる
コンテナセキュリティ
©2024 Supership Inc. Confidential プロフィール 好きなもの / 趣味 #楽器(ドラム、ギター) #Cloud
Native Dayの運営・参加 #ゲーム 羽山 公平(ハヤマ コウヘイ) • 2001 年 1 月 7 日 :23年入社 • システム統括本部インフラ基盤統括室
©2024 Supership Inc. ©2024 Supership Inc. Confidential Leaky Vessels/ CVE-2024-21626
をご存知ですか? 3
©2024 Supership Inc. Confidential Leaky Vessels(CVE-2024-21626)をご存知ですか? コンテナランタイム「runc」の脆弱性により、 4 コンテナから
ホストOSのファイルシステムにアクセスできる脆弱性 悪意のあるDockerfile 悪意のあるDocker cmd
©2024 Supership Inc. Confidential 影響範囲や危険性 対象ソフトウェア • runcを採用しているコンテナエンジン ◦ Docker、Kubelet(Kubernetes)など
◦ version: 1.0.0-rc93 <= runc < 1.1.12 ホストOSのファイルシステムにアクセスできる危険性 5 コンテナ ホストOS 公開鍵の登録 SSHアクセス 公開鍵の登録 実行ファイルの上書き コンテナ ホストOS /usr/bin/xxxを上書き
©2024 Supership Inc. Confidential runcとは? • 高レベルランタイム(Daemonとして常駐) ◦ イメージの管理 ◦
低レベルランタイムを使いコンテナを作成する • 低レベルランタイム(バイナリ) ◦ コンテナを作成の実装部分 ◦ 実際にSystemCallを送っている 6 runc 高レベルランタイム 低レベルランタイム
©2024 Supership Inc. ©2024 Supership Inc. Confidential 再現方法は? 7
©2024 Supership Inc. Confidential 脆弱性の再現方法 WORKDIRに/proc/self/fd/8(コンテナプロセスのFD)を指定する 8 CLI docker run
-it -w /proc/self/fd/8 \ ubuntu bash Dockerfile たった1行、1オプションで脆弱性が再現できてしまう危険性
©2024 Supership Inc. Confidential この脆弱性の厄介な点 Dockerfileの持つFROM利用することで、localのDockerfileをみても脆弱性を持つイメージ なのか判断がつきにくいところ 9 利用したいイメージ
脆弱性を持つイメージ FROM
©2024 Supership Inc. Confidential 対応策 脆弱性の確認 • runcのversionを確認する ◦ docker
version ◦ runc --version 脆弱性解消するために • 今年の2月には修正verが配布されており、yumやaptからアップデート可能です 注意 アップデートが出来ない場合 • 公式の検証済のDocker imageを利用する • 第三者が作成したDocker imageを利用しない ◦ 足りない機能は公式のDocker imageを元に自作する 10
©2024 Supership Inc. ©2024 Supership Inc. Confidential 今回の事例から分かる コンテナセキュリティ 11
©2024 Supership Inc. Confidential 今回の事例から分かるコンテナセキュリティ • コンテナエンジンの脆弱性はコンテナやホストOS全てに波及してしまう ◦ VMと違って完全に隔離されているわけでない
◦ 脆弱性1つや権限1つで簡単にホストOSにアクセスできてしまう ◦ 過激に言えばコンテナは「高度なchroot」 12 VM ハイパーバイザ ゲストOS ゲストOS VM コンテナ OS APP APP コンテナ VM コンテナ
©2024 Supership Inc. Confidential 今回の事例から分かるコンテナセキュリティ • 不用意に第三者が作成したコンテナイメージを利用しない ◦ 公式のイメージやベンダー公式のイメージを利用する
◦ コンテナイメージはユーザ側で検証や脆弱性をスキャンを利用する 13 脆弱性スキャンサービス例 Docker • Docker Scout AWS • Amazon ECR GCP • Artifact Registry
©2024 Supership Inc. Confidential 今回の事例から分かるコンテナセキュリティ • コンテナ技術はOSSの塊である ◦ OSSのアップデート情報や脆弱性は監視していつでもアップデートできる体制にしておく
◦ 自分たちで管理できなければクラウドのコンテナサービスを利用する 14
©2024 Supership Inc. ©2024 Supership Inc. Confidential ご清聴ありがとうございます 15