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
JAWS Pankration 2024 - Achieve software supply ...
Search
Richard Fan
August 25, 2024
Technology
72
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
JAWS Pankration 2024 - Achieve software supply chain security using AWS Nitro Enclaves and GitHub Actions
Presented at JAWS Pankration 2024
Richard Fan
August 25, 2024
More Decks by Richard Fan
See All by Richard Fan
You Don’t Need to Be a Hero to Contribute
richardfan1126
0
6
Understanding the Identity ofa CI Platform
richardfan1126
0
12
Preserving privacy on data collaboration with AWS Clean Rooms
richardfan1126
0
53
Achieve software supply chain security using AWS Nitro Enclaves and GitHub Actions
richardfan1126
0
170
When Data Collaboration Meets Privacy: Privacy-enhancing Technologies on AWS
richardfan1126
0
63
AWS Security Hub Central Configuration - An Easy way to monitor your Organization security posture
richardfan1126
0
75
Create your first AWS Nitro Enclaves application
richardfan1126
0
74
Building Security Data Lake
richardfan1126
0
22
Other Decks in Technology
See All in Technology
AI 不只幫你寫 Code: 當專案從 300 暴增到 1500, 我們如何撐住 DevOps
appleboy
0
160
iOS アプリの「これって不具合ですか?」を AI に調べてもらう
miichan
0
140
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.6k
OTel × Datadog で 「AI活用」を計測し、改善に繋げる
shihochan
2
590
AIネイティブな開発のサプライチェーンリスク対策 〜激動の開発現場でリスクに立ち向かう〜【ZennFes】
cscengineer
PRO
2
150
GitHub Copilot app最速の発信の裏側
tomokusaba
1
240
ぼっちではじめた登壇が「51名」「241件」の発信に化けた
subroh0508
1
300
Chainlitで作るお手軽チャットUI
ynt0485
0
290
複数のSONiCディストリビューションを触りながら比較してみた
sonic
0
120
「勝手に広まる」人気 AI エージェントを爆速で作ろう!(AWS Summit Japan 2026講演資料)
minorun365
PRO
10
2.4k
SONiC実機とGNS3 SONiC VSによる事前コンフィグ検証 ― 生成AIエージェントを環境構築・検証支援に使ってみた ―
sonic
0
120
スタートアップにAmazon EKSは早すぎる? マルチプロダクト戦略を加速する Platform Engineeringの実践 / Is Amazon EKS Too Soon for Startups? Practical Platform Engineering to Accelerate a Multi-Product Strategy
elmodev09
1
1.7k
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.3k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
From π to Pie charts
rasagy
0
220
Optimising Largest Contentful Paint
csswizardry
37
3.7k
Fireside Chat
paigeccino
42
4k
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
Heart Work Chapter 1 - Part 1
lfama
PRO
7
36k
Typedesign – Prime Four
hannesfritz
42
3.1k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
610
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.6k
Transcript
Achieve software supply chain security using AWS Nitro Enclaves and
GitHub Actions Richard Fan AWS Security Hero
Where does the software come from? Source Developers Build Package
Consumers Dependencies
How can things go wrong? Source Developers Build Package Consumers
Dependencies Unauthorized code change Compromised repository Build from compromised source code Compromised build process Using compromised dependency Modified package Compromised package store Downloading compromised package
What is SLSA • Supply-chain Levels for Software Artifacts •
Framework for software integrity • Build trust between software producer and consumer • Different levels of security assurance
SLSA Provenance Birth certificate of the software Software
Achieving SLSA on GitHub Actions
What is GitHub Actions • CI/CD platform • Workflow defined
within code repo • Run on GitHub- / self-hosted runner
GitHub Actions workflow • name: Build and sign EIF •
on: [push] • permissions: • contents: read • packages: write • id-token: write • attestations: write • jobs: • build_and_sign_artifact: • runs-on: ubuntu-latest • steps: # ... Build and push artifact • - name: GitHub attest • uses: actions/
[email protected]
Generate and sign provenance
GitHub Actions workflow
SLSA provenance Built by GitHub Actions Source code version Software
build
Where does the software come from? Source Developers Build Package
Consumers Dependencies SLSA
The software need to run somewhere Package Server End-users Deployment
Downloading compromised package Compromised deployment process Unauthorized deployment Unauthorized access Accessing compromised API endpoint
AWS Nitro Enclaves • Isolated virtual machine • Run on
EC2 instances • No admin access • No persistent storage • No external networking
Attestation document 1. Generate by Nitro Enclave at runtime 2.
Present attestation document to client app 3. Client validates the document 4. Client validates enclave fingerprint (PCRs)
Where does the software come from? Source Build Package Fingerprint
(PCRs) Enclave application Attest Enclave End-users Attestation document Verify with attested artifact Verify source code and build process
Demo … by yourself
Demo - How high (or low) is my salary? •
This is a difficult question • I want to know how much you earn • But I don’t want you to know how much I earn
Demo - How high is my salary enclave app •
Only tell you where is your salary ranked • Source code is open • Build process is open • Run on AWS Nitro Enclave • Proved by attestation document • Data encrypted between you and the enclave
Demo - How high is my salary enclave app •
https://github.com/richardfan1126/how-high-is-my-salary-enclave-app • Easy setup (Terraform)
How to find me Richard Fan
[email protected]
20 richardfan1126