SlideShare a Scribd company logo
Careful-Packing: A Practical and Scalable
Anti-Tampering Software Protection enforced by
Trusted Computing
Flavio Toffalini1,2
, Martín Ochoa2,3
, Jun Sun1,2
, and Jianying Zhou1
1
Singapore University of Technology and Design
2
ST Electronics-SUTD Cyber Security Laboratory
3
Cyxtera Technologies
Agenda
- Introduction
- Attacker’s goal and assumptions
- Careful-Packing’s approach
- Challenges
- Implementation
- Evaluation
The Problem
Secure Monitor:
- Antivirus
- Intrusion Detector
- Insider Threat Detector
Software
tampering
Careful-Packing’s goal
Avoiding an attacker to tamper with the software binary code.
void makeALotOfMoney() {
int x = 0;
for (int i = 0; i < maxIteraction; i++) {
int dollars = initialBudget();
If (dollars > 10)
// use a strategy
else
// use the super strategy..
x += dollars;
}
}
Software
Important piece of
code to protect
(critical section)
Attacker’s goal
Install a running compromised
client in a corporate network
Attacker model
- Tamper code offline: patching
- Tamper code online: patching & repair
- Debug/Emulate
Assumption: OS Task scheduler not compromised
Previous Approaches - Fully Trusted Computing (SGX)
How: memory regions physically isolated by hardware
Idea: move the entire process (or a piece of) in these areas
Limitation: (i) difficult interaction with the OS, (ii) limited available space
Untrusted memory Trusted memory
Process to protect
Previous Approaches - Purely Software Anti-Tampering (AT)
How: the software checks itself
Idea: using special functions (checkers) that inspect the memory
Limitation: these approaches rise the bar but not resolve the problem
Process to protect
Untrusted memory
Checkers
Careful-Packing’s Approach
Checkers inside a trusted region
Critical Sections outside
From trusted region monitors the
outside code!
Challenges
Denial of service (packing, heartbeat)
Concurrency
Installation phase
Booting phase
Packing
Critical Sections (CS) encrypted most of the time
CS plain only when the process needs to execution them
Heartbeat
TrustedUntrusted
Proof of correctness
Random choice
Insert proof of correctness inside a normal communication between client and server.
If the server does not receive a proof and/or the proof is wrong -> the attack is caught
Concurrency
The CS can be invoked by concurrency threads.
CS
PC Thread 1
PC Thread 2
CS = 1
A counter in the trusted module
traces how many threads are
using the a CS
decrypt(CS)
encrypt(CS)
Installation phase
Server: has a list of valid license keys and the critical sections associated
Client: identifies itself through one of its critical section
Client Server
(I) Installation Request (CS)
(II) Resp. License Key
(III) Key Sealing (II) Key Fetch
Key Repository
K1
K3
(0) Remote attestation
TrustedUntrusted
Boot phase
Client loads the sealed key to execute the packing mechanism
Key Sealed in the hard-drive
Proof of Concept Implementation
Monitoring agent (simple keystrokes and mouse tracing).
A client is executed on a client, collects data, and ships them to a central server.
Based on SGX for Windows platforms.
-10 LoC on top of the original program (only function call to checkers).
- Enclave size: ~300Kb
Evaluation - single instance
Around 5% with related to the original program
Evaluation - multiple parallel instances
Linear overhead with respect to the number of instances (no bottleneck)
Conclusion & Take away
- To some extent, it is possible to combine trusted computing technologies and anti-tampering
techniques to increase the security guarantees
- Extend careful-packing to protect variables (now we limit to the code)
- Fully untrusted environment: work on techniques that do not require a trusted scheduler
The End!
Thanks for your attention

More Related Content

Similar to Careful Packing

Modeling and Utilizing Security Knowledge for Eliciting Security Requirements
Modeling and Utilizing Security Knowledge for Eliciting Security RequirementsModeling and Utilizing Security Knowledge for Eliciting Security Requirements
Modeling and Utilizing Security Knowledge for Eliciting Security Requirements
Shinpei Hayashi
 
ThreatModeling.ppt
ThreatModeling.pptThreatModeling.ppt
ThreatModeling.ppt
tashon2
 
Verification of Security for Untrusted Third Party IP Cores
Verification of  Security for Untrusted Third Party IP CoresVerification of  Security for Untrusted Third Party IP Cores
Verification of Security for Untrusted Third Party IP Cores
IRJET Journal
 
FALCON.pptx
FALCON.pptxFALCON.pptx
FALCON.pptx
AvinashRanjan80
 
Secure sigfox ready devices recommendation guide
Secure sigfox ready devices  recommendation guideSecure sigfox ready devices  recommendation guide
Secure sigfox ready devices recommendation guide
Sigfox
 
Optional Reading - Symantec Stuxnet Dossier
Optional Reading - Symantec Stuxnet DossierOptional Reading - Symantec Stuxnet Dossier
Optional Reading - Symantec Stuxnet Dossier
Alireza Ghahrood
 
OSCh19
OSCh19OSCh19
OS_Ch19
OS_Ch19OS_Ch19
Ch19 OS
Ch19 OSCh19 OS
Ch19 OS
C.U
 
D03302030036
D03302030036D03302030036
D03302030036
theijes
 
Safe and secure programming practices for embedded devices
Safe and secure programming practices for embedded devicesSafe and secure programming practices for embedded devices
Safe and secure programming practices for embedded devices
Soumitra Bhattacharyya
 
Operational Technology Security Solution for Utilities
Operational Technology Security Solution for UtilitiesOperational Technology Security Solution for Utilities
Operational Technology Security Solution for Utilities
Krishna Chennareddy
 
Shift Left Security
Shift Left SecurityShift Left Security
Shift Left Security
BATbern
 
Chapter 09
Chapter 09Chapter 09
Chapter 09
Google
 
Vishwanath rakesh ece 561
Vishwanath rakesh ece 561Vishwanath rakesh ece 561
Vishwanath rakesh ece 561
RAKESH_CSU
 
Op Sy 03 Ch 61
Op Sy 03 Ch 61Op Sy 03 Ch 61
Op Sy 03 Ch 61
Google
 
Automated Cloud-Native Incident Response with Kubernetes and Service Mesh
Automated Cloud-Native Incident Response with Kubernetes and Service MeshAutomated Cloud-Native Incident Response with Kubernetes and Service Mesh
Automated Cloud-Native Incident Response with Kubernetes and Service Mesh
Matt Turner
 
Software Supply Chain Attacks (June 2021)
Software Supply Chain Attacks (June 2021)Software Supply Chain Attacks (June 2021)
Software Supply Chain Attacks (June 2021)
TzahiArabov
 
MIT Bitcoin Expo 2018 - Hardware Wallets Security
MIT Bitcoin Expo 2018 - Hardware Wallets SecurityMIT Bitcoin Expo 2018 - Hardware Wallets Security
MIT Bitcoin Expo 2018 - Hardware Wallets Security
Charles Guillemet
 
Removing Security Roadblocks to IoT Deployment Success
Removing Security Roadblocks to IoT Deployment SuccessRemoving Security Roadblocks to IoT Deployment Success
Removing Security Roadblocks to IoT Deployment Success
Microsoft Tech Community
 

Similar to Careful Packing (20)

Modeling and Utilizing Security Knowledge for Eliciting Security Requirements
Modeling and Utilizing Security Knowledge for Eliciting Security RequirementsModeling and Utilizing Security Knowledge for Eliciting Security Requirements
Modeling and Utilizing Security Knowledge for Eliciting Security Requirements
 
ThreatModeling.ppt
ThreatModeling.pptThreatModeling.ppt
ThreatModeling.ppt
 
Verification of Security for Untrusted Third Party IP Cores
Verification of  Security for Untrusted Third Party IP CoresVerification of  Security for Untrusted Third Party IP Cores
Verification of Security for Untrusted Third Party IP Cores
 
FALCON.pptx
FALCON.pptxFALCON.pptx
FALCON.pptx
 
Secure sigfox ready devices recommendation guide
Secure sigfox ready devices  recommendation guideSecure sigfox ready devices  recommendation guide
Secure sigfox ready devices recommendation guide
 
Optional Reading - Symantec Stuxnet Dossier
Optional Reading - Symantec Stuxnet DossierOptional Reading - Symantec Stuxnet Dossier
Optional Reading - Symantec Stuxnet Dossier
 
OSCh19
OSCh19OSCh19
OSCh19
 
OS_Ch19
OS_Ch19OS_Ch19
OS_Ch19
 
Ch19 OS
Ch19 OSCh19 OS
Ch19 OS
 
D03302030036
D03302030036D03302030036
D03302030036
 
Safe and secure programming practices for embedded devices
Safe and secure programming practices for embedded devicesSafe and secure programming practices for embedded devices
Safe and secure programming practices for embedded devices
 
Operational Technology Security Solution for Utilities
Operational Technology Security Solution for UtilitiesOperational Technology Security Solution for Utilities
Operational Technology Security Solution for Utilities
 
Shift Left Security
Shift Left SecurityShift Left Security
Shift Left Security
 
Chapter 09
Chapter 09Chapter 09
Chapter 09
 
Vishwanath rakesh ece 561
Vishwanath rakesh ece 561Vishwanath rakesh ece 561
Vishwanath rakesh ece 561
 
Op Sy 03 Ch 61
Op Sy 03 Ch 61Op Sy 03 Ch 61
Op Sy 03 Ch 61
 
Automated Cloud-Native Incident Response with Kubernetes and Service Mesh
Automated Cloud-Native Incident Response with Kubernetes and Service MeshAutomated Cloud-Native Incident Response with Kubernetes and Service Mesh
Automated Cloud-Native Incident Response with Kubernetes and Service Mesh
 
Software Supply Chain Attacks (June 2021)
Software Supply Chain Attacks (June 2021)Software Supply Chain Attacks (June 2021)
Software Supply Chain Attacks (June 2021)
 
MIT Bitcoin Expo 2018 - Hardware Wallets Security
MIT Bitcoin Expo 2018 - Hardware Wallets SecurityMIT Bitcoin Expo 2018 - Hardware Wallets Security
MIT Bitcoin Expo 2018 - Hardware Wallets Security
 
Removing Security Roadblocks to IoT Deployment Success
Removing Security Roadblocks to IoT Deployment SuccessRemoving Security Roadblocks to IoT Deployment Success
Removing Security Roadblocks to IoT Deployment Success
 

More from Flavio Toffalini

SGXMonitor Presentation - ACSAC 2022
SGXMonitor Presentation - ACSAC 2022SGXMonitor Presentation - ACSAC 2022
SGXMonitor Presentation - ACSAC 2022
Flavio Toffalini
 
SnakeGX (full version)
SnakeGX (full version) SnakeGX (full version)
SnakeGX (full version)
Flavio Toffalini
 
SnakeGX (short version)
SnakeGX (short version)SnakeGX (short version)
SnakeGX (short version)
Flavio Toffalini
 
ScaRR
ScaRRScaRR
Static Analysis of Context Leaks in Android Applications
Static Analysis of Context Leaks in Android ApplicationsStatic Analysis of Context Leaks in Android Applications
Static Analysis of Context Leaks in Android Applications
Flavio Toffalini
 
Google Dorks: Analysis, Creation, and new Defenses
Google Dorks: Analysis, Creation, and new DefensesGoogle Dorks: Analysis, Creation, and new Defenses
Google Dorks: Analysis, Creation, and new Defenses
Flavio Toffalini
 

More from Flavio Toffalini (6)

SGXMonitor Presentation - ACSAC 2022
SGXMonitor Presentation - ACSAC 2022SGXMonitor Presentation - ACSAC 2022
SGXMonitor Presentation - ACSAC 2022
 
SnakeGX (full version)
SnakeGX (full version) SnakeGX (full version)
SnakeGX (full version)
 
SnakeGX (short version)
SnakeGX (short version)SnakeGX (short version)
SnakeGX (short version)
 
ScaRR
ScaRRScaRR
ScaRR
 
Static Analysis of Context Leaks in Android Applications
Static Analysis of Context Leaks in Android ApplicationsStatic Analysis of Context Leaks in Android Applications
Static Analysis of Context Leaks in Android Applications
 
Google Dorks: Analysis, Creation, and new Defenses
Google Dorks: Analysis, Creation, and new DefensesGoogle Dorks: Analysis, Creation, and new Defenses
Google Dorks: Analysis, Creation, and new Defenses
 

Recently uploaded

Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
TheSMSPoint
 
What next after learning python programming basics
What next after learning python programming basicsWhat next after learning python programming basics
What next after learning python programming basics
Rakesh Kumar R
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Julian Hyde
 
Mobile app Development Services | Drona Infotech
Mobile app Development Services  | Drona InfotechMobile app Development Services  | Drona Infotech
Mobile app Development Services | Drona Infotech
Drona Infotech
 
Malibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed RoundMalibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed Round
sjcobrien
 
Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !
Marcin Chrost
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
Remote DBA Services
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
Rakesh Kumar R
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
kalichargn70th171
 
socradar-q1-2024-aviation-industry-report.pdf
socradar-q1-2024-aviation-industry-report.pdfsocradar-q1-2024-aviation-industry-report.pdf
socradar-q1-2024-aviation-industry-report.pdf
SOCRadar
 
SQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure MalaysiaSQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure Malaysia
GohKiangHock
 
316895207-SAP-Oil-and-Gas-Downstream-Training.pptx
316895207-SAP-Oil-and-Gas-Downstream-Training.pptx316895207-SAP-Oil-and-Gas-Downstream-Training.pptx
316895207-SAP-Oil-and-Gas-Downstream-Training.pptx
ssuserad3af4
 
SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
Yara Milbes
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
Green Software Development
 
zOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL DifferenceszOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL Differences
YousufSait3
 
Requirement Traceability in Xen Functional Safety
Requirement Traceability in Xen Functional SafetyRequirement Traceability in Xen Functional Safety
Requirement Traceability in Xen Functional Safety
Ayan Halder
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
Peter Muessig
 
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
mz5nrf0n
 

Recently uploaded (20)

Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
 
What next after learning python programming basics
What next after learning python programming basicsWhat next after learning python programming basics
What next after learning python programming basics
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
 
Mobile app Development Services | Drona Infotech
Mobile app Development Services  | Drona InfotechMobile app Development Services  | Drona Infotech
Mobile app Development Services | Drona Infotech
 
Malibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed RoundMalibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed Round
 
Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
 
socradar-q1-2024-aviation-industry-report.pdf
socradar-q1-2024-aviation-industry-report.pdfsocradar-q1-2024-aviation-industry-report.pdf
socradar-q1-2024-aviation-industry-report.pdf
 
SQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure MalaysiaSQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure Malaysia
 
316895207-SAP-Oil-and-Gas-Downstream-Training.pptx
316895207-SAP-Oil-and-Gas-Downstream-Training.pptx316895207-SAP-Oil-and-Gas-Downstream-Training.pptx
316895207-SAP-Oil-and-Gas-Downstream-Training.pptx
 
SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
 
zOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL DifferenceszOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL Differences
 
Requirement Traceability in Xen Functional Safety
Requirement Traceability in Xen Functional SafetyRequirement Traceability in Xen Functional Safety
Requirement Traceability in Xen Functional Safety
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
 
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
 

Careful Packing

  • 1. Careful-Packing: A Practical and Scalable Anti-Tampering Software Protection enforced by Trusted Computing Flavio Toffalini1,2 , Martín Ochoa2,3 , Jun Sun1,2 , and Jianying Zhou1 1 Singapore University of Technology and Design 2 ST Electronics-SUTD Cyber Security Laboratory 3 Cyxtera Technologies
  • 2. Agenda - Introduction - Attacker’s goal and assumptions - Careful-Packing’s approach - Challenges - Implementation - Evaluation
  • 3. The Problem Secure Monitor: - Antivirus - Intrusion Detector - Insider Threat Detector Software tampering
  • 4. Careful-Packing’s goal Avoiding an attacker to tamper with the software binary code. void makeALotOfMoney() { int x = 0; for (int i = 0; i < maxIteraction; i++) { int dollars = initialBudget(); If (dollars > 10) // use a strategy else // use the super strategy.. x += dollars; } } Software Important piece of code to protect (critical section)
  • 5. Attacker’s goal Install a running compromised client in a corporate network
  • 6. Attacker model - Tamper code offline: patching - Tamper code online: patching & repair - Debug/Emulate Assumption: OS Task scheduler not compromised
  • 7. Previous Approaches - Fully Trusted Computing (SGX) How: memory regions physically isolated by hardware Idea: move the entire process (or a piece of) in these areas Limitation: (i) difficult interaction with the OS, (ii) limited available space Untrusted memory Trusted memory Process to protect
  • 8. Previous Approaches - Purely Software Anti-Tampering (AT) How: the software checks itself Idea: using special functions (checkers) that inspect the memory Limitation: these approaches rise the bar but not resolve the problem Process to protect Untrusted memory Checkers
  • 9. Careful-Packing’s Approach Checkers inside a trusted region Critical Sections outside From trusted region monitors the outside code!
  • 10. Challenges Denial of service (packing, heartbeat) Concurrency Installation phase Booting phase
  • 11. Packing Critical Sections (CS) encrypted most of the time CS plain only when the process needs to execution them
  • 12. Heartbeat TrustedUntrusted Proof of correctness Random choice Insert proof of correctness inside a normal communication between client and server. If the server does not receive a proof and/or the proof is wrong -> the attack is caught
  • 13. Concurrency The CS can be invoked by concurrency threads. CS PC Thread 1 PC Thread 2 CS = 1 A counter in the trusted module traces how many threads are using the a CS decrypt(CS) encrypt(CS)
  • 14. Installation phase Server: has a list of valid license keys and the critical sections associated Client: identifies itself through one of its critical section Client Server (I) Installation Request (CS) (II) Resp. License Key (III) Key Sealing (II) Key Fetch Key Repository K1 K3 (0) Remote attestation
  • 15. TrustedUntrusted Boot phase Client loads the sealed key to execute the packing mechanism Key Sealed in the hard-drive
  • 16. Proof of Concept Implementation Monitoring agent (simple keystrokes and mouse tracing). A client is executed on a client, collects data, and ships them to a central server. Based on SGX for Windows platforms. -10 LoC on top of the original program (only function call to checkers). - Enclave size: ~300Kb
  • 17. Evaluation - single instance Around 5% with related to the original program
  • 18. Evaluation - multiple parallel instances Linear overhead with respect to the number of instances (no bottleneck)
  • 19. Conclusion & Take away - To some extent, it is possible to combine trusted computing technologies and anti-tampering techniques to increase the security guarantees - Extend careful-packing to protect variables (now we limit to the code) - Fully untrusted environment: work on techniques that do not require a trusted scheduler
  • 20. The End! Thanks for your attention