TRUST DISTRIBUTION DIAGRAMS: THEORY AND APPLICATIONS Michael E. - - PowerPoint PPT Presentation

trust distribution diagrams theory and applications
SMART_READER_LITE
LIVE PREVIEW

TRUST DISTRIBUTION DIAGRAMS: THEORY AND APPLICATIONS Michael E. - - PowerPoint PPT Presentation

TRUST DISTRIBUTION DIAGRAMS: THEORY AND APPLICATIONS Michael E. Locasto, University of Calgary 2 There are two ways to design a system. One is to make it so simple there are obviously no deficiencies. The other is to make it so complex


slide-1
SLIDE 1

TRUST DISTRIBUTION DIAGRAMS: THEORY AND APPLICATIONS

Michael E. Locasto, University of Calgary

slide-2
SLIDE 2

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

2

“There are two ways to design a system. One is to make it so simple there are obviously no

  • deficiencies. The other is to make it so complex

there are no obvious deficiencies.” – C. A. R. Hoare

slide-3
SLIDE 3

Takeaway Message

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

3

Vary whatever you wish, but make sure you understand how such alterations affect the trust relationships in the system’s design and implementation.

slide-4
SLIDE 4

Conclusion 1: Trust Relationships

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

4

Systems are composed of trust relationships; we must understand how the process of varying system properties (i.e., “moving target”) affects these trust relationships and frustrates attackers’ ability to control primitives in the computing environment Outcome: create an artifact for documenting the nature of these trust relationships

slide-5
SLIDE 5

Conclusion 2: Security Coordination

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

5

Security systems routinely interfere with each other (i.e., “bickering-in-depth”); we need a framework for negotiating over security-critical resources, measurements points, data structures, and hooks Outcome: TDDs should provide a way of understanding the composition/layering of multiple security mechanisms

slide-6
SLIDE 6

Work That Shaped My Thinking

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

6

“We Need Assurance!”, Brian Snow, ACSAC 2005 “Some Thoughts on Security after Ten Years of qmail 1.0”, DJB, CSAW 2007 “High Assurance Digital Forensics: A Panelist’s Perspective”, Steven J. Greenwald, SADFE2009

slide-7
SLIDE 7

Time Out: What Do You Mean by “Trustworthy”?

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

7

“…we equate ‘trustworthy’ with the notion that software ‘follows expected behavior’ according to some security policy (where ‘behavior’ consists of sequences of events that read or modify specific data structures).”

slide-8
SLIDE 8

Motivation, Theory, and Applications Work in progress!

Trust Distribution Diagrams

6 December 2010

8

"Trust Distribution Diagrams: Theory and Applications" Locasto et al.

slide-9
SLIDE 9

Observations: Software Assurance

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

9

Observation 1: The academic research community seems to have lost the art of making assurance arguments (CC EAL==red herring here) Observation 2: Somehow “small” (as in “fewest lines

  • f code”) has become our best metric for software

trustworthiness, but we posit that the relationship between size and trustworthiness remains ill-defined

slide-10
SLIDE 10

Key Issue: Increase in Complexity

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

10

Challenge 1: difficult to argue effectively in prose Challenge 2: difficult to construct & maintain formal proof for complex, evolving system

slide-11
SLIDE 11

An Alternative to Lines of Code

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

11

“Perhaps a better measure of assurance should rely

  • n the complexity of the trust relationships between

system components.”

slide-12
SLIDE 12

An Alternative to Lines of Code

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

12

“Perhaps a better measure of assurance should rely

  • n the complexity of the trust relationships between

system components.” How do you depict these relationships?

slide-13
SLIDE 13

Trust Distribution Diagrams

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

13

TDDs will define a graphical language for expressing the distribution, amount, and migration of trust in design-level components.

slide-14
SLIDE 14

TDD Key Properties

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

14

Direction of trust relationships (map) Location of trust regardless of level of trust (orthagonality) How direction, location, and level change over time (duration and migration)

slide-15
SLIDE 15

Mapping Trust Between Components

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

15

slide-16
SLIDE 16

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

16

slide-17
SLIDE 17

6 December 2010 17 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

slide-18
SLIDE 18

Depicting Trust Statements

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

18

Trust Policy = Trust Statements + Consequences “Function foo trusts function bar to check property P.” “…if bar does not, foo will henceforth check P itself.”

slide-19
SLIDE 19

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

19

slide-20
SLIDE 20

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al. 20

Effect of Lattice…

slide-21
SLIDE 21

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al. 21

slide-22
SLIDE 22

Tasks that Require Further Work

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

22

 Exact syntax and semantics  Represent evolving graph structure  Leverage complexity measure as a coherent basis

for qualitative trustworthiness arguments (next slide)

 Possible models

 Jackson Structured Programming  Harel’s Statecharts  Lattices

slide-23
SLIDE 23

TDD Complexity: An Evaluation Tool?

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

23

 “less complex” (entropy measure of patterns)  “more robust” (contains redundancy, no SPoF)  “checkable” (model checking)  “survivable” (contains layers to jettison to save core)  “nimble” (trust migrates btwn component subsets)

TDDs depict patterns of trust that may repeat in different contexts within a system

slide-24
SLIDE 24

Graph Patterns

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

24

slide-25
SLIDE 25

“Bickering-in-depth”

Composing Security Mechanisms

6 December 2010

25

"Trust Distribution Diagrams: Theory and Applications" Locasto et al.

slide-26
SLIDE 26

Defense-in-Depth

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

26

Doctrine of defense-in-depth says: “You should be able to add a new security mechanism to deepen your independent layers of security.”

slide-27
SLIDE 27

Bickering-in-Depth

10/26/2010 "Design Tools and Patterns for Trust Migration" Locasto et al.

27

Security software doesn’t play nice, and these systems routinely interfere with each other according to our preliminary experiments [S&P mag 2009] Key issue seems to stem from indiscriminant and conflicting modifications of kernel objects and other important resources [uninformed.org]

slide-28
SLIDE 28

Preliminary Experiments

10/26/2010 "Design Tools and Patterns for Trust Migration" Locasto et al.

28

 Scenario: install multiple security software programs on

a host…and observe ensuing chaos (BSOD, etc.)

 Compiling Apache: 2 minutes vs. 45 minutes  Numerous detections of “incompatible” software during

installation…but installation proceeds anyway

 CA Internet Security and Clam AV  lose network  PC Tools Anti-Virus and Webroot  shutdown  Anonymizer on top of the whole mess: 75% of startups

freeze

slide-29
SLIDE 29

Negative Outcomes

10/26/2010 "Design Tools and Patterns for Trust Migration" Locasto et al.

29

Loss in performance Loss in protection efficacy Potentially disastrous fusion of policy Poor management strategies arising from dealing with above rather than actual threats

slide-30
SLIDE 30

Application for TDDs?

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

30

Understand (separately) what critical data structures and measurement points two different TCBs attempt to control Diagram these trust relationships The exercise of composing the TDDs will help show where overlap and potential conflict exist

slide-31
SLIDE 31

Programming Latent Functionality

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

31

From an attacker’s viewpoint, our computing environments contain latent functionality Formulating exploits (or ROP gadget chains) are a way of composing this latent functionality to achieve an attacker’s goal (control, exfiltration, etc.) Moving Target Defense must provide effective methods for assessing the potential for latent functionality and breaking sequences of this composed latent functionality

slide-32
SLIDE 32

Conclusion

TDD: Diagram trust relationships to give us a sense of what state our system is in Possible (high-level) application areas: Moving Target Defense Layering Software Security Mechanisms

6 December 2010

32

"Trust Distribution Diagrams: Theory and Applications" Locasto et al.

slide-33
SLIDE 33

Contact

email: locasto@ucalgary.ca web: http://pages.cpsc.ucalgary.ca/~locasto/

6 December 2010

33

"Trust Distribution Diagrams: Theory and Applications" Locasto et al.

slide-34
SLIDE 34

Related Work

6 December 2010 "Trust Distribution Diagrams: Theory and Applications" Locasto et al.

34

 Locasto, Bratus, Schulte, S&P mag Nov/Dec 2009  Skywing, “Anti-Virus Software Gone Wrong”, What

Were They Thinking? May 2006, uninformed.org

 Skape, “Annoyances Caused by Unsafe

Assumptions”, What Were They Thinking? April 2005, uninformed.org

 TDDs: Theory and Applications