hyperproperties michael clarkson and fred b. schneider cornell university ieee symposium on computer...

46
Hyperproperties Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008

Upload: basil-lawrence

Post on 17-Dec-2015

222 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

HyperpropertiesHyperproperties

Michael Clarkson and Fred B. SchneiderCornell University

IEEE Symposium on Computer Security FoundationsJune 23, 2008

Page 2: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 2

Security Policies Today

Confidentiality Integrity Availability

Formalize and verify any security policy?

Page 3: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 3

Program Correctness ca. 1970s

Partial correctness Total correctness Mutual exclusion Deadlock freedom Starvation freedom

???

Page 4: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 4

Safety and Liveness

Intuition [Lamport 1977]:Safety: “Nothing bad happens”

Partial correctness, mutual exclusion, access control

Liveness: “Something good happens” Termination, guaranteed service

Page 5: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 5

Safety and Liveness

Formalization: Property: Set of (infinite) execution traces

Trace t satisfies property P iff t 2 P Satisfaction depends on the trace alone System modeled as set of traces

Safety property [Lamport 1985]: Bad thing = trace prefix

Liveness property [Alpern and Schneider 1985]:

Good thing = trace suffix

Page 6: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 6

Success!

Alpern and Schneider (1985, 1987):Theorem. (8 P : P = Safe(P) Å Live(P))Theorem. Safety proved by invariance.Theorem. Liveness proved by well-

foundedness.Theorem. Topological characterization:

Safety = closed sets Liveness = dense sets

Formalize and verify any property?

Page 7: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 7

Back to Security Policies

Formalize and verify any property?Formalize and verify any security policy?

Security policy = Property

?

Page 8: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 8

Security Policies are not Properties

Noninterference: Commands of high users have no effect on observations of low users Satisfaction depends on pairs of traces

) not a property

Average response time: Average time, over all executions, to respond to request has given bound Satisfaction depends on all traces of system

) not a property

Any policy that stipulates relations among traces is not a property

Need satisfaction to depend on sets of traces

Page 9: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 9

Hyperproperties

A hyperproperty is a set of properties

A system S satisfies a hyperproperty H iff S 2 H A hyperproperty specifies exactly the allowed

sets of traces

Page 10: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 10

Hyperproperties

Security policies are hyperproperties!

Information flow: Noninterference, relational noninterference, generalized noninterference, observational determinism, self-bisimilarity, probabilistic noninterference, quantitative leakage

Service-level agreements: Average response time, time service factor, percentage uptime

Page 11: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 11

Hyperproperties

Safety and liveness? Verification?

Page 12: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 12

Safety

Safety proscribes “bad things”A bad thing is finitely observable and

irremediableS is a safety property [L85] iff

S is a safety hyperproperty (“hypersafety”) iff

B is a finite set of finite traces

b is a finite trace

Page 13: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 13

Prefix Ordering

An observation is a finite set of finite tracesIntuition: Observer sees a set of partial

executions

M · T (is a prefix of) iff: M is an observation, and Intuition: If observer watched longer, M could

become T

8m 2 M : (9t 2 T : (m · t))

Page 14: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 14

Safety Hyperproperties

Noninterference [Goguen and Meseguer 1982]Bad thing is a pair of traces where

removing high commands does change low observations

Observational determinism [Roscoe 1995]Bad thing is a pair of traces that cause

system to look nondeterministic to low observer

Page 15: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 15

Liveness

Liveness prescribes “good things”A good thing is always possible and

possibly infiniteL is a liveness property [AS85] iff

L is a liveness hyperproperty (“hyperliveness”) iff

t is a finite trace

T is a finite set of finite traces

Page 16: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 16

Liveness Hyperproperties

Average response timeGood thing is that average time is low

enough Generalized noninterference

[McCullough 1987]Good thing is additional interleavings of

traces

Page 17: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 17

Possibilistic Information Flow

PIF policies can be expressed with closure operators [Mantel 2000]

Theorem. All PIF policies are hyperliveness.

Page 18: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 18

Can lift property T to hyperproperty [T] Satisfaction is equivalent iff [T] = P(T)

Theorem. S is safety ) [S] is hypersafety. Theorem. L is liveness ) [L] is

hyperliveness. Theorem. Hypersafety = closed sets. Theorem. Hyperliveness = dense sets.

Relating Properties and Hyperproperties

8t =2 S : 9m · t : 8u ¸ m : u =2 S8t =2 S : 9m · t : 8u ¸ m : u =2 S

Page 19: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 19

Safety and Liveness is a Basis

Theorem. (8 H : H = Safe(H) Å Live(H))

Page 20: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 20

Probabilistic Hyperproperties

To incorporate probability: Assume probability on state transitions Construct probability measure on traces

[Halpern 2003] Use measure to express hyperproperties

We’ve expressed: Probabilistic noninterference Quantitative leakage Channel capacity

Page 21: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 21

Beyond Hyperproperties?

Add another level of sets?Theorem. Set of hyperproperties ´ hyperproperty

Hyperproperties are expressively complete(for systems and trace semantics)

By analogy to logic: Adding levels of sets = increasing the order of

logic Properties = first-order predicates on traces Hyperproperties = second-order

Higher-order logic reducible to second-order

Page 22: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 22

Stepping Back…

Safety and liveness? Verification?

Page 23: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 23

Verification of Information Flow

Barthe, D’Argenio, and Rezk (2004): Reduce noninterference to a property with self-

composition Terauchi and Aiken (2005):

Generalize to verify any 2-safety property “Property that can be refuted by observing two finite

traces”

Methodology: Transform system to reduce 2-safety to safety

property Verify safety property

Page 24: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 24

A k-safety hyperproperty is a safety hyperproperty in which the bad thing never has more than k traces

Examples: 1-hypersafety: the lifted safety properties 2-hypersafety: Terauchi and Aiken’s 2-safety

properties k-hypersafety: SEC(k) = “System can’t, across all

runs, output all shares of a k-secret sharing” Not k-hypersafety for any k: SEC = k SEC(k)

k-Safety Hyperproperties

Page 25: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 25

Verifying k-Hypersafety

Theorem. Any k-safety hyperproperty of S is equivalent to a safety property of Sk.

Yields methodology for k-hypersafety Incomplete for hypersafety

Page 26: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 26

Logic and Verification

Full second-order logic cannot be effectively and completely axiomatized

But fragments can be…Might suffice for security policies

Page 27: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 27

Refinement Revisited

Stepwise refinement: Development methodology for properties Uses refinement of nondeterminism

Satisfaction of properties is refinement-closed But not of hyperproperties, in general

Theorem. All safety hyperproperties are refinement-closed.

Refinement applicable to hypersafety But not all hyperproperties (necessarily)

Page 28: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 28

Summary

We developed a theory of hyperproperties Parallels theory of properties

Safety, liveness (basis) Verification (for k-hypersafety) Refinement (hypersafety)

Expressive completeness

Currently verifying proofs using Isabelle/HOL with Denis Bueno (Cornell, Sandia)

Enables classification of security policies…

Page 29: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 29

Charting the landscape…

Page 30: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 30

All hyperproperties (HP)

HP

Page 31: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 31

HP

SHP LHP

Safety hyperproperties (SHP)Liveness hyperproperties (LHP)

Page 32: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 32

HP

SHP LHP

[SP] [LP]

Lifted safety properties [SP]

Lifted liveness properties [LP]

Page 33: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 33

HP

SHP LHP

[SP] [LP]

AC GS

Access control (AC) is safetyGuaranteed service (GS) is liveness

Page 34: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 34

HP

SHP LHP

[SP] [LP]

AC GS

GMNI

Goguen and Meseguer’s noninterference (GMNI)

is 2-hypersafety

Page 35: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 35

HP

SHP LHP

[LP]

GS

2-safety hyperproperties (2SHP)

[SP]

AC

2SHP

GMNI

Page 36: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 36

HP

SHP LHP

[SP] [LP]

AC GS

GMNISEC

Secret sharing (SEC) is not k-hypersafety for any k

2SHP

Page 37: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 37

HP

SHP LHP

[SP] [LP]

AC GS

GMNIOD

PNI

GNI

Observational determinism (OD) is 2-hypersafety

Generalized noninterference (GNI) is hyperliveness

Probabilistic noninterference (PNI) is neither

2SHP

SEC

Page 38: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 38

HP

SHP LHP

[SP] [LP]

AC GS

GMNIOD

PNI

GNI

PIF

2SHP

Possibilistic information flow (PIF) is hyperliveness

SEC

Page 39: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 39

Revisiting the CIA Landscape

Confidentiality Information flow is not a property Is a hyperproperty (HS: OD; HL: GNI)

Integrity Safety property? Dual to confidentiality, thus hyperproperty?

Availability Sometimes a property (max. response time) Sometimes a hyperproperty (HS: % uptime, HL:

avg. resp. time)

CIA seems orthogonal to hyperproperties

Page 40: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

HyperpropertiesHyperproperties

Michael Clarkson and Fred B. SchneiderCornell University

IEEE Symposium on Computer Security FoundationsJune 23, 2008

Page 41: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 41

Extra Slides

Page 42: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 42

Noninterference is not a Property

Suppose NI is a property System T (for true) should satisfy NI L:=H refines T

And shouldn’t satisfy NI But since satisfaction closed under

refinement, L:=H should satisfy NI

Contradiction! Therefore, NI is not a property

Page 43: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 43

Information Flow Hyperproperties

Noninterference: The set of all properties T where for each trace t 2 T, there exists another trace u 2 T, such that u contains no high commands, but yields the same low observation as t.

Generalized noninterference: The set of all properties T where for any traces t and u 2 T, there exists a trace v 2 T, such that v is an interleaving of the high inputs from t and the low events from u.

Observational determinism: The set of all properties T where for all traces t and u 2 T, and for all j 2 N, if t and u have the same first j-1 low events, then they have equivalent jth low events.

Self-bisimilarity: The set of all properties T where T represents a labeled transition system S, and for all low-equivalent initial memories m1 and m2, the execution of S starting from m1 is bisimilar to the execution of S starting from m2.

Page 44: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 44

Topological Characterization

Theorem. Our topology is equivalent to the lower Vietoris construction applied to the Plotkin topology.

Page 45: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 45

Powerdomains

We use the lower (Hoare) powerdomainOur · is the Hoare orderLower Vietoris = lower powerdomain [Smyth

1983] Other powerdomains?

Change the notion of “observable” Upper: Observations can disappear Convex: Can observe impossibility of production of

stateBut might be useful on other semantic

domains

Page 46: Hyperproperties Michael Clarkson and Fred B. Schneider Cornell University IEEE Symposium on Computer Security Foundations June 23, 2008 TexPoint fonts

Clarkson: Hyperproperties 46

Future Work

Verification methodologyHyperliveness?Axiomatizable fragments of second

order logic? CIA: Express with hyperproperties? Hyperproperties in other semantic

domains