An Automata Based Approach for Verification of Information Flow - - PowerPoint PPT Presentation

an automata based approach for verification of
SMART_READER_LITE
LIVE PREVIEW

An Automata Based Approach for Verification of Information Flow - - PowerPoint PPT Presentation

An Automata Based Approach for Verification of Information Flow Properties Deepak DSouza, Raghavendra K.R., Barbara Sprick Indian Institute of Science, Bangalore, India An Automata Based Approach for Verification of Information Flow


slide-1
SLIDE 1

An Automata Based Approach for Verification of Information Flow Properties

Deepak D’Souza, Raghavendra K.R., Barbara Sprick Indian Institute of Science, Bangalore, India

An Automata Based Approach for Verification of Information Flow Properties – p.1/14

slide-2
SLIDE 2

Framework

  • Events. V isible, Confidential, Neither

An Automata Based Approach for Verification of Information Flow Properties – p.2/14

slide-3
SLIDE 3

Framework

  • Events. V isible, Confidential, Neither

Trace: finite sequence of events

An Automata Based Approach for Verification of Information Flow Properties – p.2/14

slide-4
SLIDE 4

Framework

  • Events. V isible, Confidential, Neither

Trace: finite sequence of events System: sets of traces

An Automata Based Approach for Verification of Information Flow Properties – p.2/14

slide-5
SLIDE 5

Framework

  • Events. V isible, Confidential, Neither

Trace: finite sequence of events System: sets of traces Information flow properties for all x in L with some conditions ⇒ there exists y in L with some conditions

An Automata Based Approach for Verification of Information Flow Properties – p.2/14

slide-6
SLIDE 6

Framework

  • Events. V isible, Confidential, Neither

Trace: finite sequence of events System: sets of traces Information flow properties for all x in L with some conditions ⇒ there exists y in L with some conditions Non-Inference(NF) ∀τ ∈ L ⇒ τ

  • V ∈ L

An Automata Based Approach for Verification of Information Flow Properties – p.2/14

slide-7
SLIDE 7

An Example

gen-new-pin snd-enc-new rcv-enc-acc gen-new-pin e e f snd-enc-old

An Automata Based Approach for Verification of Information Flow Properties – p.3/14

slide-8
SLIDE 8

An Example

gen-new-pin snd-enc-new rcv-enc-acc gen-new-pin e e f snd-enc-old

V = {e, f} C = {gen-new-pin} N = φ

An Automata Based Approach for Verification of Information Flow Properties – p.3/14

slide-9
SLIDE 9

An Example

gen-new-pin snd-enc-new rcv-enc-acc gen-new-pin e e f snd-enc-old

V = {e, f} C = {gen-new-pin} N = φ Tr = { gen-new-pin e f, e } + prefixes

An Automata Based Approach for Verification of Information Flow Properties – p.3/14

slide-10
SLIDE 10

An Example

gen-new-pin snd-enc-new rcv-enc-acc gen-new-pin e e f snd-enc-old

V = {e, f} C = {gen-new-pin} N = φ Tr = { gen-new-pin e f, e } + prefixes Confidentiality compromised. Noninference fails

An Automata Based Approach for Verification of Information Flow Properties – p.3/14

slide-11
SLIDE 11

Example ...contd

snd-enc-new snd-enc-old rcv-enc-acc rcv-enc-rej gen-new-pin e f f e gen-new-pin

An Automata Based Approach for Verification of Information Flow Properties – p.4/14

slide-12
SLIDE 12

Example ...contd

snd-enc-new snd-enc-old rcv-enc-acc rcv-enc-rej gen-new-pin e f f e gen-new-pin

V = {e, f} C = {gen-new-pin} N = φ

An Automata Based Approach for Verification of Information Flow Properties – p.4/14

slide-13
SLIDE 13

Example ...contd

snd-enc-new snd-enc-old rcv-enc-acc rcv-enc-rej gen-new-pin e f f e gen-new-pin

V = {e, f} C = {gen-new-pin} N = φ Tr = { gen-new-pin e f, e f } + prefixes

An Automata Based Approach for Verification of Information Flow Properties – p.4/14

slide-14
SLIDE 14

Example ...contd

snd-enc-new snd-enc-old rcv-enc-acc rcv-enc-rej gen-new-pin e f f e gen-new-pin

V = {e, f} C = {gen-new-pin} N = φ Tr = { gen-new-pin e f, e f } + prefixes Confidentiality maintained. Noninference holds

An Automata Based Approach for Verification of Information Flow Properties – p.4/14

slide-15
SLIDE 15

Background

Non−Interference Generalized Separability Non−Deducibility Noninference Non−Interference

Goguen, Meseguer − 82

An Automata Based Approach for Verification of Information Flow Properties – p.5/14

slide-16
SLIDE 16

Background

Goguen, Meseguer − 82

Mantel − BSPs I Non−Interference Noninference Separability Generalized Non−Interference Non−Deducibility BSD FCI IA BSIA BSI D FCD R FCIA An Automata Based Approach for Verification of Information Flow Properties – p.5/14

slide-17
SLIDE 17

Basic Security Predicates (BSPs)

Trace based information flow properties in BSPs

An Automata Based Approach for Verification of Information Flow Properties – p.6/14

slide-18
SLIDE 18

Basic Security Predicates (BSPs)

Trace based information flow properties in BSPs BSP Removal (R)

new N events

An Automata Based Approach for Verification of Information Flow Properties – p.6/14

slide-19
SLIDE 19

Basic Security Predicates (BSPs)

Trace based information flow properties in BSPs BSP Deletion (D)

new N events α′ β′ α β c

An Automata Based Approach for Verification of Information Flow Properties – p.6/14

slide-20
SLIDE 20

Basic Security Predicates (BSPs)

Trace based information flow properties in BSPs BSP Insertion (I)

α β α′ β′ new C

An Automata Based Approach for Verification of Information Flow Properties – p.6/14

slide-21
SLIDE 21

Basic Security Predicates (BSPs)

Trace based information flow properties in BSPs BSP Insert-X Admissable (IA)

α β α′ β′ new C

γc in L with γ

  • X= α
  • X

An Automata Based Approach for Verification of Information Flow Properties – p.6/14

slide-22
SLIDE 22

Basic Security Predicates (BSPs)

Trace based information flow properties in BSPs BSP Insert-X Admissable (IA)

α β α′ β′ new C

γc in L with γ

  • X= α
  • X

Generalized Non-Interference - I and D Noninference - R

An Automata Based Approach for Verification of Information Flow Properties – p.6/14

slide-23
SLIDE 23

Model Checking

Can we automate Verification of Information Flow properties?

An Automata Based Approach for Verification of Information Flow Properties – p.7/14

slide-24
SLIDE 24

Model Checking

Can we automate Verification of Information Flow properties? Properties of sets of traces, Classical Model-checking techniques like LTL, CTL cannot be used

An Automata Based Approach for Verification of Information Flow Properties – p.7/14

slide-25
SLIDE 25

Model Checking

Can we automate Verification of Information Flow properties? Properties of sets of traces, Classical Model-checking techniques like LTL, CTL cannot be used Unwinding verification technique - Not complete

An Automata Based Approach for Verification of Information Flow Properties – p.7/14

slide-26
SLIDE 26

Model Checking

Can we automate Verification of Information Flow properties? Properties of sets of traces, Classical Model-checking techniques like LTL, CTL cannot be used Unwinding verification technique - Not complete Good News. For finite systems, Yes

An Automata Based Approach for Verification of Information Flow Properties – p.7/14

slide-27
SLIDE 27

Model Checking

Can we automate Verification of Information Flow properties? Properties of sets of traces, Classical Model-checking techniques like LTL, CTL cannot be used Unwinding verification technique - Not complete Good News. For finite systems, Yes Model Check - BSP on Finite State Automaton

An Automata Based Approach for Verification of Information Flow Properties – p.7/14

slide-28
SLIDE 28

Language-theoretic Operations

L be a language over Σ, X subset of Σ

An Automata Based Approach for Verification of Information Flow Properties – p.8/14

slide-29
SLIDE 29

Language-theoretic Operations

L be a language over Σ, X subset of Σ L

  • X := {τ
  • X | τ in L},

τ

  • X, deletes events that are not elements of X

An Automata Based Approach for Verification of Information Flow Properties – p.8/14

slide-30
SLIDE 30

Language-theoretic Operations

L be a language over Σ, X subset of Σ L

  • X := {τ
  • X | τ in L},

τ

  • X, deletes events that are not elements of X

l-del(L) := {αβ | αcβ in L, no C events in β} deletes the last occuring C-event

An Automata Based Approach for Verification of Information Flow Properties – p.8/14

slide-31
SLIDE 31

Language-theoretic Operations

L be a language over Σ, X subset of Σ L

  • X := {τ
  • X | τ in L},

τ

  • X, deletes events that are not elements of X

l-del(L) := {αβ | αcβ in L, no C events in β} deletes the last occuring C-event l-ins(L) := {αcβ | αβ in L, no C events in β} inserts a C-event in a position after which no C-events occur

An Automata Based Approach for Verification of Information Flow Properties – p.8/14

slide-32
SLIDE 32

Language-theoretic Operations

L be a language over Σ, X subset of Σ L

  • X := {τ
  • X | τ in L},

τ

  • X, deletes events that are not elements of X

l-del(L) := {αβ | αcβ in L, no C events in β} deletes the last occuring C-event l-ins(L) := {αcβ | αβ in L, no C events in β} inserts a C-event in a position after which no C-events occur l-ins-admX(L):= {αcβ | αβ in L, no C events in β, there exists γc in L, γ

  • X= α
  • X

inserts a C-event in a position after which no C-events occur subject to a condition

An Automata Based Approach for Verification of Information Flow Properties – p.8/14

slide-33
SLIDE 33

Language-theoretic Operations

L be a language over Σ, X subset of Σ L

  • X := {τ
  • X | τ in L},

τ

  • X, deletes events that are not elements of X

l-del(L) := {αβ | αcβ in L, no C events in β} deletes the last occuring C-event l-ins(L) := {αcβ | αβ in L, no C events in β} inserts a C-event in a position after which no C-events occur l-ins-admX(L):= {αcβ | αβ in L, no C events in β, there exists γc in L, γ

  • X= α
  • X

inserts a C-event in a position after which no C-events occur subject to a condition . . .

An Automata Based Approach for Verification of Information Flow Properties – p.8/14

slide-34
SLIDE 34

Language Inclusion Problem

"L satisfies a BSP P" is reduced to "op1(L) ⊆ op2(L)"

An Automata Based Approach for Verification of Information Flow Properties – p.9/14

slide-35
SLIDE 35

Language Inclusion Problem

"L satisfies a BSP P" is reduced to "op1(L) ⊆ op2(L)"

  • Removal R iff L
  • V ⊆N L.
  • Deletion D iff l-del(L) ⊆N L.
  • Insertion I iff l-ins(L) ⊆N L.
  • Strict Removal SR iff L
  • C⊆ L.
  • Strict Deletion SD iff l-del(L) ⊆ L.

An Automata Based Approach for Verification of Information Flow Properties – p.9/14

slide-36
SLIDE 36

Language Inclusion Problem for BSP D

L satisfies BSP D l-del(L) ⊆N L

An Automata Based Approach for Verification of Information Flow Properties – p.10/14

slide-37
SLIDE 37

Language Inclusion Problem for BSP D

L satisfies BSP D Any τ in l-del(L) l-del(L) ⊆N L

An Automata Based Approach for Verification of Information Flow Properties – p.10/14

slide-38
SLIDE 38

Language Inclusion Problem for BSP D

L satisfies BSP D Any τ in l-del(L) τ − αβ, no C events in β, αcβ in L l-del(L) ⊆N L

An Automata Based Approach for Verification of Information Flow Properties – p.10/14

slide-39
SLIDE 39

Language Inclusion Problem for BSP D

L satisfies BSP D Any τ in l-del(L) τ − αβ, no C events in β, αcβ in L Since L sat D, there exists τ ′ = α′β′ in L such that α =N α′ and β =N β′ l-del(L) ⊆N L

An Automata Based Approach for Verification of Information Flow Properties – p.10/14

slide-40
SLIDE 40

Language Inclusion Problem for BSP D

L satisfies BSP D Any τ in l-del(L) τ − αβ, no C events in β, αcβ in L Since L sat D, there exists τ ′ = α′β′ in L such that α =N α′ and β =N β′ τ ′ equivalent to τ modulo N-corrections l-del(L) ⊆N L

An Automata Based Approach for Verification of Information Flow Properties – p.10/14

slide-41
SLIDE 41

Language Inclusion Problem for BSP D

l-del(L) ⊆N L L satisfies BSP D

An Automata Based Approach for Verification of Information Flow Properties – p.11/14

slide-42
SLIDE 42

Language Inclusion Problem for BSP D

l-del(L) ⊆N L Any τ of form αcβ in L, no C-events in β L satisfies BSP D

An Automata Based Approach for Verification of Information Flow Properties – p.11/14

slide-43
SLIDE 43

Language Inclusion Problem for BSP D

l-del(L) ⊆N L Any τ of form αcβ in L, no C-events in β αβ belongs to l-del(L) L satisfies BSP D

An Automata Based Approach for Verification of Information Flow Properties – p.11/14

slide-44
SLIDE 44

Language Inclusion Problem for BSP D

l-del(L) ⊆N L Any τ of form αcβ in L, no C-events in β αβ belongs to l-del(L) Since l-del(L) ⊆N L, there exists τ ′ =N τ L satisfies BSP D

An Automata Based Approach for Verification of Information Flow Properties – p.11/14

slide-45
SLIDE 45

Language Inclusion Problem for BSP D

l-del(L) ⊆N L Any τ of form αcβ in L, no C-events in β αβ belongs to l-del(L) Since l-del(L) ⊆N L, there exists τ ′ =N τ τ ′ as α′β′ L satisfies BSP D

An Automata Based Approach for Verification of Information Flow Properties – p.11/14

slide-46
SLIDE 46

Regularity Preservation

How to automate the checking of Language Inclusion?

An Automata Based Approach for Verification of Information Flow Properties – p.12/14

slide-47
SLIDE 47

Regularity Preservation

How to automate the checking of Language Inclusion? L(A1) ⊆ L(A2)

An Automata Based Approach for Verification of Information Flow Properties – p.12/14

slide-48
SLIDE 48

Regularity Preservation

How to automate the checking of Language Inclusion? L(A1) ⊆ L(A2) Given automata for L, algorithm for constructing automata for op(L)?

An Automata Based Approach for Verification of Information Flow Properties – p.12/14

slide-49
SLIDE 49

Regularity Preservation

How to automate the checking of Language Inclusion? L(A1) ⊆ L(A2) Given automata for L, algorithm for constructing automata for op(L)? L

  • X

by replacing transitions p

a

− → q, with a ∈ X, in A, by an ǫ-transition p

ǫ

− → q

An Automata Based Approach for Verification of Information Flow Properties – p.12/14

slide-50
SLIDE 50

Regularity Preservation

How to automate the checking of Language Inclusion? L(A1) ⊆ L(A2) Given automata for L, algorithm for constructing automata for op(L)? l-del(L) ǫ a a c

An Automata Based Approach for Verification of Information Flow Properties – p.12/14

slide-51
SLIDE 51

Regularity Preservation

How to automate the checking of Language Inclusion? L(A1) ⊆ L(A2) Given automata for L, algorithm for constructing automata for op(L)? l-ins(L) c a a c

An Automata Based Approach for Verification of Information Flow Properties – p.12/14

slide-52
SLIDE 52

Regularity Preservation

How to automate the checking of Language Inclusion? L(A1) ⊆ L(A2) Given automata for L, algorithm for constructing automata for op(L)? l-ins-admX(L) c

An Automata Based Approach for Verification of Information Flow Properties – p.12/14

slide-53
SLIDE 53

Conclusion

Running time is exponential in the number of states of the given finite state transition system 2O(n)

An Automata Based Approach for Verification of Information Flow Properties – p.13/14

slide-54
SLIDE 54

Conclusion

Running time is exponential in the number of states of the given finite state transition system 2O(n) Sound and Complete characterisation of Security properties in terms of Language-theoretic Operations

An Automata Based Approach for Verification of Information Flow Properties – p.13/14

slide-55
SLIDE 55

Conclusion

Running time is exponential in the number of states of the given finite state transition system 2O(n) Sound and Complete characterisation of Security properties in terms of Language-theoretic Operations Automatically verify trace based information flow properties for finite state systems

An Automata Based Approach for Verification of Information Flow Properties – p.13/14

slide-56
SLIDE 56

Conclusion

Running time is exponential in the number of states of the given finite state transition system 2O(n) Sound and Complete characterisation of Security properties in terms of Language-theoretic Operations Automatically verify trace based information flow properties for finite state systems For infinite state systems?

An Automata Based Approach for Verification of Information Flow Properties – p.13/14

slide-57
SLIDE 57

Conclusion

Running time is exponential in the number of states of the given finite state transition system 2O(n) Sound and Complete characterisation of Security properties in terms of Language-theoretic Operations Automatically verify trace based information flow properties for finite state systems For infinite state systems? BSPs - Special case of First Order Logic? Decidability?

An Automata Based Approach for Verification of Information Flow Properties – p.13/14

slide-58
SLIDE 58

Thank You

An Automata Based Approach for Verification of Information Flow Properties – p.14/14