Understanding Wireguard, TLS and Workload Identity

Christian Posta
Christian PostaGlobal Field CTO à Solo.io
1 | Copyright © 2022
Understanding Wireguard, TLS and Workload Identity:
The Backbone of Modern Service Networking
2 | Copyright © 2022
CHRISTIAN POSTA
VP, Global Field CTO, Solo.io
@christianposta
christian@solo.io
3 | Copyright © 2022
01
02
03
04
05
Why do we need modern
security?
Case Study: Google ALTS
Modern Networking Security
Workload Identity
Demos!
Agenda
4 | Copyright © 2022
c
Application Networking
Well Funded ($175M), $1B valuation
Satisfied Customers (130% Renewals)
Cloud-native Technology Leadership
Cloud-native Education Leadership
TODAY’S
BUSINESS
DIGITAL
BUSINESS
The Service Mesh and API Platform
for Kubernetes | Zero-Trust | Microservices
5 | Copyright © 2022
Service A can talk to Service B
6 | Copyright © 2022
Long Live IP!
7 | Copyright © 2022
Containerized Workloads
8 | Copyright © 2022
Beware!
9 | Copyright © 2022
Beware!
https://www.theverge.com/2014/12/8/7352581/sony-pictures-hacked-storystream
10 | Copyright © 2022
Tenets of a Modern, Secure Network
• Assume a Hostile Environment - There are malicious persona both inside and outside the
environment
• Presume Breach - Operate and Defend resources with the assumption that an adversary
has presence in your environment
• Never Trust, Always Verify - Deny by default. Every resource is explicitly authorized using
least privilege multiple attributes, and dynamic cybersecurity principles
• Scrutinize Explicitly - Access to resources is conditional and access can dynamically
change based on action and confidence levels resulting from those actions
• Apply Unified Analytics - for data, applications, assets, services to include behavioristics
and log each transaction
11 | Copyright © 2022
Writing Networking Policy
● Who is calling whom
● Constraining who can call whom
● Avoid MiTM, eavesdropping
● Quota / QoS / Limits
● Logging, auditing
● Policy enforcement via fine-grained authz
12 | Copyright © 2022
Example from Google
ALTS
13 | Copyright © 2022
Application Layer Transport Security
• Built in 2007 (TLS 1.1 was the latest version at this point)
• TLS 1.1 did not meet Google’s minimum security standards
• A simpler, more tailored impl of TLS
• More flexible workload identity model
• Certs use ECDH keys, Uses DH key exchange, can provide PFS and AE
• Uses Protocol Buffers to serialize certificates and protocol messages
https://cloud.google.com/docs/security/encryption-in-transit/application-layer-transport-security
14 | Copyright © 2022
ALTS Design
• Transparent to applications / RPC invocations
• Simplified cryptography (limited key exchange/cipher algorithms)
• Authentication based on Identity NOT host machines
• Identity tied to chain of trust / key distribution (transparent to application)
• Authorization policies built around Identity model
https://cloud.google.com/docs/security/encryption-in-transit/application-layer-transport-security
15 | Copyright © 2022
Transparent ALTS
16 | Copyright © 2022
Handshake / Record Protocol
17 | Copyright © 2022
ALTS is Proven at Scale
Should we build ALTS?
18 | Copyright © 2022
No. Modern Building Blocks Exist
Let’s take a look
19 | Copyright © 2022
Modern, Secure Service Networking
• Transparent to applications / RPC invocations
• Transparent encryption
• Simplified cryptography (limited key exchange/cipher algorithms)
• Authentication based on Identity NOT host machines
• Identity tied to chain of trust / key distribution (transparent to application)
• Authorization policies built around Identity model
20 | Copyright © 2022
Wireguard
Transparent encryption made easy
21 | Copyright © 2022
Wireguard
22 | Copyright © 2022
Wireguard
• A Kernel/OS module aimed at transparently encrypting IP between two nodes
for VPN use cases
• Simple code base (around 7k LOC vs e.g., 100K+ IPSec)
• No cipher/protocol negotiation; fixed cryptography
• For L3, encapsulate encrypted packets in UDP
• Intended to use ciphers that afford more performance
• Simplified configuration, out of band public-key exchange
https://www.wireguard.com/papers/wireguard.pdf
23 | Copyright © 2022
Configure public keys and it just works
24 | Copyright © 2022
Opinionated Crypto (Based on the Noise Framework)
• Elliptic Curve Diffie Hellman with Curve22519
• ChaCha20+Poly1305 for Authenticated Encryption
• BLAKE2s for hashing
• Optional Pre-Shared Key (PSK)
• If a vulnerability is found, upgrade everything
https://www.wireguard.com/papers/wireguard.pdf
25 | Copyright © 2022
Downsides of Wireguard
• Could be very difficult to upgrade “everything” all at once for a discovered
vulnerability
• Not FIPS compliant
• Will not be FIPS compliant
− https://twitter.com/matthew_d_green/status/1443558648878350339
• Doesn’t solve for workload Mutual Authentication, Identity, or Authorization
26 | Copyright © 2022
Options to Layer Authentication for svc-to-svc?
• Wireguard “authenticates” its peers but has no knowledge of svc identities
• JWT access tokens (ie, OAuth 2.0 + Secure Token Service)
• Custom mutual authentication mechanism (see Cilium)
• Layer client certificates and TLS on top
27 | Copyright © 2022
Cilium’s approach to mutual authentication
28 | Copyright © 2022
Cilium’s approach to mutual authentication
29 | Copyright © 2022
Cilium’s approach to mutual authentication
30 | Copyright © 2022
Transport Layer Security
TLS 1.3
31 | Copyright © 2022
Transport Layer Security
32 | Copyright © 2022
Transport Layer Security (TLS 1.2)
33 | Copyright © 2022
Transport Layer Security (TLS 1.3)
34 | Copyright © 2022
Client Authentication (mTLS)
35 | Copyright © 2022
Why use TLS 1.3?
• Faster
− Handshake takes fewer round trips
• Safer (drop support for unsafe cryptographic algorithms)
− Remove RSA key exchange (doesn’t provide Forward Secrecy)
− Remove CBC/RC4 ciphers
− Restrict DH parameters to known secure params
− Handshake is signed by the server, cannot be tricked into downgrade
− Chose AEAD ciphers
36 | Copyright © 2022
TLS Can do Authentication, Encryption, Integrity Checks
• FIPS compliant implementations
• Private keys do not get sent over the wire (like JWT tokens)
• Can be terminated at the applications for end-to-end session
• TLS 1.3 brings simplification for ciphers/protocol negotiation
• Looks a lot more like Google ALTS!
37 | Copyright © 2022
Downsides to TLS
• No standard way to specify identity
• Key issuance, revocation, rotation can be complex
• How do the applications handle key material safely?
• What if applications mis-configure?
• Every language/framework/library is different
38 | Copyright © 2022
Standard Workload Identity Framework
with SPIFFE
39 | Copyright © 2022
Secure Production Identity Framework (for Everyone)
• Open Source Identity Specification for workloads
• Intended to solve the “universal workload identity problem”
• Independent of application type, network, or platform/cloud
• Specified with URI strings
• Verified via signed credentials (x509, JWT, etc)
• API and workflow for attestation built into SPIFFE implementations
• Intended to eliminate passwords, other secrets, etc
40 | Copyright © 2022
SPIFFE
41 | Copyright © 2022
Who is Service A?
42 | Copyright © 2022
Identity described in SVID
43 | Copyright © 2022
Identity for Workloads
44 | Copyright © 2022
SPIRE is a Production Implementation of SPIFFE
45 | Copyright © 2022
Bringing it Together Transparently
TLS 1.3 + SPIFFE
46 | Copyright © 2022
Now we know who Service A is…
47 | Copyright © 2022
An example implementation: Istio Ambient Mesh
https://istio.io/latest/blog/2022/introducing-ambient-mesh/
48 | Copyright © 2022
Istio Ambient Mesh (w/ TLS 1.3 + SPIFFE)
• Transparent to applications / RPC invocations
• Transparent encryption
• Simplified cryptography (limited key exchange/cipher algorithms)
• Authentication based on Identity NOT host machines
• Identity tied to chain of trust / key distribution (transparent to application)
• Authorization policies built around Identity model
49 | Copyright © 2022
Demo
50 | Copyright © 2022
Additional Resources
● https://lp.solo.io/white-paper-zero-trust
● https://cloud.google.com/docs/security/encryption-in-transit/applica
tion-layer-transport-security
● https://istio.io/latest/blog/2022/introducing-ambient-mesh/
● https://www.wireguard.com/papers/wireguard.pdf
● https://www.solo.io/zero-trust/
● https://academy.solo.io
● https://istio.io
● https://cilium.io
https://lp.solo.io/istio-ambient-mesh-explained
Thank You!
1 sur 51

Recommandé

Current Trends in HPC par
Current Trends in HPCCurrent Trends in HPC
Current Trends in HPCPutchong Uthayopas
1.6K vues85 diapositives
Software tools par
Software toolsSoftware tools
Software toolsravindravekariya
17.9K vues19 diapositives
MC 7204 OS Question Bank with Answer par
MC 7204 OS Question Bank with AnswerMC 7204 OS Question Bank with Answer
MC 7204 OS Question Bank with Answersellappasiva
384 vues6 diapositives
Synch par
SynchSynch
SynchMohannad Shishani
847 vues25 diapositives
Types of cloud computing par
Types of cloud computingTypes of cloud computing
Types of cloud computingArchie Jamwal
489 vues14 diapositives
Key Distribution Problem in advanced operating system par
Key Distribution Problem in advanced operating systemKey Distribution Problem in advanced operating system
Key Distribution Problem in advanced operating systemMerlin Florrence
3.8K vues9 diapositives

Contenu connexe

Similaire à Understanding Wireguard, TLS and Workload Identity

Alfresco DevCon 2019: Encryption at-rest and in-transit par
Alfresco DevCon 2019: Encryption at-rest and in-transitAlfresco DevCon 2019: Encryption at-rest and in-transit
Alfresco DevCon 2019: Encryption at-rest and in-transitToni de la Fuente
1.1K vues40 diapositives
The Current And Future State Of Service Mesh par
The Current And Future State Of Service MeshThe Current And Future State Of Service Mesh
The Current And Future State Of Service MeshRam Vennam
90 vues57 diapositives
Application security meetup - cloud security best practices 24062021 par
Application security meetup - cloud security best practices 24062021Application security meetup - cloud security best practices 24062021
Application security meetup - cloud security best practices 24062021lior mazor
336 vues73 diapositives
F5 TLS & SSL Practices par
F5 TLS & SSL PracticesF5 TLS & SSL Practices
F5 TLS & SSL PracticesBrian A. McHenry
22.3K vues34 diapositives
Wwc developing hyperledger applications v4 par
Wwc  developing hyperledger applications v4Wwc  developing hyperledger applications v4
Wwc developing hyperledger applications v4LennartF
141 vues47 diapositives
How to Prevent Your Kubernetes Cluster From Being Hacked par
How to Prevent Your Kubernetes Cluster From Being HackedHow to Prevent Your Kubernetes Cluster From Being Hacked
How to Prevent Your Kubernetes Cluster From Being HackedNico Meisenzahl
54 vues26 diapositives

Similaire à Understanding Wireguard, TLS and Workload Identity(20)

Alfresco DevCon 2019: Encryption at-rest and in-transit par Toni de la Fuente
Alfresco DevCon 2019: Encryption at-rest and in-transitAlfresco DevCon 2019: Encryption at-rest and in-transit
Alfresco DevCon 2019: Encryption at-rest and in-transit
Toni de la Fuente1.1K vues
The Current And Future State Of Service Mesh par Ram Vennam
The Current And Future State Of Service MeshThe Current And Future State Of Service Mesh
The Current And Future State Of Service Mesh
Ram Vennam90 vues
Application security meetup - cloud security best practices 24062021 par lior mazor
Application security meetup - cloud security best practices 24062021Application security meetup - cloud security best practices 24062021
Application security meetup - cloud security best practices 24062021
lior mazor336 vues
Wwc developing hyperledger applications v4 par LennartF
Wwc  developing hyperledger applications v4Wwc  developing hyperledger applications v4
Wwc developing hyperledger applications v4
LennartF141 vues
How to Prevent Your Kubernetes Cluster From Being Hacked par Nico Meisenzahl
How to Prevent Your Kubernetes Cluster From Being HackedHow to Prevent Your Kubernetes Cluster From Being Hacked
How to Prevent Your Kubernetes Cluster From Being Hacked
Nico Meisenzahl54 vues
Kaleido Platform Overview and Full-stack Blockchain Services par Peter Broadhurst
Kaleido Platform Overview and Full-stack Blockchain ServicesKaleido Platform Overview and Full-stack Blockchain Services
Kaleido Platform Overview and Full-stack Blockchain Services
Peter Broadhurst1.1K vues
The Future of PKI. Using automation tools and protocols to bootstrap trust in... par DATA SECURITY SOLUTIONS
The Future of PKI. Using automation tools and protocols to bootstrap trust in...The Future of PKI. Using automation tools and protocols to bootstrap trust in...
The Future of PKI. Using automation tools and protocols to bootstrap trust in...
Service Mesh and Serverless Chatbots with Linkerd, K8s and OpenFaaS par Software Guru
Service Mesh and Serverless Chatbots with Linkerd, K8s and OpenFaaSService Mesh and Serverless Chatbots with Linkerd, K8s and OpenFaaS
Service Mesh and Serverless Chatbots with Linkerd, K8s and OpenFaaS
Software Guru337 vues
Cloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlow par Cohesive Networks
Cloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlowCloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlow
Cloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlow
Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business? par Hacken_Ecosystem
Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business?Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business?
Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business?
Hacken_Ecosystem202 vues
SUGCON EU 2023 - Secure Composable SaaS.pptx par Vasiliy Fomichev
SUGCON EU 2023 - Secure Composable SaaS.pptxSUGCON EU 2023 - Secure Composable SaaS.pptx
SUGCON EU 2023 - Secure Composable SaaS.pptx
KCD Munich 2022: How to Prevent Your Kubernetes Cluster From Being Hacked par Nico Meisenzahl
KCD Munich 2022: How to Prevent Your Kubernetes Cluster From Being HackedKCD Munich 2022: How to Prevent Your Kubernetes Cluster From Being Hacked
KCD Munich 2022: How to Prevent Your Kubernetes Cluster From Being Hacked
Nico Meisenzahl53 vues
Introducing ConnectGuard™ Cloud par ADVA
Introducing ConnectGuard™ Cloud Introducing ConnectGuard™ Cloud
Introducing ConnectGuard™ Cloud
ADVA16.7K vues
Implementing zero trust in IBM Cloud Pak for Integration par Kim Clark
Implementing zero trust in IBM Cloud Pak for IntegrationImplementing zero trust in IBM Cloud Pak for Integration
Implementing zero trust in IBM Cloud Pak for Integration
Kim Clark211 vues
INTERFACE, by apidays - Challenges of exposing and connecting microservices par apidays
INTERFACE, by apidays - Challenges of exposing and connecting microservicesINTERFACE, by apidays - Challenges of exposing and connecting microservices
INTERFACE, by apidays - Challenges of exposing and connecting microservices
apidays94 vues

Plus de Christian Posta

Compliance and Zero Trust Ambient Mesh par
Compliance and Zero Trust Ambient MeshCompliance and Zero Trust Ambient Mesh
Compliance and Zero Trust Ambient MeshChristian Posta
144 vues40 diapositives
Cilium + Istio with Gloo Mesh par
Cilium + Istio with Gloo MeshCilium + Istio with Gloo Mesh
Cilium + Istio with Gloo MeshChristian Posta
599 vues40 diapositives
Multi-cluster service mesh with GlooMesh par
Multi-cluster service mesh with GlooMeshMulti-cluster service mesh with GlooMesh
Multi-cluster service mesh with GlooMeshChristian Posta
1.2K vues28 diapositives
Multicluster Kubernetes and Service Mesh Patterns par
Multicluster Kubernetes and Service Mesh PatternsMulticluster Kubernetes and Service Mesh Patterns
Multicluster Kubernetes and Service Mesh PatternsChristian Posta
1.4K vues43 diapositives
Cloud-Native Application Debugging with Envoy and Service Mesh par
Cloud-Native Application Debugging with Envoy and Service MeshCloud-Native Application Debugging with Envoy and Service Mesh
Cloud-Native Application Debugging with Envoy and Service MeshChristian Posta
928 vues79 diapositives
Kubernetes Ingress to Service Mesh (and beyond!) par
Kubernetes Ingress to Service Mesh (and beyond!)Kubernetes Ingress to Service Mesh (and beyond!)
Kubernetes Ingress to Service Mesh (and beyond!)Christian Posta
614 vues64 diapositives

Plus de Christian Posta(20)

Compliance and Zero Trust Ambient Mesh par Christian Posta
Compliance and Zero Trust Ambient MeshCompliance and Zero Trust Ambient Mesh
Compliance and Zero Trust Ambient Mesh
Christian Posta144 vues
Multi-cluster service mesh with GlooMesh par Christian Posta
Multi-cluster service mesh with GlooMeshMulti-cluster service mesh with GlooMesh
Multi-cluster service mesh with GlooMesh
Christian Posta1.2K vues
Multicluster Kubernetes and Service Mesh Patterns par Christian Posta
Multicluster Kubernetes and Service Mesh PatternsMulticluster Kubernetes and Service Mesh Patterns
Multicluster Kubernetes and Service Mesh Patterns
Christian Posta1.4K vues
Cloud-Native Application Debugging with Envoy and Service Mesh par Christian Posta
Cloud-Native Application Debugging with Envoy and Service MeshCloud-Native Application Debugging with Envoy and Service Mesh
Cloud-Native Application Debugging with Envoy and Service Mesh
Christian Posta928 vues
Kubernetes Ingress to Service Mesh (and beyond!) par Christian Posta
Kubernetes Ingress to Service Mesh (and beyond!)Kubernetes Ingress to Service Mesh (and beyond!)
Kubernetes Ingress to Service Mesh (and beyond!)
Christian Posta614 vues
The Truth About the Service Mesh Data Plane par Christian Posta
The Truth About the Service Mesh Data PlaneThe Truth About the Service Mesh Data Plane
The Truth About the Service Mesh Data Plane
Christian Posta2.6K vues
Deep Dive: Building external auth plugins for Gloo Enterprise par Christian Posta
Deep Dive: Building external auth plugins for Gloo EnterpriseDeep Dive: Building external auth plugins for Gloo Enterprise
Deep Dive: Building external auth plugins for Gloo Enterprise
Christian Posta719 vues
Role of edge gateways in relation to service mesh adoption par Christian Posta
Role of edge gateways in relation to service mesh adoptionRole of edge gateways in relation to service mesh adoption
Role of edge gateways in relation to service mesh adoption
Christian Posta1.1K vues
Navigating the service mesh landscape with Istio, Consul Connect, and Linkerd par Christian Posta
Navigating the service mesh landscape with Istio, Consul Connect, and LinkerdNavigating the service mesh landscape with Istio, Consul Connect, and Linkerd
Navigating the service mesh landscape with Istio, Consul Connect, and Linkerd
Christian Posta5K vues
Leveraging Envoy Proxy and GraphQL to Lower the Risk of Monolith to Microserv... par Christian Posta
Leveraging Envoy Proxy and GraphQL to Lower the Risk of Monolith to Microserv...Leveraging Envoy Proxy and GraphQL to Lower the Risk of Monolith to Microserv...
Leveraging Envoy Proxy and GraphQL to Lower the Risk of Monolith to Microserv...
Christian Posta2.8K vues
Service-mesh options with Linkerd, Consul, Istio and AWS AppMesh par Christian Posta
Service-mesh options with Linkerd, Consul, Istio and AWS AppMeshService-mesh options with Linkerd, Consul, Istio and AWS AppMesh
Service-mesh options with Linkerd, Consul, Istio and AWS AppMesh
Christian Posta2.8K vues
API Gateways are going through an identity crisis par Christian Posta
API Gateways are going through an identity crisisAPI Gateways are going through an identity crisis
API Gateways are going through an identity crisis
Christian Posta1.8K vues
KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh... par Christian Posta
KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...
KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...
Christian Posta1.9K vues
PHX DevOps Days: Service Mesh Landscape par Christian Posta
PHX DevOps Days: Service Mesh LandscapePHX DevOps Days: Service Mesh Landscape
PHX DevOps Days: Service Mesh Landscape
Christian Posta736 vues
API World: The service-mesh landscape par Christian Posta
API World: The service-mesh landscapeAPI World: The service-mesh landscape
API World: The service-mesh landscape
Christian Posta851 vues
Making sense of microservices, service mesh, and serverless par Christian Posta
Making sense of microservices, service mesh, and serverlessMaking sense of microservices, service mesh, and serverless
Making sense of microservices, service mesh, and serverless
Christian Posta691 vues

Dernier

Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And... par
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...ShapeBlue
108 vues12 diapositives
State of the Union - Rohit Yadav - Apache CloudStack par
State of the Union - Rohit Yadav - Apache CloudStackState of the Union - Rohit Yadav - Apache CloudStack
State of the Union - Rohit Yadav - Apache CloudStackShapeBlue
303 vues53 diapositives
"Surviving highload with Node.js", Andrii Shumada par
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada Fwdays
58 vues29 diapositives
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti... par
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...ShapeBlue
141 vues29 diapositives
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online par
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineKVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineShapeBlue
225 vues19 diapositives
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ... par
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...ShapeBlue
171 vues28 diapositives

Dernier(20)

Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And... par ShapeBlue
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...
ShapeBlue108 vues
State of the Union - Rohit Yadav - Apache CloudStack par ShapeBlue
State of the Union - Rohit Yadav - Apache CloudStackState of the Union - Rohit Yadav - Apache CloudStack
State of the Union - Rohit Yadav - Apache CloudStack
ShapeBlue303 vues
"Surviving highload with Node.js", Andrii Shumada par Fwdays
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada
Fwdays58 vues
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti... par ShapeBlue
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
ShapeBlue141 vues
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online par ShapeBlue
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineKVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online
ShapeBlue225 vues
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ... par ShapeBlue
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
ShapeBlue171 vues
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... par ShapeBlue
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
ShapeBlue183 vues
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue par ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlueCloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
ShapeBlue139 vues
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... par Jasper Oosterveld
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023 par BookNet Canada
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023Redefining the book supply chain: A glimpse into the future - Tech Forum 2023
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023
BookNet Canada44 vues
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue par ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlueWhat’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
ShapeBlue265 vues
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f... par TrustArc
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc176 vues
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De... par Moses Kemibaro
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...
Moses Kemibaro35 vues
Future of AR - Facebook Presentation par Rob McCarty
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook Presentation
Rob McCarty65 vues
Optimizing Communication to Optimize Human Behavior - LCBM par Yaman Kumar
Optimizing Communication to Optimize Human Behavior - LCBMOptimizing Communication to Optimize Human Behavior - LCBM
Optimizing Communication to Optimize Human Behavior - LCBM
Yaman Kumar38 vues
The Power of Heat Decarbonisation Plans in the Built Environment par IES VE
The Power of Heat Decarbonisation Plans in the Built EnvironmentThe Power of Heat Decarbonisation Plans in the Built Environment
The Power of Heat Decarbonisation Plans in the Built Environment
IES VE84 vues
LLMs in Production: Tooling, Process, and Team Structure par Aggregage
LLMs in Production: Tooling, Process, and Team StructureLLMs in Production: Tooling, Process, and Team Structure
LLMs in Production: Tooling, Process, and Team Structure
Aggregage57 vues
Why and How CloudStack at weSystems - Stephan Bienek - weSystems par ShapeBlue
Why and How CloudStack at weSystems - Stephan Bienek - weSystemsWhy and How CloudStack at weSystems - Stephan Bienek - weSystems
Why and How CloudStack at weSystems - Stephan Bienek - weSystems
ShapeBlue247 vues
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ... par ShapeBlue
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
ShapeBlue120 vues
NTGapps NTG LowCode Platform par Mustafa Kuğu
NTGapps NTG LowCode Platform NTGapps NTG LowCode Platform
NTGapps NTG LowCode Platform
Mustafa Kuğu437 vues

Understanding Wireguard, TLS and Workload Identity

  • 1. 1 | Copyright © 2022 Understanding Wireguard, TLS and Workload Identity: The Backbone of Modern Service Networking
  • 2. 2 | Copyright © 2022 CHRISTIAN POSTA VP, Global Field CTO, Solo.io @christianposta christian@solo.io
  • 3. 3 | Copyright © 2022 01 02 03 04 05 Why do we need modern security? Case Study: Google ALTS Modern Networking Security Workload Identity Demos! Agenda
  • 4. 4 | Copyright © 2022 c Application Networking Well Funded ($175M), $1B valuation Satisfied Customers (130% Renewals) Cloud-native Technology Leadership Cloud-native Education Leadership TODAY’S BUSINESS DIGITAL BUSINESS The Service Mesh and API Platform for Kubernetes | Zero-Trust | Microservices
  • 5. 5 | Copyright © 2022 Service A can talk to Service B
  • 6. 6 | Copyright © 2022 Long Live IP!
  • 7. 7 | Copyright © 2022 Containerized Workloads
  • 8. 8 | Copyright © 2022 Beware!
  • 9. 9 | Copyright © 2022 Beware! https://www.theverge.com/2014/12/8/7352581/sony-pictures-hacked-storystream
  • 10. 10 | Copyright © 2022 Tenets of a Modern, Secure Network • Assume a Hostile Environment - There are malicious persona both inside and outside the environment • Presume Breach - Operate and Defend resources with the assumption that an adversary has presence in your environment • Never Trust, Always Verify - Deny by default. Every resource is explicitly authorized using least privilege multiple attributes, and dynamic cybersecurity principles • Scrutinize Explicitly - Access to resources is conditional and access can dynamically change based on action and confidence levels resulting from those actions • Apply Unified Analytics - for data, applications, assets, services to include behavioristics and log each transaction
  • 11. 11 | Copyright © 2022 Writing Networking Policy ● Who is calling whom ● Constraining who can call whom ● Avoid MiTM, eavesdropping ● Quota / QoS / Limits ● Logging, auditing ● Policy enforcement via fine-grained authz
  • 12. 12 | Copyright © 2022 Example from Google ALTS
  • 13. 13 | Copyright © 2022 Application Layer Transport Security • Built in 2007 (TLS 1.1 was the latest version at this point) • TLS 1.1 did not meet Google’s minimum security standards • A simpler, more tailored impl of TLS • More flexible workload identity model • Certs use ECDH keys, Uses DH key exchange, can provide PFS and AE • Uses Protocol Buffers to serialize certificates and protocol messages https://cloud.google.com/docs/security/encryption-in-transit/application-layer-transport-security
  • 14. 14 | Copyright © 2022 ALTS Design • Transparent to applications / RPC invocations • Simplified cryptography (limited key exchange/cipher algorithms) • Authentication based on Identity NOT host machines • Identity tied to chain of trust / key distribution (transparent to application) • Authorization policies built around Identity model https://cloud.google.com/docs/security/encryption-in-transit/application-layer-transport-security
  • 15. 15 | Copyright © 2022 Transparent ALTS
  • 16. 16 | Copyright © 2022 Handshake / Record Protocol
  • 17. 17 | Copyright © 2022 ALTS is Proven at Scale Should we build ALTS?
  • 18. 18 | Copyright © 2022 No. Modern Building Blocks Exist Let’s take a look
  • 19. 19 | Copyright © 2022 Modern, Secure Service Networking • Transparent to applications / RPC invocations • Transparent encryption • Simplified cryptography (limited key exchange/cipher algorithms) • Authentication based on Identity NOT host machines • Identity tied to chain of trust / key distribution (transparent to application) • Authorization policies built around Identity model
  • 20. 20 | Copyright © 2022 Wireguard Transparent encryption made easy
  • 21. 21 | Copyright © 2022 Wireguard
  • 22. 22 | Copyright © 2022 Wireguard • A Kernel/OS module aimed at transparently encrypting IP between two nodes for VPN use cases • Simple code base (around 7k LOC vs e.g., 100K+ IPSec) • No cipher/protocol negotiation; fixed cryptography • For L3, encapsulate encrypted packets in UDP • Intended to use ciphers that afford more performance • Simplified configuration, out of band public-key exchange https://www.wireguard.com/papers/wireguard.pdf
  • 23. 23 | Copyright © 2022 Configure public keys and it just works
  • 24. 24 | Copyright © 2022 Opinionated Crypto (Based on the Noise Framework) • Elliptic Curve Diffie Hellman with Curve22519 • ChaCha20+Poly1305 for Authenticated Encryption • BLAKE2s for hashing • Optional Pre-Shared Key (PSK) • If a vulnerability is found, upgrade everything https://www.wireguard.com/papers/wireguard.pdf
  • 25. 25 | Copyright © 2022 Downsides of Wireguard • Could be very difficult to upgrade “everything” all at once for a discovered vulnerability • Not FIPS compliant • Will not be FIPS compliant − https://twitter.com/matthew_d_green/status/1443558648878350339 • Doesn’t solve for workload Mutual Authentication, Identity, or Authorization
  • 26. 26 | Copyright © 2022 Options to Layer Authentication for svc-to-svc? • Wireguard “authenticates” its peers but has no knowledge of svc identities • JWT access tokens (ie, OAuth 2.0 + Secure Token Service) • Custom mutual authentication mechanism (see Cilium) • Layer client certificates and TLS on top
  • 27. 27 | Copyright © 2022 Cilium’s approach to mutual authentication
  • 28. 28 | Copyright © 2022 Cilium’s approach to mutual authentication
  • 29. 29 | Copyright © 2022 Cilium’s approach to mutual authentication
  • 30. 30 | Copyright © 2022 Transport Layer Security TLS 1.3
  • 31. 31 | Copyright © 2022 Transport Layer Security
  • 32. 32 | Copyright © 2022 Transport Layer Security (TLS 1.2)
  • 33. 33 | Copyright © 2022 Transport Layer Security (TLS 1.3)
  • 34. 34 | Copyright © 2022 Client Authentication (mTLS)
  • 35. 35 | Copyright © 2022 Why use TLS 1.3? • Faster − Handshake takes fewer round trips • Safer (drop support for unsafe cryptographic algorithms) − Remove RSA key exchange (doesn’t provide Forward Secrecy) − Remove CBC/RC4 ciphers − Restrict DH parameters to known secure params − Handshake is signed by the server, cannot be tricked into downgrade − Chose AEAD ciphers
  • 36. 36 | Copyright © 2022 TLS Can do Authentication, Encryption, Integrity Checks • FIPS compliant implementations • Private keys do not get sent over the wire (like JWT tokens) • Can be terminated at the applications for end-to-end session • TLS 1.3 brings simplification for ciphers/protocol negotiation • Looks a lot more like Google ALTS!
  • 37. 37 | Copyright © 2022 Downsides to TLS • No standard way to specify identity • Key issuance, revocation, rotation can be complex • How do the applications handle key material safely? • What if applications mis-configure? • Every language/framework/library is different
  • 38. 38 | Copyright © 2022 Standard Workload Identity Framework with SPIFFE
  • 39. 39 | Copyright © 2022 Secure Production Identity Framework (for Everyone) • Open Source Identity Specification for workloads • Intended to solve the “universal workload identity problem” • Independent of application type, network, or platform/cloud • Specified with URI strings • Verified via signed credentials (x509, JWT, etc) • API and workflow for attestation built into SPIFFE implementations • Intended to eliminate passwords, other secrets, etc
  • 40. 40 | Copyright © 2022 SPIFFE
  • 41. 41 | Copyright © 2022 Who is Service A?
  • 42. 42 | Copyright © 2022 Identity described in SVID
  • 43. 43 | Copyright © 2022 Identity for Workloads
  • 44. 44 | Copyright © 2022 SPIRE is a Production Implementation of SPIFFE
  • 45. 45 | Copyright © 2022 Bringing it Together Transparently TLS 1.3 + SPIFFE
  • 46. 46 | Copyright © 2022 Now we know who Service A is…
  • 47. 47 | Copyright © 2022 An example implementation: Istio Ambient Mesh https://istio.io/latest/blog/2022/introducing-ambient-mesh/
  • 48. 48 | Copyright © 2022 Istio Ambient Mesh (w/ TLS 1.3 + SPIFFE) • Transparent to applications / RPC invocations • Transparent encryption • Simplified cryptography (limited key exchange/cipher algorithms) • Authentication based on Identity NOT host machines • Identity tied to chain of trust / key distribution (transparent to application) • Authorization policies built around Identity model
  • 49. 49 | Copyright © 2022 Demo
  • 50. 50 | Copyright © 2022 Additional Resources ● https://lp.solo.io/white-paper-zero-trust ● https://cloud.google.com/docs/security/encryption-in-transit/applica tion-layer-transport-security ● https://istio.io/latest/blog/2022/introducing-ambient-mesh/ ● https://www.wireguard.com/papers/wireguard.pdf ● https://www.solo.io/zero-trust/ ● https://academy.solo.io ● https://istio.io ● https://cilium.io https://lp.solo.io/istio-ambient-mesh-explained