protecting epc user plane & charging with intel® software ... · 9/3/2019  · 3.30pm -...

14
Protecting EPC User plane & Charging with Intel® Software Guard Extensions (Intel® SGX) Somnath Chakrabarti - Security & Privacy Research/Intel Labs ONF Connect 2019

Upload: others

Post on 13-Aug-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Protecting EPC User plane & Charging with Intel® Software ... · 9/3/2019  · 3.30pm - Somnath Chakrabarti - Protecting EPC User Plane Created Date: 9/20/2019 9:58:07 PM

Protecting EPC User plane & Charging with Intel® Software Guard Extensions (Intel® SGX)Somnath Chakrabarti - Security & Privacy Research/Intel Labs

ONF Connect 2019

Page 2: Protecting EPC User plane & Charging with Intel® Software ... · 9/3/2019  · 3.30pm - Somnath Chakrabarti - Protecting EPC User Plane Created Date: 9/20/2019 9:58:07 PM

Telco Network

Background - Network Functions Evolving For NFV Cloud

NFV Cloud - Open PlatformTelco Facility – ASIC Hardware

Internet

Fixed Function packet processing

Network Functions Virtualized Network Functions

Software based packet processing

Physical Appliance

Built into Telco HW Function

In-Building Access

Protection from Insiders

Internet

Build

Distributed SW Infra-

Automated instantiation w/ VNFs

+ Secured Remote Access

+ Protection from Outsiders

Securityfocus

2

Page 3: Protecting EPC User plane & Charging with Intel® Software ... · 9/3/2019  · 3.30pm - Somnath Chakrabarti - Protecting EPC User Plane Created Date: 9/20/2019 9:58:07 PM

3

Router

Firewall

Load Balancer

Deep Packet Inspection/ IDS

Router EPC VPN Firewall LoadBalancer DPI/IDS

N-tupleLookup

Filters

StateMachines

KeyManager

Hash Table

PolicyManager …

Software Building Blocks

EPC

VPN

Virtual network functions on commodity hardwareFixed network functions on proprietary hardware

VS.

Virtual Network Function – Software Building Blocks

Page 4: Protecting EPC User plane & Charging with Intel® Software ... · 9/3/2019  · 3.30pm - Somnath Chakrabarti - Protecting EPC User Plane Created Date: 9/20/2019 9:58:07 PM

Application gains ability to defend its own secrets– Smallest attack surface (App Memory + processor)– Malware that subverts OS/VMM, BIOS, Drivers etc. cannot steal app

secrets

Familiar development/debug– Single application environment– Build on existing ecosystem expertise

Familiar deployment model– Platform integration not a bottleneck to deployment of trusted apps

Proxy Proxy Proxy

Hardware

VMM

OS

App App App

Scalable security within mainstream environment

Attack surface todayAttack surface with Enclaves

XX

Reducing the “Attack Surface” with Software Guard Extensions (SGX)

Attack Surface

4

Page 5: Protecting EPC User plane & Charging with Intel® Software ... · 9/3/2019  · 3.30pm - Somnath Chakrabarti - Protecting EPC User Plane Created Date: 9/20/2019 9:58:07 PM

Security sensitive VNF Hardening with Intel® SGX – Use cases

NFV/SDN Building BlocksSGX Value Add*

Software Isolation Runtime Physical Attacks

N-tuple lookup Y Y

Filter Packets, State Machines Y Y

MEC/Cloudlets/Edge cloud/5G VNFs Y Y

Protection of Keys (Encryption keys, Certificates, IPSec keys) Y Y

IP Protection of Algorithms, Data (SIG Files, Policies, Hash Tables, Analytics Meta Data) Y Y

• Software Isolation: Encrypted & protected pages, OS/VMM not in TCB, contained impact of leaky VNFs

• Runtime Physical Attacks: System administrators, operators not in TCB

• Other SGX Cloud usages applicable to NFV: Keys Protection, DB protection, SSL termination

* Potential Security-Performance Trade-offs

5

Page 6: Protecting EPC User plane & Charging with Intel® Software ... · 9/3/2019  · 3.30pm - Somnath Chakrabarti - Protecting EPC User Plane Created Date: 9/20/2019 9:58:07 PM

Design choices : Packet processing inside SGX enclave

• Enclave packet access mechanisms

• 1 core - Calling into enclave to transfer every packet or burst of packets (bad idea)

• 1 core - Calling into enclave everytime to transfer pointers to packets (still bad)

• 2 cores – I/O core outside the enclave. Packet processing core inside the enclave

• call into enclave just once to initialize Rx and Tx ring pointers (current Prototype)

• 1 core – setup the NIC/DMA outside the enclave.

• call into enclave and run I/O engine inside enclave (new prototype)

6

Page 7: Protecting EPC User plane & Charging with Intel® Software ... · 9/3/2019  · 3.30pm - Somnath Chakrabarti - Protecting EPC User Plane Created Date: 9/20/2019 9:58:07 PM

7

Goal of OMEC - Open Mobile Evolved Core

Mobile Network Core

(EPC)

DATACENTERS

Access Network Network

Backhaul

BaseStation

(eNB)

Control

User Data

InternetMME Service

Gateway(SGW)

HSS PCRF

MME: Mobility Management Engine (Control)HSS: Home Subscriber Services (Authentication)PCRF: Policy and Charging Rules FunctionS-GW: Service Gateway (Charging, services, …)P-GW: Packet Gateway (Router)

Can we securely run Telco core infrastructure on high volume servers to deliver operational capacity?

Build

①②

③④

Packet Gateway

(PGW)

Charging

Page 8: Protecting EPC User plane & Charging with Intel® Software ... · 9/3/2019  · 3.30pm - Somnath Chakrabarti - Protecting EPC User Plane Created Date: 9/20/2019 9:58:07 PM

SGX Billing Dealer In

SGX Billing Router

SGX Billing Dealer Out

SGX enabled Secure and Auditable Billing

Dealer Key Store

CDR

8Intel Confidential

Service Gateway Control(SGW-C)

Packet Gateway Control

(PGW-C)

Service Gateway User Data(SGW-U)

Packet Gateway User Data(PGW-U)

Mobility Management Entity(MME)

Home Subscription Server (HSS)

Policy Charging Rules Function

(PCRF)Subscriber Data Base

CDF

CTF

Internet

Offline Charging Service(OFCS)

Mobile Network Core orEvolved Packet Core (EPC)

Data

Control

OMEC 1.0 – Fully Featured & Intel® SGX Hardened Charging

Access Network

② ③

E2E Comprehensive EPC Infrastructure:

• https://github.com/omec-project

• Fully protected & distributed Xeon E3 based SGX enabled billing system, automated, real time billing data collection and storage.

• SGX based auditable mutual attestation. Provides confidentiality and integrity of Charge Data Records (CDRs)

• Cross platform deployment orchestration, provisioning and network configuration tools ready- KVM, AWS, Docker, K8, …

SharedStorage

Data

Build

MME: Mobility Management Engine (Control)HSS: Home Subscriber Services (Authentication)PCRF: Policy and Charging Rules FunctionSGW-C: Service Gateway ControlSGW-U: Serving Gateway UserPGW-C: Packet Gateway ControlPGW-U: Packet Gateway UserSubscriber DatabaseFPC: Forwarding Policy Control (IETF)SDN: Software Defined Network ControllerOFCS: Offline Charging ServiceCTF: Charge Trigger FunctionCDF: Charge Data FunctionVNF: Virtual Network Function

Page 9: Protecting EPC User plane & Charging with Intel® Software ... · 9/3/2019  · 3.30pm - Somnath Chakrabarti - Protecting EPC User Plane Created Date: 9/20/2019 9:58:07 PM

9

OMEC – Charge Data Security

Charge TriggerFunction

MessageQueue

CDR

Service Gateway User Data(SGW-U)

Intel SGX KeyGen

Dealer Enclave measurements

SprintServer Cert

IntelIAS Cert

Dealer Enclave measurements

IntelIAS Cert

Intel SGX Billing Dealer

In

KeyGen Enclave measurements

IntelIAS Cert

SprintCA Cert

Intel SGX Billing Dealer

In

KeyGen Enclave measurements

IntelIAS Cert

SprintCA Cert

TLSClient Auth

+ SGX Attestation

TLS

RSA 3072 + SH

A256

With SG

X

Mutual Atte

statio

n

TLSRSA 3072 + SHA256

With SGX

Mutual Attestation

Dealer Enclave measurements

SprintServer Cert

IntelIAS Cert

TLSClient Auth

+ SGX Attestation

SGX SDK ProtectFSsgx_rijndael128GCM_encrypt()

AES-GCM 128Protected messages

AES-GCM 128Protected messages

Page 10: Protecting EPC User plane & Charging with Intel® Software ... · 9/3/2019  · 3.30pm - Somnath Chakrabarti - Protecting EPC User Plane Created Date: 9/20/2019 9:58:07 PM

Intel SGX Billing Dealer

Intel SGX Billing Dealer

10

OMEC – Charge Data Security contd.

Charge TriggerFunction

CDR

Service Gateway User Data(SGW-U)

Intel SGX Billing Dealer

Intel SGX Billing Dealer

Intel SGX Billing Dealer

Intel SGX Billing Dealer

Audit

SGX Attestation &

Verification

• Provides Confidentiality and Integrity of CDR Records• Telco out of trust boundary provides ease of auditability• Scalable

Page 11: Protecting EPC User plane & Charging with Intel® Software ... · 9/3/2019  · 3.30pm - Somnath Chakrabarti - Protecting EPC User Plane Created Date: 9/20/2019 9:58:07 PM

Mobile Infra Core Control/Data plane configuration – With Intel® SGX Dataplane and Billing

11

SGX based Packet Gateway(PGW)/Dataplane

Service Gateway (SGW)/Control Plane

Mobility Management Entity(MME)

Home Subscription Server (HSS)

Policy Charging Rules Function

(PCRF)Subscriber Data Base

Charge Trigger/Data

Function

Internet

Offline Charging Service(OFCS)

Mobile Network Core orEvolved Packet Core (EPC)

Control

Access Network

SGX Billing Dealer OutSGX Key Store

CSV

• Requires minimum 1+1 SGX server per dataplane frame of capacity • n+1 SGX servers required for upto n dataplane frames of capacity

NGIC CP 1U

SGX Billing (KMS + DLR-OUT) 1U

NGIC Setup rack

NGIC Secure DP 1U/2U

Page 12: Protecting EPC User plane & Charging with Intel® Software ... · 9/3/2019  · 3.30pm - Somnath Chakrabarti - Protecting EPC User Plane Created Date: 9/20/2019 9:58:07 PM

Current prototype performance numbers with hash table lookup

12

Application : L2FWDLookup type : Hash table (1M 5-tuple entries, ~13MB)

• Additional SGX threads can enhance performance. • Queuing/de-queuing adds additional overhead (queuing theory)

10Gbps Line Rate 20Gbps Line RateDPDK w/ Hash Lookup 9.6 14.8SGX w/ hash Lookup 9.6 13.4

9.6

14.8

9.6

13.4

Thro

uput

(Gbp

s)

Regular DPDK (1 core) vs. SGX DPDK (2 cores)* Lab research data. potential Security-Performance Trade-offs

Page 13: Protecting EPC User plane & Charging with Intel® Software ... · 9/3/2019  · 3.30pm - Somnath Chakrabarti - Protecting EPC User Plane Created Date: 9/20/2019 9:58:07 PM

Future OMEC Mobile Infra Core Control/Data plane – WIP

Service Gateway Control(SGW-C)

Service Gateway User Data(SGW-U)

Mobility Management Entity

(MME)

Home Subscription Server

Policy Charging Rules Function

(PCRF)

Subscriber Data Base

(Cassandra DB)CDF/CTF

Internet

Telco Offline Charging Service(OFCS)

Mobile Network Core orEvolved Packet Core (EPC)

Data on IPSec

Control

Access Network

Data

CDR

GW GWData

Protecting • SPGW-U and SPGW-C• Subscriber databases• Transient databases• MME• GTP-C/U links

SGX Billing

Page 14: Protecting EPC User plane & Charging with Intel® Software ... · 9/3/2019  · 3.30pm - Somnath Chakrabarti - Protecting EPC User Plane Created Date: 9/20/2019 9:58:07 PM

Thank YouQuestions ?

14