SlideShare a Scribd company logo
User Account Access Graphs
ACM CCS 2019
Sven Hammann, Saša Radomirović, Ralf Sasse and David Basin
林彥賓
2020/11/25
Outline
Introduction
Contribution
Graph model
Access Sets
SECURITY SCORING SCHEMES
Account importance
2
Introduction
How save is your account?
3
Contribution
evulate security that could allow an attacker to compromise an account
evulate recoverability that could result in a user being permanently locked out of
an accoun
4
Graph model
Definition:
An account access graph is a directed graph , where are
vertices, are colors, and are directed colored edges.
model
account
same color : all needed to access the account (i.e., multi-factor
authentication)
different colors : alternative access methods
credentials
: an account provides access to the credential
G = (V , E , C )G G G VG
CG E ⊆G V ×G V ×G CG
v
e
e
v
e 5
example
A webshop account acc_shop
that can be accessed with
password pwd_shop or
recovered from the e-mail
account acc_mail.
The e-mail account requires two-
factor authentication with
password pwd_mail and a code.
The code is generated by an
authentication app on a device.
The device can be unlocked
using either a fingerprint (finger)
or a PIN. 6
Access Sets
Definition:
the set of all vertices that have a c-colored edge to v. Formally, for an account
access graph
In (v) :c = {v′ ∈ V ∣e =G (v′, v, c) ∈ E }G
Definition: the set of vertices that can directly
or transitively be accessed from a set of vertices V
the set for a vertex set is the smallest set that
satisfies and is closed under the rule
v ∈ accessFrom(V )
∃c ∈ C : ∅ ⊊ In (v) ⊆ accessFrom(V )G c
In (v)c
G = (V , E , C )G G G
accessFrom(v)
accessFrom(V ) V ⊆ VG
V ⊆ accessFrom(V )
7
Definition:
the set of all sets of vertices that provide access to a vertex , that is
AccessTo(v) := {V ⊆ V ∣v ∈G accessFrom(V )}
Definition:
The minimal access sets of a vertex v are all minimal sets that provide access to v.
MinAccessTo(v) := {V ⊆ V ∣V ∈G AccessTo(v) ∧ (∀V ⊊′
V : V ∈′
/ AccessTo(v))}
AccessTo(v)
v
MinAccessTo(v)
8
Definition:
the set of all leaves in the graph
Definition:
A vertex with respect to a set of initial vertices consists of the minimal
access sets V that only contain vertices from
AccessBase(v) := {V ∈ MinAccessTo(v)∣V ⊆ V }init
Vinit
AccessBase(v, V )init
v Vinit
Vinit
9
Example
accessFrom(pwd , device, PIN) =mail
{pwd , device, PIN, code, acc , acc }mail mail shop
AccessTo(acc ) =mail
{{acc }, {pwd , code}, {pwd , device, finger}, {pwd , device, PIN}}mail mail mail mail
AccessBace(acc , V ) =shop init
{{pwd }, {pwd , device, finger}, {pwd , device, PIN}}shop mail mail
10
SECURITY SCORING SCHEMES
main idea
Whenever we can access , we can also access . Therefore, is at
least as secure as
V =init {pwd , device}acc
AccessBace(acc , V ) =basic init {pwd }acc
AccessBace(acc , V ) =full init {pwd , device}acc
accfull accbasic accfull
accbasic
11
Requirements
: Domain over which scores are defined
is a partial order relating elements in
: the set of initial vertices
: maps a multiset of initial scores (of vertices in an access
set) to an intermediate score (for that access set)
: maps a set of intermediate scores (of access sets in a
vertex’s access base) to a score (for that vertex
D
⪯ D
V ∈init VG
Eval : P (D) →M D
Combine : P(D) → D
EvalSet(S) := Eval({Init(v′)∣v′ ∈ S})
Score(v) := Combine({EvalSet(S)∣S ∈ AccessBase(v, V init)})
12
Definition:
Let be vertices in an account access graph . An access base for a vertex
is at least as secure as that for if and only if any set of vertices that
provides access to also provides access to
AccessBase(v , V ) ⪯A init AccessBase(v , V ) :B init ⟺ ∀V ⊆ V :init v ∈B accessFrom(V ) → v ∈A accessFrom(V )
Theorem:
Let be vertices in an account access graph and let be given.
Let and
(∀B ∈i B∃A ∈j A : A ⊆j B ) ⟺i A ⪯ B
v , vA B G
vB vA V
vB vA
v , vA B G V ⊆init VG
A := AccessBase(v , V )A init B := AccessBase(v , V )B init
13
Definition
A security scoring scheme with score
function is sound if, for any two vertices and
AccessBase(v , V ) ⪯A init AccessBase(v , V ) ⟹B init Score (v ) ⪯S A S Score (v )S B
Theorem
A security scoring scheme is sound if the
following two conditions hold
(D, ⪯S , V , Init, Eval, Combine)init
ScoreS vA vB
(D, ⪯S , V , Init, Eval, Combine)init
14
Simple Scoring Scheme
15
The sum-then-min scoring
scheme:
example:
D = N, ⪯=≤, Eval(M) =
m, Combine(S) =∑m∈M
min (s)s∈S
16
Multiset-based Scoring Scheme
Set ⦃1, 1⦄ denotes an access method that requires two credentials with value 1
each
a score of {⦃1, 1⦄, ⦃2⦄} denotes that the account can (transitively) be accessed either
by two credentials with value 1 each, or a single credential with value 2.
Definition for comparing scores:
For two multisets and over if and only if
, and there exists an indexing of their elements such that
, and
Example:
and , but and are
incomparable
M N N, M ⪯ N k = ∣M∣ ≤ ∣N∣ = n
M =
{[m , ..., m ]}, N =1 k {[n , ..., n ]}1 n ∀1 ≤ i ≤ k : m ≤i ni
{[1, 1]} ≺ {[1, 2]} {[1, 2]} ≺ {[1, 1, 2]} {[1, 2]} {[1, 1, 1]}
17
Definition 12:
For two sets of multisets if and only if
Example:
, but and
are incomparable
S , S , S ⪯1 2 1 S2 ∀N ∈ S ∃M ∈2 S :1
M ⪯ N
{{[1, 1]}, {[1, 2]}} ≺ {{[1, 2]}, {[1, 1, 2]}} {{[1, 2]}} {{[1, 1]}, {[1, 1, 1]}}
18
: for sets where
Definition:
The distributed product of two sets of multisets is defined as
S ⊕1 S =2 {M ⊎ N∣M ∈ S , N ∈1 S }2
Example:
⊎ A ∪ B A, B A ∩ B = ∅
S , S1 2
⊕{[{{[1]}}, {{[2, 2]}}, {{[3]}, {[4]}}]} = {{[1, 2, 2, 3]}, {[1, 2, 2, 4]}}
19
Multisets Scoring Scheme
: the sets of multisets over
: Definition 12
Eval =
Combine( ) = minimal( ),
minimal :=
D = P (N)M N
⪯
⊕
S S∪ S :∪ = ∪ SS ∈Si i
{M∣M ∈ S ∧∪ ¬(∃M ∈′
S :∪ M ≺′
M)}
20
Example
{⦃1, 1⦄} and {⦃2⦄} are incomparable
Score(acc ) =A Combine(EvalSet({pwd , pwd })) =A B {{[1, 1]}}
Score(acc ) =B Combine(EvalSet({device})) = {{[2]}}
21
Attacker attribute sets:
Location = {rem, loc}, with rem < loc
a local attacker has more capabilities than a remote one
Skill = {none, some, exp}, with none < some < exp
none: The attacker has no special skills
some: The attacker he has special skills can exploit known vulnerabilities
exp: An expert hacker
An account with a score of {(rem, some), (loc, none)} could be compromised by a
remote attacker with special skills or by a local attacker without any special skills.
(rem, exp), (loc, some), could also compromise the account.
22
Definition 16:
For if and only if
Consider a set of attacker tuples . Another set .
is smaller or equal to if and only if for each attacker tuple in , there is a
tuple representing a weaker (or equal) attacker, in
Any attacker that could compromise the account with score S2 could also
compromise the account with score S1
S , S ∈1 2 P(A ×1 ... × A ), S ⪯n 1 S2 ∀u ∈ S ∃t ∈2 S :1
t ⪯ u
S2 S1
S1 S2 S2
S1
23
Aattacker model scoring scheme
Let be totally ordered attribute sets
: sets of attribute tuples.
: Definition 16.
is a singleton set that contains the component-wise maximum of
tuple set
A , ..., A1 n
D = P(A , ..., A )1 n
⪯
Eval(M) = compMax(M )∪
M :∪ = ∪ MM ∈Mi i
compMax
M∪
Combine(S) = minimal(S )∪
S :∪ = ∪ SS ∈Si i
minimal(S ) :∪ = {t∣t ∈ S ∧∪ ¬(∃t ∈ S :∪ t′ ≺ t)}
24
Score(accshop)
= Combine(EvalSet({pwdshop}),
EvalSet({pwdmail, device, finger}),
EvalSet({pwdmail, device, PIN}))
= Combine({(rem, some)}, {(loc, exp)},
{(loc, some)})
= minimal({(rem, some), (loc, exp),
(loc, some)})
= {(rem, some)}
25
LOCKOUT SETS AND RECOVERABILITY
Definition
For an account access graph G, the set lockoutFrom(V) closed under the following
rule
26
Example:
lockoutFrom({pwdshop, device}) =
{pwdshop, device, code, accmail,
accshop}
27
Definition
Definition
minimal lockout sets of a vertex v:
Definition
V_{init}$
denotes the vertices that a user might directly get locked out of
Lockout(v) := {V ∈ V ∣v ∈G lockoutFrom(V )}
MinLockout(v) := {V ∈ V ∣V ∈G Lockout(v) ∧ (∀V ′(V : V ′ <
Lockout(v))}
LockoutBase(v, V ) :init = {V ∈ MinLockout(v)∣V ⊆ V }init
28
Example
Let Vinit be the set of all leaves in the
graph
LockoutBase(acc , V ) = shop init
{pwd , pwd }, {pwd , device},shop mail shop
29
recoverability scoring scheme
30
Inherent lockout risk
There is an account with a service that provides single sign-on, and an account
with a web shop using this single sign-on.
accSSO
accshop
V :init = {pwd , acc }SSO SSO
AccessBase(acc , V ) =shop init LockoutBase(acc , V ) =shop init
{{pwd }, {acc }}SSO SSO
31
Recovery paths and backdoors
Backdoor: An account can be accessed more easily using recovery access methods
than using its primary authentication method
Recoverability point of view: If there is no backdoors in an access account graph,
it's ineffective recovery.
Definition
S: security scoring scheme with scoring function Score
be a set of edges used in recovery methods
: the graph obtained from G by removing the edges in
HasBackdoorS, E (v) :rec = Score (v) ≺G Score (v)G′
E ⊊rec EG
G′ := (V , EG G
E , C )rec G Erec
32
let
Thus,
E :rec =
{(acc , acc , red),mailA bank
(acc , acc , red)}mailB mailA
AccessBase (acc , V ) =G bank init
{{pwd , device},bank
{pwd , device}, {pwd }}mailA mailB
AccessBase (acc , V ) =G′ bank init
{{pwd , device}}bank
Score (acc ) =G bank 1 < 3 =
Score (acc )G′ bank
HasBackdoor (acc )S,Erec bank
33
Account importance
Definition:
let be a function that assigns to a vertex an importance value from a
partially ordered domain
Inconsistent (v , v ) :S,I 1 2 = I(v ) ≺1 I(v ) ∧2 Score(v ) ⪯1 Score(v )2
That is, represents a more important account than , but receives the same or a
lower score value.
I : V → DI
DI
v1 v2
34
Example
= {low, med, high} with the
expected ordering
Thus,
DI
I(acc ) =bank high ≻ med =
I(acc )shop
Score(acc ) =bank
{(rem, some)} ≻
{(loc, some)} = Score(acc )shop
Inconsistent (acc , acc )S,I bank shop
35
Ad

More Related Content

What's hot (20)

Computer graphics lab assignment
Computer graphics lab assignmentComputer graphics lab assignment
Computer graphics lab assignment
Abdullah Al Shiam
 
Advance java
Advance javaAdvance java
Advance java
Vivek Kumar Sinha
 
Computer graphics lab manual
Computer graphics lab manualComputer graphics lab manual
Computer graphics lab manual
Ankit Kumar
 
Computer Graphics Lab
Computer Graphics LabComputer Graphics Lab
Computer Graphics Lab
Neil Mathew
 
Graphics practical lab manual
Graphics practical lab manualGraphics practical lab manual
Graphics practical lab manual
Vivek Kumar Sinha
 
Array
ArrayArray
Array
Radha Rani
 
Cgm Lab Manual
Cgm Lab ManualCgm Lab Manual
Cgm Lab Manual
Oriental College of Technology,Bhopal
 
Programming for Mechanical Engineers in EES
Programming for Mechanical Engineers in EESProgramming for Mechanical Engineers in EES
Programming for Mechanical Engineers in EES
Naveed Rehman
 
Cgm Lab Manual
Cgm Lab ManualCgm Lab Manual
Cgm Lab Manual
Oriental College of Technology,Bhopal
 
C++ TUTORIAL 9
C++ TUTORIAL 9C++ TUTORIAL 9
C++ TUTORIAL 9
Farhan Ab Rahman
 
Nonlinear analysis of frame with hinge by hinge method in c programming
Nonlinear analysis of frame with hinge by hinge method in c programmingNonlinear analysis of frame with hinge by hinge method in c programming
Nonlinear analysis of frame with hinge by hinge method in c programming
Salar Delavar Qashqai
 
Aplikasi menghitung matematika dengan c++
Aplikasi menghitung matematika dengan c++Aplikasi menghitung matematika dengan c++
Aplikasi menghitung matematika dengan c++
radar radius
 
Basics of Computer graphics lab
Basics of Computer graphics labBasics of Computer graphics lab
Basics of Computer graphics lab
Priya Goyal
 
C++ TUTORIAL 8
C++ TUTORIAL 8C++ TUTORIAL 8
C++ TUTORIAL 8
Farhan Ab Rahman
 
Qno 3 (a)
Qno 3 (a)Qno 3 (a)
Qno 3 (a)
Praveen M Jigajinni
 
Wap in c to draw a line using DDA algorithm
Wap in c to draw a line using DDA algorithmWap in c to draw a line using DDA algorithm
Wap in c to draw a line using DDA algorithm
Kapil Pandit
 
Computer graphics programs in c++
Computer graphics programs in c++Computer graphics programs in c++
Computer graphics programs in c++
Ankit Kumar
 
computer graphics practicals
computer graphics practicalscomputer graphics practicals
computer graphics practicals
Manoj Chauhan
 
Ml all programs
Ml all programsMl all programs
Ml all programs
adnaanmohamed
 
Struct examples
Struct examplesStruct examples
Struct examples
mondalakash2012
 

Similar to User Account Access Graphs (20)

Array,MULTI ARRAY, IN C
Array,MULTI ARRAY, IN CArray,MULTI ARRAY, IN C
Array,MULTI ARRAY, IN C
naveed jamali
 
Lec 9 05_sept [compatibility mode]
Lec 9 05_sept [compatibility mode]Lec 9 05_sept [compatibility mode]
Lec 9 05_sept [compatibility mode]
Palak Sanghani
 
parameterized complexity for graph Motif
parameterized complexity for graph Motifparameterized complexity for graph Motif
parameterized complexity for graph Motif
AMR koura
 
RSA SIGNATURE: BEHIND THE SCENES
RSA SIGNATURE: BEHIND THE SCENESRSA SIGNATURE: BEHIND THE SCENES
RSA SIGNATURE: BEHIND THE SCENES
acijjournal
 
INTRODUCTION TO MATLAB presentation.pptx
INTRODUCTION TO MATLAB presentation.pptxINTRODUCTION TO MATLAB presentation.pptx
INTRODUCTION TO MATLAB presentation.pptx
Devaraj Chilakala
 
Lec-35Graph - Graph - Copy in Data Structure
Lec-35Graph - Graph - Copy in Data StructureLec-35Graph - Graph - Copy in Data Structure
Lec-35Graph - Graph - Copy in Data Structure
Anil Yadav
 
Signyourd digital signature certificate provider
Signyourd   digital signature certificate providerSignyourd   digital signature certificate provider
Signyourd digital signature certificate provider
Kishankant Yadav
 
Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...
Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...
Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...
Alexander Litvinenko
 
Chap11alg
Chap11algChap11alg
Chap11alg
Munhchimeg
 
Chap11alg
Chap11algChap11alg
Chap11alg
Munkhchimeg
 
Introduction to matlab lecture 3 of 4
Introduction to matlab lecture 3 of 4Introduction to matlab lecture 3 of 4
Introduction to matlab lecture 3 of 4
Randa Elanwar
 
Social network-analysis-in-python
Social network-analysis-in-pythonSocial network-analysis-in-python
Social network-analysis-in-python
Joe OntheRocks
 
Shape Safety in Tensor Programming is Easy for a Theorem Prover -SBTB 2021
Shape Safety in Tensor Programming is Easy for a Theorem Prover -SBTB 2021Shape Safety in Tensor Programming is Easy for a Theorem Prover -SBTB 2021
Shape Safety in Tensor Programming is Easy for a Theorem Prover -SBTB 2021
Peng Cheng
 
Beginning direct3d gameprogrammingmath03_vectors_20160328_jintaeks
Beginning direct3d gameprogrammingmath03_vectors_20160328_jintaeksBeginning direct3d gameprogrammingmath03_vectors_20160328_jintaeks
Beginning direct3d gameprogrammingmath03_vectors_20160328_jintaeks
JinTaek Seo
 
Array
ArrayArray
Array
Malainine Zaid
 
Matlab solved problems
Matlab solved problemsMatlab solved problems
Matlab solved problems
Make Mannan
 
How to use SVM for data classification
How to use SVM for data classificationHow to use SVM for data classification
How to use SVM for data classification
Yiwei Chen
 
Javascript Arrays
Javascript ArraysJavascript Arrays
Javascript Arrays
shaheenakv
 
CVRP solver with Multi-Head Attention
CVRP solver with Multi-Head AttentionCVRP solver with Multi-Head Attention
CVRP solver with Multi-Head Attention
Rintaro Sato
 
Introduction to NumPy for Machine Learning Programmers
Introduction to NumPy for Machine Learning ProgrammersIntroduction to NumPy for Machine Learning Programmers
Introduction to NumPy for Machine Learning Programmers
Kimikazu Kato
 
Array,MULTI ARRAY, IN C
Array,MULTI ARRAY, IN CArray,MULTI ARRAY, IN C
Array,MULTI ARRAY, IN C
naveed jamali
 
Lec 9 05_sept [compatibility mode]
Lec 9 05_sept [compatibility mode]Lec 9 05_sept [compatibility mode]
Lec 9 05_sept [compatibility mode]
Palak Sanghani
 
parameterized complexity for graph Motif
parameterized complexity for graph Motifparameterized complexity for graph Motif
parameterized complexity for graph Motif
AMR koura
 
RSA SIGNATURE: BEHIND THE SCENES
RSA SIGNATURE: BEHIND THE SCENESRSA SIGNATURE: BEHIND THE SCENES
RSA SIGNATURE: BEHIND THE SCENES
acijjournal
 
INTRODUCTION TO MATLAB presentation.pptx
INTRODUCTION TO MATLAB presentation.pptxINTRODUCTION TO MATLAB presentation.pptx
INTRODUCTION TO MATLAB presentation.pptx
Devaraj Chilakala
 
Lec-35Graph - Graph - Copy in Data Structure
Lec-35Graph - Graph - Copy in Data StructureLec-35Graph - Graph - Copy in Data Structure
Lec-35Graph - Graph - Copy in Data Structure
Anil Yadav
 
Signyourd digital signature certificate provider
Signyourd   digital signature certificate providerSignyourd   digital signature certificate provider
Signyourd digital signature certificate provider
Kishankant Yadav
 
Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...
Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...
Tensor Completion for PDEs with uncertain coefficients and Bayesian Update te...
Alexander Litvinenko
 
Introduction to matlab lecture 3 of 4
Introduction to matlab lecture 3 of 4Introduction to matlab lecture 3 of 4
Introduction to matlab lecture 3 of 4
Randa Elanwar
 
Social network-analysis-in-python
Social network-analysis-in-pythonSocial network-analysis-in-python
Social network-analysis-in-python
Joe OntheRocks
 
Shape Safety in Tensor Programming is Easy for a Theorem Prover -SBTB 2021
Shape Safety in Tensor Programming is Easy for a Theorem Prover -SBTB 2021Shape Safety in Tensor Programming is Easy for a Theorem Prover -SBTB 2021
Shape Safety in Tensor Programming is Easy for a Theorem Prover -SBTB 2021
Peng Cheng
 
Beginning direct3d gameprogrammingmath03_vectors_20160328_jintaeks
Beginning direct3d gameprogrammingmath03_vectors_20160328_jintaeksBeginning direct3d gameprogrammingmath03_vectors_20160328_jintaeks
Beginning direct3d gameprogrammingmath03_vectors_20160328_jintaeks
JinTaek Seo
 
Matlab solved problems
Matlab solved problemsMatlab solved problems
Matlab solved problems
Make Mannan
 
How to use SVM for data classification
How to use SVM for data classificationHow to use SVM for data classification
How to use SVM for data classification
Yiwei Chen
 
Javascript Arrays
Javascript ArraysJavascript Arrays
Javascript Arrays
shaheenakv
 
CVRP solver with Multi-Head Attention
CVRP solver with Multi-Head AttentionCVRP solver with Multi-Head Attention
CVRP solver with Multi-Head Attention
Rintaro Sato
 
Introduction to NumPy for Machine Learning Programmers
Introduction to NumPy for Machine Learning ProgrammersIntroduction to NumPy for Machine Learning Programmers
Introduction to NumPy for Machine Learning Programmers
Kimikazu Kato
 
Ad

More from National Chengchi University (12)

3-Move Undeniable Signature Scheme
3-Move Undeniable Signature Scheme3-Move Undeniable Signature Scheme
3-Move Undeniable Signature Scheme
National Chengchi University
 
Distributed key generation protocol with hierarchical threshold access structure
Distributed key generation protocol with hierarchical threshold access structureDistributed key generation protocol with hierarchical threshold access structure
Distributed key generation protocol with hierarchical threshold access structure
National Chengchi University
 
A Threshold Cryptosystem without a Trusted Party
A Threshold Cryptosystem without a Trusted PartyA Threshold Cryptosystem without a Trusted Party
A Threshold Cryptosystem without a Trusted Party
National Chengchi University
 
One round threshold ecdsa with identifiable abort
One round threshold ecdsa with identifiable abortOne round threshold ecdsa with identifiable abort
One round threshold ecdsa with identifiable abort
National Chengchi University
 
Dynamic and verifiable hierarchical secret sharing
Dynamic and verifiable hierarchical secret sharingDynamic and verifiable hierarchical secret sharing
Dynamic and verifiable hierarchical secret sharing
National Chengchi University
 
Fast Multiparty Threshold ECDSA with Fast TrustlessSetup
Fast Multiparty Threshold ECDSA with Fast TrustlessSetupFast Multiparty Threshold ECDSA with Fast TrustlessSetup
Fast Multiparty Threshold ECDSA with Fast TrustlessSetup
National Chengchi University
 
Threshold-optimal DSAECDSA signatures and an application to Bitcoin wallet se...
Threshold-optimal DSAECDSA signatures and an application to Bitcoin wallet se...Threshold-optimal DSAECDSA signatures and an application to Bitcoin wallet se...
Threshold-optimal DSAECDSA signatures and an application to Bitcoin wallet se...
National Chengchi University
 
NCCU CPDA Lecture 12 Attribute Based Encryption
NCCU CPDA Lecture 12 Attribute Based EncryptionNCCU CPDA Lecture 12 Attribute Based Encryption
NCCU CPDA Lecture 12 Attribute Based Encryption
National Chengchi University
 
Pairing for beginneer
Pairing for beginneerPairing for beginneer
Pairing for beginneer
National Chengchi University
 
Efficient selective id secure identity based encryption without random oracles
Efficient selective id secure identity based encryption without random oraclesEfficient selective id secure identity based encryption without random oracles
Efficient selective id secure identity based encryption without random oracles
National Chengchi University
 
Forward secure asynchronous messaging from puncturable encryption
Forward secure asynchronous messaging from puncturable encryptionForward secure asynchronous messaging from puncturable encryption
Forward secure asynchronous messaging from puncturable encryption
National Chengchi University
 
Identity based encryption from the weil pairing
Identity based encryption from the weil pairingIdentity based encryption from the weil pairing
Identity based encryption from the weil pairing
National Chengchi University
 
Distributed key generation protocol with hierarchical threshold access structure
Distributed key generation protocol with hierarchical threshold access structureDistributed key generation protocol with hierarchical threshold access structure
Distributed key generation protocol with hierarchical threshold access structure
National Chengchi University
 
Dynamic and verifiable hierarchical secret sharing
Dynamic and verifiable hierarchical secret sharingDynamic and verifiable hierarchical secret sharing
Dynamic and verifiable hierarchical secret sharing
National Chengchi University
 
Fast Multiparty Threshold ECDSA with Fast TrustlessSetup
Fast Multiparty Threshold ECDSA with Fast TrustlessSetupFast Multiparty Threshold ECDSA with Fast TrustlessSetup
Fast Multiparty Threshold ECDSA with Fast TrustlessSetup
National Chengchi University
 
Threshold-optimal DSAECDSA signatures and an application to Bitcoin wallet se...
Threshold-optimal DSAECDSA signatures and an application to Bitcoin wallet se...Threshold-optimal DSAECDSA signatures and an application to Bitcoin wallet se...
Threshold-optimal DSAECDSA signatures and an application to Bitcoin wallet se...
National Chengchi University
 
Efficient selective id secure identity based encryption without random oracles
Efficient selective id secure identity based encryption without random oraclesEfficient selective id secure identity based encryption without random oracles
Efficient selective id secure identity based encryption without random oracles
National Chengchi University
 
Forward secure asynchronous messaging from puncturable encryption
Forward secure asynchronous messaging from puncturable encryptionForward secure asynchronous messaging from puncturable encryption
Forward secure asynchronous messaging from puncturable encryption
National Chengchi University
 
Ad

Recently uploaded (20)

Class-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,Phosphoros
Class-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,PhosphorosClass-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,Phosphoros
Class-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,Phosphoros
govindapathak8
 
Lecture 12 Types of farming system
Lecture 12       Types of farming systemLecture 12       Types of farming system
Lecture 12 Types of farming system
Nickala1
 
On the Lunar Origin of Near-Earth Asteroid 2024 PT5
On the Lunar Origin of Near-Earth Asteroid 2024 PT5On the Lunar Origin of Near-Earth Asteroid 2024 PT5
On the Lunar Origin of Near-Earth Asteroid 2024 PT5
Sérgio Sacani
 
Causes of mortalities of eggs and spawn and remedies.pptx
Causes of mortalities of eggs and spawn and remedies.pptxCauses of mortalities of eggs and spawn and remedies.pptx
Causes of mortalities of eggs and spawn and remedies.pptx
anshumanmohanty9090
 
SuperconductingMagneticEnergyStorage.pptx
SuperconductingMagneticEnergyStorage.pptxSuperconductingMagneticEnergyStorage.pptx
SuperconductingMagneticEnergyStorage.pptx
BurkanAlpKale
 
Structure formation with primordial black holes: collisional dynamics, binari...
Structure formation with primordial black holes: collisional dynamics, binari...Structure formation with primordial black holes: collisional dynamics, binari...
Structure formation with primordial black holes: collisional dynamics, binari...
Sérgio Sacani
 
Polytene chromosomes. A Practical Lecture.pptx
Polytene chromosomes. A Practical Lecture.pptxPolytene chromosomes. A Practical Lecture.pptx
Polytene chromosomes. A Practical Lecture.pptx
Dr Showkat Ahmad Wani
 
Water analysis practical for ph, tds, hardness, acidity, conductivity, and ba...
Water analysis practical for ph, tds, hardness, acidity, conductivity, and ba...Water analysis practical for ph, tds, hardness, acidity, conductivity, and ba...
Water analysis practical for ph, tds, hardness, acidity, conductivity, and ba...
ss0077014
 
Multydisciplinary Nature of Environmental Studies
Multydisciplinary Nature of Environmental StudiesMultydisciplinary Nature of Environmental Studies
Multydisciplinary Nature of Environmental Studies
Ashokrao Mane college of Pharmacy Peth-Vadgaon
 
Parallel resonance circuits of science.pdf
Parallel resonance circuits of science.pdfParallel resonance circuits of science.pdf
Parallel resonance circuits of science.pdf
rk5867336912
 
APES 6.5 Presentation Fossil Fuels .pdf
APES 6.5 Presentation Fossil Fuels   .pdfAPES 6.5 Presentation Fossil Fuels   .pdf
APES 6.5 Presentation Fossil Fuels .pdf
patelereftu
 
2025 Insilicogen Company Korean Brochure
2025 Insilicogen Company Korean Brochure2025 Insilicogen Company Korean Brochure
2025 Insilicogen Company Korean Brochure
Insilico Gen
 
Application of Microbiology- Industrial, agricultural, medical
Application of Microbiology- Industrial, agricultural, medicalApplication of Microbiology- Industrial, agricultural, medical
Application of Microbiology- Industrial, agricultural, medical
Anoja Kurian
 
Botany-Finals-Patterns-of-Inheritance-DNA-Synthesis.pdf
Botany-Finals-Patterns-of-Inheritance-DNA-Synthesis.pdfBotany-Finals-Patterns-of-Inheritance-DNA-Synthesis.pdf
Botany-Finals-Patterns-of-Inheritance-DNA-Synthesis.pdf
JseleBurgos
 
whole ANATOMY OF EYE with eye ball .pptx
whole ANATOMY OF EYE with eye ball .pptxwhole ANATOMY OF EYE with eye ball .pptx
whole ANATOMY OF EYE with eye ball .pptx
simranjangra13
 
biochemistry amino acid from chemistry to life machinery
biochemistry amino acid from chemistry to life machinerybiochemistry amino acid from chemistry to life machinery
biochemistry amino acid from chemistry to life machinery
chaitanyaa4444
 
Gel Electrophorosis, A Practical Lecture.pptx
Gel Electrophorosis, A Practical Lecture.pptxGel Electrophorosis, A Practical Lecture.pptx
Gel Electrophorosis, A Practical Lecture.pptx
Dr Showkat Ahmad Wani
 
2025 Insilicogen Company English Brochure
2025 Insilicogen Company English Brochure2025 Insilicogen Company English Brochure
2025 Insilicogen Company English Brochure
Insilico Gen
 
Skin_Glands_Structure_Secretion _Control
Skin_Glands_Structure_Secretion _ControlSkin_Glands_Structure_Secretion _Control
Skin_Glands_Structure_Secretion _Control
muralinath2
 
amino compounds.pptx class 12_Govinda Pathak
amino compounds.pptx class 12_Govinda Pathakamino compounds.pptx class 12_Govinda Pathak
amino compounds.pptx class 12_Govinda Pathak
GovindaPathak6
 
Class-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,Phosphoros
Class-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,PhosphorosClass-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,Phosphoros
Class-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,Phosphoros
govindapathak8
 
Lecture 12 Types of farming system
Lecture 12       Types of farming systemLecture 12       Types of farming system
Lecture 12 Types of farming system
Nickala1
 
On the Lunar Origin of Near-Earth Asteroid 2024 PT5
On the Lunar Origin of Near-Earth Asteroid 2024 PT5On the Lunar Origin of Near-Earth Asteroid 2024 PT5
On the Lunar Origin of Near-Earth Asteroid 2024 PT5
Sérgio Sacani
 
Causes of mortalities of eggs and spawn and remedies.pptx
Causes of mortalities of eggs and spawn and remedies.pptxCauses of mortalities of eggs and spawn and remedies.pptx
Causes of mortalities of eggs and spawn and remedies.pptx
anshumanmohanty9090
 
SuperconductingMagneticEnergyStorage.pptx
SuperconductingMagneticEnergyStorage.pptxSuperconductingMagneticEnergyStorage.pptx
SuperconductingMagneticEnergyStorage.pptx
BurkanAlpKale
 
Structure formation with primordial black holes: collisional dynamics, binari...
Structure formation with primordial black holes: collisional dynamics, binari...Structure formation with primordial black holes: collisional dynamics, binari...
Structure formation with primordial black holes: collisional dynamics, binari...
Sérgio Sacani
 
Polytene chromosomes. A Practical Lecture.pptx
Polytene chromosomes. A Practical Lecture.pptxPolytene chromosomes. A Practical Lecture.pptx
Polytene chromosomes. A Practical Lecture.pptx
Dr Showkat Ahmad Wani
 
Water analysis practical for ph, tds, hardness, acidity, conductivity, and ba...
Water analysis practical for ph, tds, hardness, acidity, conductivity, and ba...Water analysis practical for ph, tds, hardness, acidity, conductivity, and ba...
Water analysis practical for ph, tds, hardness, acidity, conductivity, and ba...
ss0077014
 
Parallel resonance circuits of science.pdf
Parallel resonance circuits of science.pdfParallel resonance circuits of science.pdf
Parallel resonance circuits of science.pdf
rk5867336912
 
APES 6.5 Presentation Fossil Fuels .pdf
APES 6.5 Presentation Fossil Fuels   .pdfAPES 6.5 Presentation Fossil Fuels   .pdf
APES 6.5 Presentation Fossil Fuels .pdf
patelereftu
 
2025 Insilicogen Company Korean Brochure
2025 Insilicogen Company Korean Brochure2025 Insilicogen Company Korean Brochure
2025 Insilicogen Company Korean Brochure
Insilico Gen
 
Application of Microbiology- Industrial, agricultural, medical
Application of Microbiology- Industrial, agricultural, medicalApplication of Microbiology- Industrial, agricultural, medical
Application of Microbiology- Industrial, agricultural, medical
Anoja Kurian
 
Botany-Finals-Patterns-of-Inheritance-DNA-Synthesis.pdf
Botany-Finals-Patterns-of-Inheritance-DNA-Synthesis.pdfBotany-Finals-Patterns-of-Inheritance-DNA-Synthesis.pdf
Botany-Finals-Patterns-of-Inheritance-DNA-Synthesis.pdf
JseleBurgos
 
whole ANATOMY OF EYE with eye ball .pptx
whole ANATOMY OF EYE with eye ball .pptxwhole ANATOMY OF EYE with eye ball .pptx
whole ANATOMY OF EYE with eye ball .pptx
simranjangra13
 
biochemistry amino acid from chemistry to life machinery
biochemistry amino acid from chemistry to life machinerybiochemistry amino acid from chemistry to life machinery
biochemistry amino acid from chemistry to life machinery
chaitanyaa4444
 
Gel Electrophorosis, A Practical Lecture.pptx
Gel Electrophorosis, A Practical Lecture.pptxGel Electrophorosis, A Practical Lecture.pptx
Gel Electrophorosis, A Practical Lecture.pptx
Dr Showkat Ahmad Wani
 
2025 Insilicogen Company English Brochure
2025 Insilicogen Company English Brochure2025 Insilicogen Company English Brochure
2025 Insilicogen Company English Brochure
Insilico Gen
 
Skin_Glands_Structure_Secretion _Control
Skin_Glands_Structure_Secretion _ControlSkin_Glands_Structure_Secretion _Control
Skin_Glands_Structure_Secretion _Control
muralinath2
 
amino compounds.pptx class 12_Govinda Pathak
amino compounds.pptx class 12_Govinda Pathakamino compounds.pptx class 12_Govinda Pathak
amino compounds.pptx class 12_Govinda Pathak
GovindaPathak6
 

User Account Access Graphs

  • 1. User Account Access Graphs ACM CCS 2019 Sven Hammann, Saša Radomirović, Ralf Sasse and David Basin 林彥賓 2020/11/25
  • 3. Introduction How save is your account? 3
  • 4. Contribution evulate security that could allow an attacker to compromise an account evulate recoverability that could result in a user being permanently locked out of an accoun 4
  • 5. Graph model Definition: An account access graph is a directed graph , where are vertices, are colors, and are directed colored edges. model account same color : all needed to access the account (i.e., multi-factor authentication) different colors : alternative access methods credentials : an account provides access to the credential G = (V , E , C )G G G VG CG E ⊆G V ×G V ×G CG v e e v e 5
  • 6. example A webshop account acc_shop that can be accessed with password pwd_shop or recovered from the e-mail account acc_mail. The e-mail account requires two- factor authentication with password pwd_mail and a code. The code is generated by an authentication app on a device. The device can be unlocked using either a fingerprint (finger) or a PIN. 6
  • 7. Access Sets Definition: the set of all vertices that have a c-colored edge to v. Formally, for an account access graph In (v) :c = {v′ ∈ V ∣e =G (v′, v, c) ∈ E }G Definition: the set of vertices that can directly or transitively be accessed from a set of vertices V the set for a vertex set is the smallest set that satisfies and is closed under the rule v ∈ accessFrom(V ) ∃c ∈ C : ∅ ⊊ In (v) ⊆ accessFrom(V )G c In (v)c G = (V , E , C )G G G accessFrom(v) accessFrom(V ) V ⊆ VG V ⊆ accessFrom(V ) 7
  • 8. Definition: the set of all sets of vertices that provide access to a vertex , that is AccessTo(v) := {V ⊆ V ∣v ∈G accessFrom(V )} Definition: The minimal access sets of a vertex v are all minimal sets that provide access to v. MinAccessTo(v) := {V ⊆ V ∣V ∈G AccessTo(v) ∧ (∀V ⊊′ V : V ∈′ / AccessTo(v))} AccessTo(v) v MinAccessTo(v) 8
  • 9. Definition: the set of all leaves in the graph Definition: A vertex with respect to a set of initial vertices consists of the minimal access sets V that only contain vertices from AccessBase(v) := {V ∈ MinAccessTo(v)∣V ⊆ V }init Vinit AccessBase(v, V )init v Vinit Vinit 9
  • 10. Example accessFrom(pwd , device, PIN) =mail {pwd , device, PIN, code, acc , acc }mail mail shop AccessTo(acc ) =mail {{acc }, {pwd , code}, {pwd , device, finger}, {pwd , device, PIN}}mail mail mail mail AccessBace(acc , V ) =shop init {{pwd }, {pwd , device, finger}, {pwd , device, PIN}}shop mail mail 10
  • 11. SECURITY SCORING SCHEMES main idea Whenever we can access , we can also access . Therefore, is at least as secure as V =init {pwd , device}acc AccessBace(acc , V ) =basic init {pwd }acc AccessBace(acc , V ) =full init {pwd , device}acc accfull accbasic accfull accbasic 11
  • 12. Requirements : Domain over which scores are defined is a partial order relating elements in : the set of initial vertices : maps a multiset of initial scores (of vertices in an access set) to an intermediate score (for that access set) : maps a set of intermediate scores (of access sets in a vertex’s access base) to a score (for that vertex D ⪯ D V ∈init VG Eval : P (D) →M D Combine : P(D) → D EvalSet(S) := Eval({Init(v′)∣v′ ∈ S}) Score(v) := Combine({EvalSet(S)∣S ∈ AccessBase(v, V init)}) 12
  • 13. Definition: Let be vertices in an account access graph . An access base for a vertex is at least as secure as that for if and only if any set of vertices that provides access to also provides access to AccessBase(v , V ) ⪯A init AccessBase(v , V ) :B init ⟺ ∀V ⊆ V :init v ∈B accessFrom(V ) → v ∈A accessFrom(V ) Theorem: Let be vertices in an account access graph and let be given. Let and (∀B ∈i B∃A ∈j A : A ⊆j B ) ⟺i A ⪯ B v , vA B G vB vA V vB vA v , vA B G V ⊆init VG A := AccessBase(v , V )A init B := AccessBase(v , V )B init 13
  • 14. Definition A security scoring scheme with score function is sound if, for any two vertices and AccessBase(v , V ) ⪯A init AccessBase(v , V ) ⟹B init Score (v ) ⪯S A S Score (v )S B Theorem A security scoring scheme is sound if the following two conditions hold (D, ⪯S , V , Init, Eval, Combine)init ScoreS vA vB (D, ⪯S , V , Init, Eval, Combine)init 14
  • 16. The sum-then-min scoring scheme: example: D = N, ⪯=≤, Eval(M) = m, Combine(S) =∑m∈M min (s)s∈S 16
  • 17. Multiset-based Scoring Scheme Set ⦃1, 1⦄ denotes an access method that requires two credentials with value 1 each a score of {⦃1, 1⦄, ⦃2⦄} denotes that the account can (transitively) be accessed either by two credentials with value 1 each, or a single credential with value 2. Definition for comparing scores: For two multisets and over if and only if , and there exists an indexing of their elements such that , and Example: and , but and are incomparable M N N, M ⪯ N k = ∣M∣ ≤ ∣N∣ = n M = {[m , ..., m ]}, N =1 k {[n , ..., n ]}1 n ∀1 ≤ i ≤ k : m ≤i ni {[1, 1]} ≺ {[1, 2]} {[1, 2]} ≺ {[1, 1, 2]} {[1, 2]} {[1, 1, 1]} 17
  • 18. Definition 12: For two sets of multisets if and only if Example: , but and are incomparable S , S , S ⪯1 2 1 S2 ∀N ∈ S ∃M ∈2 S :1 M ⪯ N {{[1, 1]}, {[1, 2]}} ≺ {{[1, 2]}, {[1, 1, 2]}} {{[1, 2]}} {{[1, 1]}, {[1, 1, 1]}} 18
  • 19. : for sets where Definition: The distributed product of two sets of multisets is defined as S ⊕1 S =2 {M ⊎ N∣M ∈ S , N ∈1 S }2 Example: ⊎ A ∪ B A, B A ∩ B = ∅ S , S1 2 ⊕{[{{[1]}}, {{[2, 2]}}, {{[3]}, {[4]}}]} = {{[1, 2, 2, 3]}, {[1, 2, 2, 4]}} 19
  • 20. Multisets Scoring Scheme : the sets of multisets over : Definition 12 Eval = Combine( ) = minimal( ), minimal := D = P (N)M N ⪯ ⊕ S S∪ S :∪ = ∪ SS ∈Si i {M∣M ∈ S ∧∪ ¬(∃M ∈′ S :∪ M ≺′ M)} 20
  • 21. Example {⦃1, 1⦄} and {⦃2⦄} are incomparable Score(acc ) =A Combine(EvalSet({pwd , pwd })) =A B {{[1, 1]}} Score(acc ) =B Combine(EvalSet({device})) = {{[2]}} 21
  • 22. Attacker attribute sets: Location = {rem, loc}, with rem < loc a local attacker has more capabilities than a remote one Skill = {none, some, exp}, with none < some < exp none: The attacker has no special skills some: The attacker he has special skills can exploit known vulnerabilities exp: An expert hacker An account with a score of {(rem, some), (loc, none)} could be compromised by a remote attacker with special skills or by a local attacker without any special skills. (rem, exp), (loc, some), could also compromise the account. 22
  • 23. Definition 16: For if and only if Consider a set of attacker tuples . Another set . is smaller or equal to if and only if for each attacker tuple in , there is a tuple representing a weaker (or equal) attacker, in Any attacker that could compromise the account with score S2 could also compromise the account with score S1 S , S ∈1 2 P(A ×1 ... × A ), S ⪯n 1 S2 ∀u ∈ S ∃t ∈2 S :1 t ⪯ u S2 S1 S1 S2 S2 S1 23
  • 24. Aattacker model scoring scheme Let be totally ordered attribute sets : sets of attribute tuples. : Definition 16. is a singleton set that contains the component-wise maximum of tuple set A , ..., A1 n D = P(A , ..., A )1 n ⪯ Eval(M) = compMax(M )∪ M :∪ = ∪ MM ∈Mi i compMax M∪ Combine(S) = minimal(S )∪ S :∪ = ∪ SS ∈Si i minimal(S ) :∪ = {t∣t ∈ S ∧∪ ¬(∃t ∈ S :∪ t′ ≺ t)} 24
  • 25. Score(accshop) = Combine(EvalSet({pwdshop}), EvalSet({pwdmail, device, finger}), EvalSet({pwdmail, device, PIN})) = Combine({(rem, some)}, {(loc, exp)}, {(loc, some)}) = minimal({(rem, some), (loc, exp), (loc, some)}) = {(rem, some)} 25
  • 26. LOCKOUT SETS AND RECOVERABILITY Definition For an account access graph G, the set lockoutFrom(V) closed under the following rule 26
  • 27. Example: lockoutFrom({pwdshop, device}) = {pwdshop, device, code, accmail, accshop} 27
  • 28. Definition Definition minimal lockout sets of a vertex v: Definition V_{init}$ denotes the vertices that a user might directly get locked out of Lockout(v) := {V ∈ V ∣v ∈G lockoutFrom(V )} MinLockout(v) := {V ∈ V ∣V ∈G Lockout(v) ∧ (∀V ′(V : V ′ < Lockout(v))} LockoutBase(v, V ) :init = {V ∈ MinLockout(v)∣V ⊆ V }init 28
  • 29. Example Let Vinit be the set of all leaves in the graph LockoutBase(acc , V ) = shop init {pwd , pwd }, {pwd , device},shop mail shop 29
  • 31. Inherent lockout risk There is an account with a service that provides single sign-on, and an account with a web shop using this single sign-on. accSSO accshop V :init = {pwd , acc }SSO SSO AccessBase(acc , V ) =shop init LockoutBase(acc , V ) =shop init {{pwd }, {acc }}SSO SSO 31
  • 32. Recovery paths and backdoors Backdoor: An account can be accessed more easily using recovery access methods than using its primary authentication method Recoverability point of view: If there is no backdoors in an access account graph, it's ineffective recovery. Definition S: security scoring scheme with scoring function Score be a set of edges used in recovery methods : the graph obtained from G by removing the edges in HasBackdoorS, E (v) :rec = Score (v) ≺G Score (v)G′ E ⊊rec EG G′ := (V , EG G E , C )rec G Erec 32
  • 33. let Thus, E :rec = {(acc , acc , red),mailA bank (acc , acc , red)}mailB mailA AccessBase (acc , V ) =G bank init {{pwd , device},bank {pwd , device}, {pwd }}mailA mailB AccessBase (acc , V ) =G′ bank init {{pwd , device}}bank Score (acc ) =G bank 1 < 3 = Score (acc )G′ bank HasBackdoor (acc )S,Erec bank 33
  • 34. Account importance Definition: let be a function that assigns to a vertex an importance value from a partially ordered domain Inconsistent (v , v ) :S,I 1 2 = I(v ) ≺1 I(v ) ∧2 Score(v ) ⪯1 Score(v )2 That is, represents a more important account than , but receives the same or a lower score value. I : V → DI DI v1 v2 34
  • 35. Example = {low, med, high} with the expected ordering Thus, DI I(acc ) =bank high ≻ med = I(acc )shop Score(acc ) =bank {(rem, some)} ≻ {(loc, some)} = Score(acc )shop Inconsistent (acc , acc )S,I bank shop 35