Presentation is loading. Please wait.

Presentation is loading. Please wait.

BIND: A F INE - GRAINED ATTESTATION S ERVICE FOR S ECURE D ISTRIBUTED S YSTEMS Presented by: Maryam Alipour-Aghdam University of Guelph.

Similar presentations


Presentation on theme: "BIND: A F INE - GRAINED ATTESTATION S ERVICE FOR S ECURE D ISTRIBUTED S YSTEMS Presented by: Maryam Alipour-Aghdam University of Guelph."— Presentation transcript:

1 BIND: A F INE - GRAINED ATTESTATION S ERVICE FOR S ECURE D ISTRIBUTED S YSTEMS Presented by: Maryam Alipour-Aghdam University of Guelph

2 O VERVIEW Motivation BIND Overview BIND Interface BIND Properties Application of BIND 2

3 O VERVIEW Motivation BIND Overview BIND Interface BIND Properties Application of BIND 3

4 M OTIVATION To securing distributed systems To address issues such as:  difficulty in verification of hash due to variability in software verification and configuration  to address the time of use and the time of discrepancy the code may be correct at the attestation time and compromised at the use time. 4

5 O VERVIEW Motivation BIND Overview BIND Interface BIND Properties Application of BIND 5

6 BIND O VERVIEW Security issue  Byzantine attack: A remote software platform may be compromised and run malicious code. The purpose of using code attestation  identify what software is running on a remote platform  detect a corrupted participant 6

7 BIND O VERVIEW BIND Proposed Properties  perform fine-grained attestation  BIND attests only the piece of code instead of entire memory content  narrows the gap between time-of-attestation and time-of-use  measures a piece of code immediately before it executed  use a sand boxing mechanism to protect the execution of attested code  ties the code attestation with the data that the code produces 7

8 BIND O VERVIEW Distributed system model:  Process  Data  Intermediary 8

9 BIND O VERVIEW Distributed system model:  Process  a producer or consumer of data  represent program logic  a piece of software code which needs to be attested *  Data  information exchange between the processes  Primitive data : external input to distributed systems  Derived data :  output of some process  generated by applying protocol logic over some input data 9

10 BIND O VERVIEW Distributed system model:  Intermediary  medium over which data is communicated from/to a process  network that forward the data between hosts  operating system that dispatches the data to the process  hard drive or any part of RAM outside the process 10

11 BIND O VERVIEW 11 PCP B P A Local Configuration Local Configuration Local Configuration 1.1.1.1 2.2.2.23.3.3.3 Ping 3.3.3.3 -t 10 Dest= 3.3.3.3, TTL=10 Dest= 3.3.3.3, TTL=9 Pong Figure 1. Simple Ping: The conceptual model for distributed protocols

12 BIND O VERVIEW 12 Figure 1. Simple Ping: The conceptual model for distributed protocols

13 BIND O VERVIEW 13 Figure 1. Simple Ping: The conceptual model for distributed protocols

14 BIND O VERVIEW 14 Figure 1. Simple Ping: The conceptual model for distributed protocols

15 BIND O VERVIEW 15 Figure 1. Simple Ping: The conceptual model for distributed protocols

16 BIND O VERVIEW 16 Figure 1. Simple Ping: The conceptual model for distributed protocols

17 BIND O VERVIEW 17 Figure 1. Simple Ping: The conceptual model for distributed protocols

18 BIND O VERVIEW Ping-Pong Protocol:  Process  PA, PB, and PC which runs on host A, B, and C  Data  User command (primitive data)  Ping pong messages (derived data)  Local IP address of each host (primitive data)  Intermediaries  network and operating system 18

19 BIND O VERVIEW Security problems in distributed systems Byzantine attacker model:  Malicious intermediary and the data misuse attack  Malicious process and the data falsification attack 19

20 BIND O VERVIEW Security problems in distributed systems Byzantine attacker model:  Malicious intermediary and the data misuse attack  Threats:  alter and inject protocol data  data misuse attack which use authenticated protocol data in a malicious way  Solution:  employ cryptography constructions  Example: message authentication code, digital signature 20

21 BIND O VERVIEW Security problems in distributed systems Byzantine attacker model:  Malicious process and the data falsification attack  Threats:  Injecting bogus data into the distributed systems (data falsification attack)  Traditional cryptography can not be used  As malicious process has the correct cryptography keys to disguise itself as a legitimate participant  Example: a malicious process can modify the TTL field in a ping message. 21

22 BIND O VERVIEW Attestation Design Consideration  Coarse-grained attestation  Attestation over entire software platforms  Fine-grained attestation  attestation over a critical piece of code  create distinction between process and intermediary  to enable the notion of granularity in attestation  to create boundary between what code is being attested to and what is not  both process and intermediary exist in the form of software code in reality 22

23 BIND O VERVIEW Attestation Design Consideration  Fine-grained attestation properties  simplifies hash verification  perform software upgrade more easily as expected hash for each process can be updated independently  allow distributed system architect to focus on the security of critical module by singling it out form a complicated system  does not address intermediary attacks 23

24 BIND O VERVIEW Desired Properties of BIND Attestation Service  should be free of all software attacks  process is correct at load-time  needs to be efficient 24

25 BIND O VERVIEW Process and Data Integrity  Defining Process and Data Integrity  process is a piece of code (process)  when the data is primitive and is genuine (data integrity)  the data is derived by running a genuine process over genuine data inputs (data integrity) 25

26 BIND O VERVIEW Techniques to ensure the integrity of primitive data  Semantic Check  Example: A distributed scientific computing application checks if an input matrix is well-formed.  Certificates  use a central trusted authority to sign certificate for primitive data  Trusted Path  use trusted path mechanisms for input data to make sure the data came from an authenticated user 26

27 BIND O VERVIEW Techniques to ensure the integrity of process and derived data  Authenticator  is produced by BIND  Generates a process for every piece of data  Is attached to data through its life-time  Example: when the data is sent over the network, or stored and fetched from local untrusted storage 27

28 O VERVIEW Motivation BIND Overview BIND Interface BIND Properties Application of BIND 28

29 BIND I NTERFACE 29 1. Initiate an attestation phase 2. Memory addresses of the process input data 3. Size of process code 4. receiving the ATTESTATION-INIT request 5. Verifies authenticator on input data 6. Hashes the process code along with input data 7. If above step successful, yields control to the processor with a success indicator

30 BIND I NTERFACE 30 1. In response to ATTESTATION-COMPLETE command 2. BIND computes an authentication tag over 3. an output data 4. a hash of the process code 5. Authentication tag binds the output data with the code that has generated it. 6. BINDs undoes the protection it has set up for the protection. 7. BINDs returns the authenticator to the process.

31 O VERVIEW Motivation BIND Overview BIND Interface BIND Properties Application of BIND 31

32 BIND P ROPERTIES  Fine-grained Attestation:  ATTESTATION-INIT indicate the beginning of process  ATTESTATION-COMPLETE indicates the end of process  Binding Process and Data Integrity  derived data builds on the integrity of its generating process  integrity of a processes and data are inseparable from each other in DC 32

33 BIND P ROPERTIES  Transitive Integrity Verification  BINDs achieves this property with O(1) overhead.  Efficient  TPM’s hardware-based cryptography engine is utilized to enable fast cryptography computations needed for attestation. 33

34 BIND P ROPERTIES 34 Trusted Platform Module (TPM)

35 BIND P ROPERTIES  TPM in Attestation Overview  The signature on the input data is validated through public signing key of TPM that signed the input data  Secure Kernel (SK) sends the output data to be signed by TPM.  SK utilizes the TPM’ s hashing and digital signature functionalities. 35

36 BIND P ROPERTIES  A Symmetric Key Alternative  Asymmetric key cryptography has high computational overhead  A secret MAC key should be established between two TPMs.  TPM’ s SHA-1 function instantiate a MAC between TPMs.  The key should be sealed in TPM’s memory and should be remained invisible to untrusted party  Example: application code, peripheral devices 36

37 BIND P ROPERTIES  A Symmetric Key Alternative  The key are unsealed to the SK upon time of use which used by SK  to verify the MAC on input data  compute the MAC over output data and the hash of process code  secret key remain in SK’s memory for a controlled period of time  after usage the secret key should be destroyed  SK should be executed in a globally uninterrupted manner to prevent untrusted OS Kernel form reading off the secret key information 37

38 BIND P ROPERTIES  A Symmetric Key Alternative  Diffie-Hellman for key exchange in BIND 38 K − 1 (A) is private signing key for TPMA The signing pair (K-1 (A), KA) is created inside TPM SHA-1 functionality presents MAC function using the TPM

39 O VERVIEW Motivation BIND Overview BIND Interface BIND Properties Application of BIND 39

40 A PPLICATION OF BIND  Securing distributed computation applications with BIND  master / slave structure  master splits the job to tasks and send them to slaves (participants).  master process asks BIND to sign a task description before sending  slaves ask local BIND to verify the integrity of task description  computation results be will signed by BIND along with an integrity proof of the participant process  master check whether the result is trustworthy after the results reported to the master. 40

41 A PPLICATION OF BIND o BIND properties in distributed computing application  Deterministic Guarantee  BIND guarantees what code has been run in generating the result.  General  BIND is applicable to all types of distributed computation application.  regardless of what function we want to compute  Efficient  For BIND, the entire code is measured only once regardless of how many times each instruction executed. 41

42 A PPLICATION OF BIND  BGP Overview  Border Gateway Protocol (BGP)  a path vector routing protocol  establishing a path to each existing prefix  Autonomous System (AS) is a collection of routers under one administrative domain.  In BGP, neighbouring Ases exchange prefix information through BGP Update messages.  A BGP update message consists of a prefix along with a ASPATH. 42

43 A PPLICATION OF BIND  Attacks Against BGP  Prefix theft: unauthorized prefix announcement  ASPATH falsification in BGP update messages  Both attacks attract traffic to a point in the network that would otherwise not receive the traffic.  blackhole attack: allows an attacker to control packets that it would otherwise have no control over. 43

44 A PPLICATION OF BIND  Securing BGP using BIND  two main mechanisms we need to secure BGP  verify the correctness of the origin of the prefix  prevent a malicious AS from altering the ASPATH  prefix is categorized as primitive data  prefix integrity: we adopt the known certificate approach, where a prefix owner obtains a prefix certificate from a trusted authority. 44

45 A PPLICATION OF BIND  Securing BGP using BIND  use attestation for ASPATH  use BIND interface for attestation  create a trusted attestation service in each router  ASPATH is cryptographically protected by a message authentication code 45

46 C ONCLUSION fine-grained attestation technique narrow the time of use and time of attestation establishes a trusted environment for distributed systems simplify the design of distributed system a hardware design base of BIND is considered for future work 46

47 Thank you 47


Download ppt "BIND: A F INE - GRAINED ATTESTATION S ERVICE FOR S ECURE D ISTRIBUTED S YSTEMS Presented by: Maryam Alipour-Aghdam University of Guelph."

Similar presentations


Ads by Google