+ All Categories
Home > Technology > Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

Date post: 14-Jan-2015
Category:
Upload: iminds
View: 292 times
Download: 0 times
Share this document with a friend
Description:
Wouter Joosen, iMinds Security Department, iMinds The Conference 2013 Track 1, Disruptive Digital Research Technologies
Popular Tags:
1
Transcript
Page 1: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

Dec 5th, 2013

News from the Software & Security Frontline

Wouter Joosen, Director iMinds Security Department

Page 2: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

Page 3: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

Page 4: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

TODAY IS DIFFERENT

Page 5: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

outline 1. Impact of software quality on security – two technologies

2. Future for embedded systems

3. System and software engineering AND system an software

management: sneak preview on the DREAMAAS-ICON (2012-2103) with UPnxt, Noesis and Luciad…

Page 6: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

the impact of software quality on security

Page 7: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

impact of software quality on security

• Specialists: verification technology – Direct assessment (A)

• For any developer

– Indirect assessment (B)

Page 8: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

<1A> VeriFast

Software Quality @ Development time

Page 9: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

VeriFast

VeriFast

C or Java source code Specification Proof hints

"0 errors found"

Guarantees that program ● has no buffer overflows ● has no integer overflows ● has no data races ● uses APIs correctly ● satisfies specification Symbolic execution

trace showing error

or

User can step through trace and inspect symbolic states

~ 1s

Page 10: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

VeriFast: verified programs -cases ● Fine-grained concurrent data structures

● Functional correctness

● JavaCard applets (incl. for Belgian eID card) ● Crash-freedom, safe API usage

● Linux device drivers Memory safety, data-race-freedom, safe API usage

● Embedded software (for Telefonica home gateway) ● Memory safety, data-race-freedom, safe API usage

● Cryptographic protocol implementations (RPC, Needham-Schroeder-Lowe)

Page 11: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

<1B> Fault Prediction, based on Text Mining Software Quality @ Development time

Page 12: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf 12

Research question Can we build a (good quality) classifier that

predicts vulnerable components in C++ applications?

Idea: Analyze the tokens in each component's code (e.g., if, while, var names) and use them

as predictors

Page 13: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf 13

Prediction in the future

v 4.0 v 5.0 v 12.0 ... Build

prediction model (using 1 version)

Test performance of prediction model

(in each of the following 8 version)

Page 14: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf 14

Benchmark ● Find at least 80% of the components

containing vulnerabilities (cost) by inspecting at most 20% of the application components (benefit)

Page 15: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf 15

Results ● We exceedingly meet the benchmark

● For all the “future” versions

● Better than best results in the state-of-the-

art (i.e., Shin et al., TSE 37(6), 2011)

Page 16: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

< 2> (EMBEDDED) SYSTEMS

Page 17: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

Emerging technology: PMA’s

• Protected Module Architectures: – Low-level security architectures that implement an “inverse

sandbox”: protect a module from a buggy or malicious environment • E.g. run code securely even on top of a kernel infected with malware

Page 18: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

Emerging technology: PMA’s • Implementations

– Pioneering work by Parno et. al. at CMU: the Flicker system • https://sparrow.ece.cmu.edu/group/flicker.html • Bryan Parno was awarded the ACM 2010 doctoral thesis award for this work

– Follow-up implementations, including several from iMinds: • Fides (Strackx et al, CCS 2012), Sancus (Noorman et al., Usenix Sec

2013)

– INTEL publicly announced their implementation this summer: • http://software.intel.com/en-us/intel-isa-extensions#pid-19539-1495

Page 19: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

Protected module architecture (simplified) • Modules consist of:

– A code section, with designated entry points – A data section (also containing control data)

• The PMA: – Controls creation/deletion of

modules – Enforces a PC-based access

control model

Page 20: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

Research challenges ahead

• How can Protected Module Architectures efficiently, securely and reliably persist state?

• What is the minimal hardware support required to implement PMA’s: – That support remote attestation – That support state continuity – That do not need software in the TCB

Page 21: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

Research challenges ahead • How do we offer higher-level abstractions for these low-level security

architectures? – Key idea: maintain the modularity properties of source code at machine

code level by secure compilation. • How do we provide assurance of the correctness of the protected

module itself? – These modules might be small enough to be amenable to formal

verification

Page 22: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

<3> Management Of Software and Systems

Page 23: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

An architecture for MultiCloud

Page 24: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

Page 25: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

Page 26: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

Where is the hype?

26

<3> JUST IN TIME

Page 27: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

Recap 3 dimensions, 3 illustrations

1. Impact of software quality on security (broad audience)

2. Future for embedded systems (quite a lot of ICT players in Flanders:

3. System and software engineering AND system an software management (DEVOPS).

Page 28: Wouter Joosen, iMinds Security Department, iMinds The Conference 2013

@iminds #imindsconf

Join iMinds

Wouter Joosen [email protected]

Recommended