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
サプライチェーンとSLSA
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
yoseio
April 12, 2023
Programming
1
340
サプライチェーンとSLSA
yoseio
April 12, 2023
Tweet
Share
Other Decks in Programming
See All in Programming
「やめとこ」がなくなった — 1月にZennを始めて22本書いた AI共創開発のリアル
atani14
0
380
コードレビューをしない選択 #でぃーぷらすトウキョウ
kajitack
3
940
Windows on Ryzen and I
seosoft
0
280
技術検証結果の整理と解析をAIに任せよう!
keisukeikeda
0
120
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
170
go directiveを最新にしすぎないで欲しい話──あるいは、Go 1.26からgo mod initで作られるgo directiveの値が変わる話 / Go 1.26 リリースパーティ
arthur1
2
550
CDIの誤解しがちな仕様とその対処TIPS
futokiyo
0
210
野球解説AI Agentを開発してみた - 2026/02/27 LayerX社内LT会資料
shinyorke
PRO
0
280
nuget-server - あなたが必要だったNuGetサーバー
kekyo
PRO
0
250
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.1k
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
500
20260228_JAWS_Beginner_Kansai
takuyay0ne
5
510
Featured
See All Featured
Between Models and Reality
mayunak
2
230
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
The Language of Interfaces
destraynor
162
26k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
120
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.9k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
140
Side Projects
sachag
455
43k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.4k
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Fireside Chat
paigeccino
42
3.8k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
270
Transcript
サプライチェーンとSLSA 2022/04/12
ソフトウェアサプライチェーン https://slsa.dev/spec/v0.1/terminology より
脅威 https://slsa.dev/spec/v0.1/threats より
実際の攻撃:Linux Hypocrite Commits • https://lore.kernel.org/lkml/202105051005.49BFABCE@keesco ok/ • 研究目的で脆弱性を含むパッチをLinuxカーネルコミュニティーに投稿し た
実際の攻撃:Linux Hypocrite Commits
実際の攻撃:SolarWinds • https://www.crowdstrike.com/blog/sunspot-malware-technic al-analysis/ • ビルドシステムにマルウェア • コンパイルに関わるプロセスの実行を監視し、ソースファイルを置き換え て、バックドアを仕込む
実際の攻撃:SolarWinds
実際の攻撃:CodeCov • https://about.codecov.io/apr-2021-post-mortem/ • 漏洩した鍵を使ってGCSに悪意のあるファイルをアップロードし、ユーザー に配信
実際の攻撃:CodeCov
SLSAとは • SLSA:Supply chain Levels for Software Artifacts • サプライチェーンにおける成果物の完全性に関するフレームワーク
• GoogleのBinary Authorization for Borgが元になっている • 4つのレベル https://slsa.dev/spec/v0.1 より
SLSAレベル レベル1 ビルドプロセスのドキュメント化 レベル2 ビルドサービスの耐タンパー性 レベル3 特定の脅威に対するさらなる耐性 レベル4 最高レベルの信頼と信用
実装:GitHub Actions • SLSA GitHub Generatorを使う • やってくれること ◦ provenanceの生成
▪ 任意のアーティファクト ◦ provenanceの署名 ▪ Sigstoreを使ってActionsのOIDCトークンで署名する • やってくれないこと ◦ 特になし(GitLab CI・Cloud Buildと比較)
実装:GitLab CI • SLSAが組み込まれている(GitLab Runner 15.1 ~) • やってくれること ◦
provenanceの生成 ▪ ジョブアーティファクト • やってくれないこと ◦ ジョブアーティファクト以外に対するprovenanceの生成 ◦ provenanceの署名 ▪ gitlab.com/gitlab-org/gitlab-runner/-/issues/29063
実装:Cloud Build • SLSAが組み込まれている • やってくれること ◦ provenanceの生成 ▪ Java・Python・コンテナ
◦ provenanceの署名 ▪ DSSEに準拠した署名 • やってくれないこと ◦ Java・Python・コンテナ以外に対するprovenanceの生成
SLSA 1.0に向けて • 変更点 ◦ 複数のトラックに分割 ▪ 1.0 RCではビルドトラック(L1 ~
L3)のみ ◦ provenanceの検証について明確化 • 今後の方向性 ◦ ビルドトラック L4の追加 ◦ ソーストラックの追加
所感 • まだ仕様が安定していないので導入は慎重にしたい ◦ 0.1 → 1.0は変更が大きいので1.0まで待ちたい ◦ 1.0以降は仕様が追加されるだけになりそう •
必要に応じてポリシーエンジンを導入する ◦ GKE・Cloud Runの場合はBinary Authz ◦ Sigstoreの場合はPolicy Controller • Sigstoreを使う際はRekorに注意
参考文献 • https://slsa.dev • https://github.com/slsa-framework/slsa-github-generator • https://docs.gitlab.com/ee/ci/runners/configure_runners.html • https://cloud.google.com/build/docs/securing-builds/view-build-provenance