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
yoseio
April 12, 2023
Programming
350
1
Share
サプライチェーンとSLSA
yoseio
April 12, 2023
Other Decks in Programming
See All in Programming
【26新卒研修】OpenAPI/Swagger REST API研修
dip_tech
PRO
0
140
From Formal Specification to Property Based Test
ohbarye
0
1.2k
How We Practice Exploratory Testing in Iterative Development( #scrumniigata ) / 反復開発の中で、探索的テストをどう実施しているか
teyamagu
PRO
3
740
KMP × Kotlin 2.3 - How Android Got Slower While iOS Builds Improved by 47%
rio432
0
130
空間オーディオの活用
objectiveaudio
0
140
いつか誰かが、と思っていた フロントエンド刷新5年間の実践知
kiichisugihara
1
260
Spec-Driven Development with AI Agents (Workshop, May 2026)
antonarhipov
3
330
決定論 vs 確率論:Gemini 3 FlashとTF-IDFを組み合わせた「法規判定エンジン」の構築
shukob
0
160
ソフトウェア設計の結合バランス #phperkaigi
kajitack
0
490
Building on Bluesky's AT Protocol with Ruby
mackuba
0
110
AI時代のエンジニアリングの原則 / Engineering Principles in the AI Era
haru860
0
1.1k
アクセシビリティ試験の"その後"を仕組み化する
yuuumiravy
1
200
Featured
See All Featured
Accessibility Awareness
sabderemane
1
110
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
220
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
450
The SEO identity crisis: Don't let AI make you average
varn
0
460
Google's AI Overviews - The New Search
badams
0
1k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
820
Writing Fast Ruby
sferik
630
63k
Paper Plane
katiecoart
PRO
1
50k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
How to Think Like a Performance Engineer
csswizardry
28
2.6k
A designer walks into a library…
pauljervisheath
211
24k
The agentic SEO stack - context over prompts
schlessera
0
770
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