a derivation framework for dependent security label
play

A Derivation Framework for Dependent Security Label Inference - PowerPoint PPT Presentation

A Derivation Framework for Dependent Security Label Inference Peixuan Li and Danfeng Zhang Pennsylvania State University University Park, PA, 16801 {pzl129, zhang}@cse.psu.edu Background o Information Flow Analysis o Study: how information


  1. A Derivation Framework for Dependent Security Label Inference Peixuan Li and Danfeng Zhang Pennsylvania State University University Park, PA, 16801 {pzl129, zhang}@cse.psu.edu

  2. Background o Information Flow Analysis o Study: how information propagate through the system o Goal: prevent leakage of sensitive information x y z m temp p 2

  3. Background o Information Flow Analysis Security Specifications Ø Annotate the program with security labels Ø Track and validate flows in program § Explicit Flow 𝑦, 𝑧, 𝑨 : ??? § Implicit Flow Program (secure) 3

  4. Program Annotation o Annotation Burden § Time-consuming and error-prone § Requiring good knowledge of implementation details § Hard to distinguish incorrect label from false-positive 4

  5. Security Label Inference o Goal: to infer the security labels o Lattice Labels [Denning 1976] classified, trusted S o Rehof-Mogensen Algorithm [Rehof et al. 1999] o Implemented in Jif [Myers et al. 2006] classified, untrusted public, trusted P v Expressiveness public, untrusted • Security levels are unknown in static time [Chen et al. 2018; Li and Zhang 2017] • Security levels are not fixed during execution [Murray et al 2016; Lourenço and Caires 2015; Zhang et al. 2015; ] v Precision • Limited to path-insensitive analyses [Li and Zhang 2017; Zhang et al. 2015] 5

  6. Dependent Security Labels o Dependent Label: labels that may depend on concrete program states o Ternary Labels [Li and Zhang 2017] : o Predicate Labels [Murray et al. 2016, Polikarpova et al.2018] : Ø Limited to two-point Lattice o Permission Labels [Chen et al. 2018] : o Dynamic Labels [Myers et al. 2006]: 𝑚 ∶ 𝑀𝑏𝑐𝑓𝑚; 𝑦 ∶ 𝑚 ; o Inference Engines o Liquid Type [Rondon et al. 2008] o SMT Solver o Permission Label Inference [Chen et al. 2018] Ø Exponential 6

  7. Overview o Goal: to efficiently infer the dependent security labels o Ternary label Dependent Security Labels o Predicate as Labels Core Constraint Language o Permission Predicates o Dynamic Labels Inference Engines One-Shot Early-Accept Derivation Framework Early-Reject Hybrid 7 Evaluation

  8. Core Constraint Language Syntax o Security Specifications Any decidable predicates 𝑦, 𝑧, 𝑨 : ??? Program (secure) 8 Encoding details are in the paper…

  9. Overview o Goal: to efficiently infer the dependent security labels o Ternary label Dependent Security Labels o Predicate as Labels Core Constraint Language o Permission Predicates o Dynamic Labels Inference Engines One-Shot Early-Accept Derivation Framework Early-Reject Hybrid 9 Evaluation

  10. Derivation Framework o Insights : deriving constraints into a more manageable format. 2. Derive Ideal constraint format : Constraints (satisfiable) 𝛽 . : S; 𝛽 1 : P ; 𝑒 > 0 : 𝛽 . : 𝑒 > 0 ? S ∶ P 𝛽 1 : P 1. Partition 𝛽 . : P; 𝛽 1 : P ; 𝑒 ≤ 0 : v No overlapping predicates ⟹ Construct a global solution by merging local solutions 10

  11. Derivation Framework o Partitioning o Non-overlapping predicates o Derivations Ø Sound Derivation: ü Solution Preserved § solutions on sound-derivation always work for original constraints. Ø Complete Derivation: § solutions on original constraints always work for complete-derivations. Ø Equivalent Derivation ü Counter-example Preserved 11

  12. Sound Derivation Solution from Sound-Derivations always work for original constraints. o Derivation 1: (sound) : Projected Constraints (satisfiable) v A sound derivation can be generated by: 𝐷 :;<=> = ⋀(𝐷 ;BCDC=EF ) , if ∃ 𝑄 ;BCDC=EF ∧ 𝑄 :;<=> Projected 12

  13. Complete Derivation o Counter-examples on Complete-Derivation always exist for original constraints Derivation 1: (complete) : Inferred Constraints (unsatisfiable) A complete derivation can be generated by: v Inferred 𝐷 K;LMFNON = ⋀(𝐷 ;BCDC=EF ) , if ∀ 𝑄 K;LMFNON ⟹ 𝑄 ;BCDC=EF 13

  14. Equivalent Derivation Equivalent Derivation o Sound / Complete Derivation: Constraints (satisfiable) 𝐷 :;<=> = ⋀(𝐷 ;BCDC=EF ) , if ∃ 𝑄 ;BCDC=EF ∧ 𝑄 :;<=> Projected Refined ⟺ Refined P1 P P2 𝐷 K;LMFNON = ⋀(𝐷 ;BCDC=EF ) , if ∀ 𝑄 K;LMFNON ⟹ 𝑄 ;BCDC=EF Inferred 14

  15. Overview o Goal: to efficiently infer the dependent security labels o Ternary label Dependent Security Labels o Predicate as Labels Core Constraint Language o Permission Predicates o Dynamic Labels Inference Engines One-Shot Early-Accept Derivation Framework Early-Reject Hybrid 15 Evaluation

  16. Inference Algorithms o One-Shot: o Equivalent Derivation o Derived constraint number grows exponentially with the number of predicates Arbitrary Constraints Refined 𝑄 ¬𝑄 R R 𝑄 R → 𝐷 R V → 𝐷 R V → 𝐷 Y V V 𝑄 𝑄 R Y 𝑄 U → 𝐷 U V → 𝐷 U V → 𝐷 Z V V 𝑄 𝑄 𝑄 T → 𝐷 T 𝑄 U Z U V → 𝐷 [ V → 𝐷 T ¬𝑄 V V 𝑄 𝑄 U 𝑄 [ T T V → 𝐷 X V → 𝐷 \ V V 𝑄 𝑄 ¬𝑄 X T \ 16

  17. Inference Algorithms Arbitrary Constraints 𝑄 R → 𝐷 R o Early-Accept: Sound Derivation 𝑄 U → 𝐷 U 𝑄 T → 𝐷 T o Early-Reject: Complete Derivation … 𝑄 ¬𝑄 R R V ^ → 𝐷 R V ^ 𝑄 R 𝑄 U Sat V ] → 𝐷 U V ] 𝑄 U ¬𝑄 U Sat V ^ → 𝐷 U V ^ 𝑄 U Sat 17

  18. Inference Algorithms Arbitrary Constraints 𝑄 R → 𝐷 R o Hybrid 𝑄 U → 𝐷 U 𝑄 T → 𝐷 T … 𝑄 ¬𝑄 R R V ^ → 𝐷 :R V ^ 𝑄 Sat R 𝑄 V ] → 𝐷 :U V ] 𝑄 U U Sat ¬𝑄 V ^ → 𝐷 :U U V ^ 𝑄 UnSat U V ^ → 𝐷 KU V ^ 𝑄 UnSat U 18

  19. Evaluations o Benchmark Ø Verified MIPS Processor § 1719 lines of Verilog Code, 2455 variables totally Ø Mutate the annotations § 1509 variables unlabeled by randomly removing annotated labels § 14 errors are injected by modifying annotations Ø SecVerilog [Zhang et al. 2015] compiler to generate constraints Ø 100 test files: § 82 involves dependent labels 19

  20. Evaluations OneShot EarlyAccept Hybrid v Overall Performance: 30 Hybrid > Early-Accept > One-Shot Time Out 19 Execution Time (in seconds) 3 10 2 v Time-out: 10 1 Hybrid < Early-Accept < One-Shot 10 0 10 -1 v Scalability: 10 -2 Hybrid > Early-Accept > One-Shot 10 -3 10 -4 10 -5 1 10 100 Number of predicates 20

  21. Conclusions o Goal: to efficiently infer the dependent security labels o Ternary label Dependent Security Labels o Predicate as Labels Core Constraint Language o Permission Predicates o Dynamic Labels Inference Engines One-Shot Early-Accept Derivation Framework Early-Reject Hybrid 21 Evaluation

  22. THANKS! Any questions?

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend