From 9323ddc6f1cf066b51bb0b501957c28b4833370f Mon Sep 17 00:00:00 2001 From: Robert Jeutter Date: Fri, 9 Jul 2021 15:43:52 +0200 Subject: [PATCH] Kapitel 3 --- Assets/Systemsicherheit-blp-example.png | Bin 0 -> 40705 bytes Assets/Systemsicherheit-blp-vs-biba.png | Bin 0 -> 30241 bytes Assets/Systemsicherheit-brewer-example-2.png | Bin 0 -> 51124 bytes Assets/Systemsicherheit-brewer-example.png | Bin 0 -> 54479 bytes Assets/Systemsicherheit-lattice-vs-acm.png | Bin 0 -> 24453 bytes .../Systemsicherheit-mls-conflict-classes.png | Bin 0 -> 21734 bytes .../Systemsicherheit-mls-information-flow.png | Bin 0 -> 17468 bytes Assets/Systemsicherheit-rbac-0.png | Bin 0 -> 29908 bytes Systemsicherheit.md | 1133 +++++++++++++++-- 9 files changed, 1043 insertions(+), 90 deletions(-) create mode 100644 Assets/Systemsicherheit-blp-example.png create mode 100644 Assets/Systemsicherheit-blp-vs-biba.png create mode 100644 Assets/Systemsicherheit-brewer-example-2.png create mode 100644 Assets/Systemsicherheit-brewer-example.png create mode 100644 Assets/Systemsicherheit-lattice-vs-acm.png create mode 100644 Assets/Systemsicherheit-mls-conflict-classes.png create mode 100644 Assets/Systemsicherheit-mls-information-flow.png create mode 100644 Assets/Systemsicherheit-rbac-0.png diff --git a/Assets/Systemsicherheit-blp-example.png b/Assets/Systemsicherheit-blp-example.png new file mode 100644 index 0000000000000000000000000000000000000000..0ec8b29daf7ceec30baaa419b589ed4edff0aabd GIT binary patch literal 40705 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 Am;e9( literal 0 HcmV?d00001 diff --git a/Assets/Systemsicherheit-blp-vs-biba.png b/Assets/Systemsicherheit-blp-vs-biba.png new file mode 100644 index 0000000000000000000000000000000000000000..f66595ec073fa8b85f3208268e5b16aada9c1cc0 GIT binary patch literal 30241 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 literal 0 HcmV?d00001 diff --git a/Assets/Systemsicherheit-brewer-example-2.png b/Assets/Systemsicherheit-brewer-example-2.png new file mode 100644 index 0000000000000000000000000000000000000000..32ed62f8e842686b805e6da3535a3c551ef24294 GIT binary patch literal 51124 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 z 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 LsctdF>Egcu0m+I? literal 0 HcmV?d00001 diff --git a/Assets/Systemsicherheit-mls-conflict-classes.png b/Assets/Systemsicherheit-mls-conflict-classes.png new file mode 100644 index 0000000000000000000000000000000000000000..f71d71ed6aac6beeaa84c702147bcb0ec141db44 GIT binary patch literal 21734 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 hB{#F9cRpMM@{s*6&{wDwc literal 0 HcmV?d00001 diff --git a/Assets/Systemsicherheit-mls-information-flow.png b/Assets/Systemsicherheit-mls-information-flow.png new file mode 100644 index 0000000000000000000000000000000000000000..dc328689283eac727dd1ccc4a8db832870e27f6a GIT binary patch literal 17468 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�oOBs9S31WevWAbk;jMW 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 literal 0 HcmV?d00001 diff --git a/Assets/Systemsicherheit-rbac-0.png b/Assets/Systemsicherheit-rbac-0.png new file mode 100644 index 0000000000000000000000000000000000000000..e898afbfbeebff914633aa882d09c17a0edcd194 GIT binary patch literal 29908 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%0DtA53y9XVK+1mcCqKGQX&1){oNTUNq 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 NNu56ze@5@#{{frnwp{=K literal 0 HcmV?d00001 diff --git a/Systemsicherheit.md b/Systemsicherheit.md index b6cdc3a..04c1a59 100644 --- a/Systemsicherheit.md +++ b/Systemsicherheit.md @@ -57,16 +57,49 @@ - [TAM Safety Decidability](#tam-safety-decidability) - [Acyclic TAM Models](#acyclic-tam-models) - [Roles-based Access Control Models (RBAC)](#roles-based-access-control-models-rbac) - - [ABAC](#abac) - - [Summary](#summary-2) + - [RBAC Access Control Function](#rbac-access-control-function) + - [RBAC96 Model Family](#rbac96-model-family) + - [RBAC Summary](#rbac-summary) + - [Attribute-based Access Control Models](#attribute-based-access-control-models) + - [ABAC Access Control Function](#abac-access-control-function) + - [ABAC Security Model](#abac-security-model) + - [ABAC Access Control Function](#abac-access-control-function-1) + - [ABAC Summary](#abac-summary) - [Information Flow Models](#information-flow-models) + - [The Denning Model](#the-denning-model) + - [Multilevel Security (MLS)](#multilevel-security-mls) + - [The Bell-LaPadula Model](#the-bell-lapadula-model) + - [Lattice vs. ACM](#lattice-vs-acm) + - [Consistency of L,cl, and m](#consistency-of-lcl-and-m) + - [BLP Security](#blp-security) + - [BLP Model Summary](#blp-model-summary) + - [The Biba Model](#the-biba-model) + - [Non-interference Models](#non-interference-models) + - [Example 1: Multi-application Smart Cards](#example-1-multi-application-smart-cards) + - [Example 2: Server System](#example-2-server-system) + - [NI Security Policies](#ni-security-policies) + - [NI Model Analysis](#ni-model-analysis) + - [Comparison to HRU and IF Models](#comparison-to-hru-and-if-models) + - [Hybrid Models](#hybrid-models) + - [Chinese-Wall Policies](#chinese-wall-policies) + - [The Brewer-Nash Model](#the-brewer-nash-model) + - [Brewer-Nash STS](#brewer-nash-sts) + - [Brewer-Nash Model](#brewer-nash-model) + - [Summary Brewer-Nash](#summary-brewer-nash) + - [The Least-Restrictive-CW Model](#the-least-restrictive-cw-model) + - [An MLS Model for Chinese-Wall Policies](#an-mls-model-for-chinese-wall-policies) + - [Summary CW](#summary-cw) + - [Summary](#summary-2) + - [ABAC](#abac) + - [Summary](#summary-3) + - [Information Flow Models](#information-flow-models-1) - [Denning](#denning) - [MLS](#mls) - [BLP](#blp) - [Biba](#biba) - - [Summary](#summary-3) - - [Non-interference Models](#non-interference-models) - - [Hybrid Models](#hybrid-models) + - [Summary](#summary-4) + - [Non-interference Models](#non-interference-models-1) + - [Hybrid Models](#hybrid-models-1) - [Brewer-Nash](#brewer-nash) - [LR-CW](#lr-cw) - [MLS-CW](#mls-cw) @@ -75,13 +108,13 @@ - [Model Specification](#model-specification) - [CorPS](#corps) - [SELinux Policy Language](#selinux-policy-language) - - [Summary](#summary-4) + - [Summary](#summary-5) - [Security Mechanisms](#security-mechanisms) - [Authorization](#authorization) - [Access Control Lists](#access-control-lists) - [Capability Lists](#capability-lists) - [Interceptors](#interceptors) - - [Summary](#summary-5) + - [Summary](#summary-6) - [Cryptographic Mechanisms](#cryptographic-mechanisms) - [Encryption](#encryption) - [Symmetric](#symmetric) @@ -95,7 +128,7 @@ - [Cryptographic Protocols](#cryptographic-protocols) - [SmartCards](#smartcards) - [Authentication Protocols](#authentication-protocols) - - [Summary](#summary-6) + - [Summary](#summary-7) - [Security Architectures](#security-architectures) - [Design Principles](#design-principles) - [Operating Systems Architectures](#operating-systems-architectures) @@ -105,7 +138,7 @@ - [CORBA](#corba) - [Web Services](#web-services) - [Kerberos](#kerberos) - - [Summary](#summary-7) + - [Summary](#summary-8) # Introduction ## Risk Scenarios @@ -306,7 +339,7 @@ Access Control Configuration -rw- --- --- 1 chris sales 2020-04-13 23:58 SalesFlyer.pdf ``` - Result: - - all users apparently set their permissions perfectly – from their own point of view + - all users apparently set their permissions perfectly - from their own point of view - all three together createda severe information flow vulnerability... - Ann has read access to the folder ProjectX Files @@ -321,7 +354,7 @@ Access Control Configuration Problem Analysis: - Limited knowledge ofusers - limited horizon: knowledge about the rest of a system configuration for making a sound decision about permissions - - limited problem awareness: see “lack of knowledge” + - limited problem awareness: see "lack of knowledge" - limited skills - Problem complexity -> effects ofindividualpermission assignments by users (= discretionary) tosystem-widesecurity properties @@ -339,7 +372,7 @@ Examples: - definition of roles and hierarchies - Management of cryptographic keys - -> e. g. for issuing certificates -- -> Master course on “IT-Sicherheitsmanagement” (in German) +- -> Master course on "IT-Sicherheitsmanagement" (in German) ### Technical Vulnerabilities The Problem: Complexity of IT Systems @@ -405,7 +438,7 @@ void processSomeMsg(char *msg, int msgSize){ > Security Breach > -> The attacker can remotely communicate, upload, download, and execute anything– with cooperation of the OS, since all of this runs with the original privileges of the victim program! +> The attacker can remotely communicate, upload, download, and execute anything- with cooperation of the OS, since all of this runs with the original privileges of the victim program! ##### Self-Study Task Do an internet research: Find a (more or less) recent example of a successful buffer overflow attack. Describe as precise as possible what happened during the attack and which programming error made it possible! @@ -434,7 +467,7 @@ How can we identify all during systems design and engineering...? ## Threat Analysis Goal: Identification of - Attack objectives and attackers -- Attack methods and practices (a.k.a. “Tactics, Techniques, and Procedures (TTPs)”) +- Attack methods and practices (a.k.a. "Tactics, Techniques, and Procedures (TTPs)") - -> know your enemy Approach: Compilation of a threat catalog, content: @@ -453,7 +486,7 @@ Attack Objectives Attackers - Professional organizations (which may be hired by anyone, incl. competitors or governments) -- Active and former employees (“Remember that IT guy we fired last year ...?”) +- Active and former employees ("Remember that IT guy we fired last year ...?") - Terrorists - Hackers (both good or evil) @@ -466,8 +499,8 @@ Examples - Insiders - regular, often privileged users of IT systems - statistically large share(> 40 %) - - often indirect -> social engineering (“Only amateurs target systems; professional target people.”) - - statistical profile: age 30–40, executive function (department heads, system administrators, lead programmers, ...) + - often indirect -> social engineering ("Only amateurs target systems; professional target people.") + - statistical profile: age 30-40, executive function (department heads, system administrators, lead programmers, ...) - weapons: technical and organisational insider knowledge, technical skills - -> Your own people. - Personal Profit @@ -475,7 +508,7 @@ Examples - Attackers: - Competitors - Insiders - - profile: age 40–50, management function + - profile: age 40-50, management function - typically: career peak reached, midlife crisis, new boat, new house, new partner, ... - weapons: organisational insider knowledge, organisational authority, management and leadership skills - Wreak Havoc @@ -593,7 +626,7 @@ Risk and Damage Potential: - Fully automated - Fighting the dark arts:extremely difficult - Number and cause of vulnerabilities - - number of “security updates” last month? + - number of "security updates" last month? - specification/implementation errors, weak security mechanisms - Speed - Smoke bombs @@ -678,7 +711,7 @@ Correlation of Vulnerabilities and Threats - m Threats - -> x Risks -Usually: $max(n,m)≪ x ≤ nm$ -> quite largerisk catalogue! +Usually: $max(n,m)≪ x $\leq$ nm$ -> quite largerisk catalogue! ### Risk Classification @@ -692,13 +725,13 @@ Approach: Qualitative risk matrix; dimensions: Damage Potential Assessment Examples for risks: -- Cloud computing:“Loss of VM integrity” -> contract penalties, loss of confidence/reputation -- Industrial plant control:“Tampering with frequency converters” -> damage or destruction of facility -- Critical public infrastructure:“Loss of availability due to DoS attacks” -> interrupted services, possible impact on public safety (cf. Finnish heating plant) -- Traffic management:“Loss of GPS data integrity” -> maximum credible accident w. r. t. safety +- Cloud computing:"Loss of VM integrity" -> contract penalties, loss of confidence/reputation +- Industrial plant control:"Tampering with frequency converters" -> damage or destruction of facility +- Critical public infrastructure:"Loss of availability due to DoS attacks" -> interrupted services, possible impact on public safety (cf. Finnish heating plant) +- Traffic management:"Loss of GPS data integrity" -> maximum credible accident w. r. t. safety #### General Fact: Damage potential is highly scenario-specific -Example: “Confidentiality breach of database contents” +Example: "Confidentiality breach of database contents" - Articles in online newspapers - -> small to mediumdamage due to lost paywall revenues - Account data of banks @@ -711,18 +744,18 @@ Depends on diverse, mostly non-technical side conditions #### Occurrence Probability Assessment Examples for risks: -- Cloud computing:“Loss of VM integrity” +- Cloud computing:"Loss of VM integrity" - -> depending on client data sensitivity -- Industrial plant control:“Tampering with frequency converters” +- Industrial plant control:"Tampering with frequency converters" - -> depending on plant sensitivity(cf.Stuxnet: nuclear centifuges) -- Critical public infrastructure:“Loss of availability due to DoS attacks” +- Critical public infrastructure:"Loss of availability due to DoS attacks" - -> depending on terroristic threat level -- Traffic management:“Loss of GPS data integrity” +- Traffic management:"Loss of GPS data integrity" - -> depending on terroristic threat level General Fact: Occurrence probability ishighly scenario-specific -Example: “Confidentiality breach of database contents” +Example: "Confidentiality breach of database contents" - Articles in online newspapers - -> smallfor articles that are publicly available anyway - Account data of banks @@ -841,7 +874,7 @@ Policy representations: 1. Each user must be identified based on key certificates issued by Airbus - Authorization: 2. Access to ProjectX files is granted only to the project staff (role-based access control) - 3. Changes to files are allowed only if both, the responsible engineer as well as the project leader, approve (“four eyes principle”) + 3. Changes to files are allowed only if both, the responsible engineer as well as the project leader, approve ("four eyes principle") 4. No information must flow from ProjectX to sales department - Communication: 5. For protecting integrity, confidentiality and authenticity, every communication is encrypted and digitally signed. @@ -891,10 +924,10 @@ Why We Use Formal Models Goal of Formal Security Models - Complete, unambiguous representation of security policies for 1. analyzing and explaining its behavior: - - $\rightarrow$ “This security policy will never allow that ...” - - $\rightarrow$ “This security policy authorizes/denies an access under conditions ... because ...” + - $\rightarrow$ "This security policy will never allow that ..." + - $\rightarrow$ "This security policy authorizes/denies an access under conditions ... because ..." 2. enabling its correct implementation: - - $\rightarrow$ “This rule is enforced by a C++ method ...” + - $\rightarrow$ "This rule is enforced by a C++ method ..." How We Use Formal Models: Model-based Methodology - Abstraction from (usually too complex) reality $\rightarrow$ get rid of insignificant details e. g.: allows statements about computability and computation complexity @@ -926,19 +959,19 @@ Security policies describeaccess rules $\rightarrow$ security models formalize Taxonomy > Identity-based access control models (IBAC) > -> Rules based on the identity of individual subjects (users, apps, processes, ...) or objects (files, directories, database tables, ...) $\rightarrow$ “Ann may read ProjectX Files.” +> Rules based on the identity of individual subjects (users, apps, processes, ...) or objects (files, directories, database tables, ...) $\rightarrow$ "Ann may read ProjectX Files." > Role-based access control models (RBAC) > -> Rules based on roles of subjects in an organization $\rightarrow$ “Ward physicians may modify electronic patient records (EPRs) in their ward.” +> Rules based on roles of subjects in an organization $\rightarrow$ "Ward physicians may modify electronic patient records (EPRs) in their ward." > Attribute-based access control models (ABAC) > -> Rules based on attributes of subjects and objects $\rightarrow$ “PEGI 18 rated movies may only be streamed to users aged 18 and over.” +> Rules based on attributes of subjects and objects $\rightarrow$ "PEGI 18 rated movies may only be streamed to users aged 18 and over." > Discretionary Access Control (DAC) > -> Individual users specify access rules to objects within their area of responsibility (“at their discretion”). +> Individual users specify access rules to objects within their area of responsibility ("at their discretion"). Example: Access control in many OS (e. g. Unix(oids), Windows) @@ -1004,7 +1037,7 @@ Access Control Functions [Lampson, 1974] - $\rightarrow$ Definition of S,O, and OP - $\rightarrow$ Definition of f -iff = “if and only if” +iff = "if and only if" Example: Implementation of f in a Unix OS (heavily simplified): - S: set of identifiers for users who execute processes @@ -1015,17 +1048,15 @@ Example for f(caller,file,read): ```cpp read ( caller , file ) { if !(caller.uid == 0) {/* is caller == root? */ - if !(R_MODE in file.inode.othersRWX) {/* check “other”-rights */ - if !(caller.gid == file.inode.group && R_MODE in file.inode.groupRWX) {/* check “group”-rights */ - if !(caller.uid == file.inode.owner && R_MODE in file.inode.ownerRWX) {/* check “group”-rights */ + if !(R_MODE in file.inode.othersRWX) {/* check "other"-rights */ + if !(caller.gid == file.inode.group && R_MODE in file.inode.groupRWX) {/* check "group"-rights */ + if !(caller.uid == file.inode.owner && R_MODE in file.inode.ownerRWX) {/* check "group"-rights */ return ERR_ACCESS_DENIED;/* insufficient rights: deny access */ } } } -/* execute syscall ”read” */ +/* execute syscall "read" */ } ``` -Systems Security(Peter Amthor, ST 2021) 3–35 3.2.1.1 IBAC | ACF, ACM - > Self-Study Task > @@ -1047,7 +1078,7 @@ Lampson [1974] already addresses the questions how to ... > > An ACM is a matrix $m:S\times O \rightarrow 2^{OP}$, such that $\forall s\in S,\forall o\in O:op\in m(s,o)\Leftrightarrow f(s,o,op)$. -An ACM is a rewriting of the definition of an ACF: nothing is added, nothing is left out (“$\Leftrightarrow$”). Despite a purely theoretical model: paved the way for practically implementing AC meta-informationas +An ACM is a rewriting of the definition of an ACF: nothing is added, nothing is left out ("$\Leftrightarrow$"). Despite a purely theoretical model: paved the way for practically implementing AC meta-informationas - tables - 2-dimensional lists - distributed arrays and lists @@ -1068,11 +1099,11 @@ Implementation Notes - whose security mechanisms use one of two implementations: Access Control Lists (ACLs) -- Columns of the ACM: `char*o3[N] = { ”-”, ”-”, ”rw”, ...};` +- Columns of the ACM: `char*o3[N] = { "-", "-", "rw", ...};` - Found in I-Nodes of Unix(oids), Windows, Mac OS Capability Lists -- Rows of the ACM: `char* s1[K] = { ”-”, ”r”, ”-”, ...};` +- Rows of the ACM: `char* s1[K] = { "-", "r", "-", ...};` - Found in distributed OSs, middleware, Kerberos What we Actually Model: @@ -1097,13 +1128,13 @@ Our HIS scenario ... modeled by an ACM: | ... | We might do it like this, but ... Privilege escalation question: -“Can it ever happen that in a given state, some specific subject obtains a specific permission?” +"Can it ever happen that in a given state, some specific subject obtains a specific permission?" $\varnothing \Rightarrow \{r,w\}$ - ACM models a single state ⟨S,O,OP,m⟩ - ACM does not tell us anything about what might happen in the future - Behavior prediction $\rightarrow$ proliferation of rights $\rightarrow$ HRU safety -Why “safety”, not “security”? Well, historical ... +Why "safety", not "security"? Well, historical ... We need a model which allows statements about - Dynamic behavior of right assignments @@ -1123,10 +1154,10 @@ Mealy Automaton: $⟨Q,\sum,\Omega,\delta,\lambda,q_0⟩$ - $\delta:Q\times\sum\rightarrow Q$ is the state transition function - $\lambda:Q\times\sum\rightarrow\Omega$ is the output function - $q_0\in Q$ is the initial state -- $\delta(q,\sigma)=q′$ and $\lambda(q,\sigma)=\omega$ can be expressed through thestate diagram: a directed graph $⟨Q,E⟩$, where each edge $e\in E$ is represented by a state transition’s predecessor node $q$, its successor node $q′$, and a string “$\sigma|\omega$” of its input and output, respectively. +- $\delta(q,\sigma)=q′$ and $\lambda(q,\sigma)=\omega$ can be expressed through thestate diagram: a directed graph $⟨Q,E⟩$, where each edge $e\in E$ is represented by a state transition’s predecessor node $q$, its successor node $q′$, and a string "$\sigma|\omega$" of its input and output, respectively. ![](Assets/Systemsicherheit-mealy-automaton.png) -Example: Return “yes” for any input in an unbroken sequence of “a” or “b”, “no” otherwise. +Example: Return "yes" for any input in an unbroken sequence of "a" or "b", "no" otherwise. ![](Assets/Systemsicherheit-mealy-beispiel.png) > Self-Study Task @@ -1173,7 +1204,7 @@ Interpretation - may modify $O_q$ (create/delete a file $x_i$, open a socket $x_i$ etc.), - may modify the contents of a matrix cell $m_q(x_i,x_j)$ (enter or remove rights) where $1\leq i,j\leq k$. - $\rightarrow$ We also call $\delta$ the state transition scheme (STS) of a model. - - Historically: “authorization scheme” [Harrison et al., 1976]. + - Historically: "authorization scheme" [Harrison et al., 1976]. ##### State Transition Scheme (STS) Using the STS, $\sigma:Q\times\sum\rightarrow Q$ is defined by a set of specifications in the normalized form @@ -1187,11 +1218,11 @@ $\sigma(q,⟨op,(x_1,...,x_k)⟩)$=if $r_1\in m_q(x_{s1},x_{o1}) \wedge ... \wed Whenever $q$ is obvious or irrelevant, we use a programming-style notation Interpretation: The structure of STS definitions is fixed in HRU: -- “if”: A conjunction of condition clauses (or just conditions) with the sole semantics “is some right in some matrix cell”. -- “then”: A concatenation (sequential execution) of HRU primitives. +- "if": A conjunction of condition clauses (or just conditions) with the sole semantics "is some right in some matrix cell". +- "then": A concatenation (sequential execution) of HRU primitives. Conditions: -Expressions that need to evaluate “true” for state q as a necessary precondition for command $op$ to be executable (= can be successfully called). +Expressions that need to evaluate "true" for state q as a necessary precondition for command $op$ to be executable (= can be successfully called). Primitives: Short, formal macros that describe differences between $q$ and $a$ successor state $q′=\sigma(q,⟨op,(x_1 ,...,x_k)⟩)$ that result from a complete execution of op: @@ -1213,10 +1244,10 @@ How to Design an HRU Security Model: An Open University Information System ![](Assets/Systemsicherheit-university-information-system.png) - Informal security policy (heavily simplified):2 rules - - “A sample solution for home assignments can be downloaded by students only after submitting their own solution.” + - "A sample solution for home assignments can be downloaded by students only after submitting their own solution." - a condition for readSample - a effect of writeSolution - - “Student solutions can be submitted only before downloading any sample solution.” + - "Student solutions can be submitted only before downloading any sample solution." - a condition for writeSolution - a effect of readSample @@ -1235,7 +1266,7 @@ Model Making 2. State Transition Scheme - Effects of operations on protection state: - writeSolution - Informal Policy: “A sample solution (...) can be downloaded by students only after submitting their own solution.” $\Leftrightarrow$ “If the automaton receives an input ⟨writeSolution,(s,o)⟩ and the conditions are satisfied, it transitions to a state where s is allowed to download the sample solution.” + Informal Policy: "A sample solution (...) can be downloaded by students only after submitting their own solution." $\Leftrightarrow$ "If the automaton receives an input ⟨writeSolution,(s,o)⟩ and the conditions are satisfied, it transitions to a state where s is allowed to download the sample solution." ``` command writeSolution(s,o) ::= if write $\in$ m(s,o) then @@ -1243,7 +1274,7 @@ Model Making fi ``` - readSample - Informal Policy: “Student solutions can be submitted only before downloading any sample solution.” $\Leftrightarrow$ “If the automaton receives an input⟨readSample,(s,o)⟩and the conditions are satisfied, it transitions to a state wheresis denied to submit a solution.” + Informal Policy: "Student solutions can be submitted only before downloading any sample solution." $\Leftrightarrow$ "If the automaton receives an input⟨readSample,(s,o)⟩and the conditions are satisfied, it transitions to a state wheresis denied to submit a solution." ``` command readSample(s,o) ::= if read$\in$ m(s,o) then @@ -1260,7 +1291,7 @@ Model Making - $m_0(sBob,oBob)=\{write\}$ - $m_0(sChris,oChris)=\{write\}$ - $m_0(s,o)=\varnothing \Leftrightarrow s\not= o$ - - Interpretation: “There is a course with three students, each of whom has their own workspace to which she is allowed to submit (write) a solution.” + - Interpretation: "There is a course with three students, each of whom has their own workspace to which she is allowed to submit (write) a solution." Model Behavior - Initial Protection State @@ -1298,18 +1329,18 @@ Summary - Analysis of security properties $\rightarrow$ Next ... ##### HRU Model Analysis -- Reminder: “For a given security model, is it possible that a subjecteverobtains a specific permission with respect to a specific object?” +- Reminder: "For a given security model, is it possible that a subjecteverobtains a specific permission with respect to a specific object?" - Analysis of Right Proliferation $\rightarrow$ The HRU safety problem. InputSequences -- “What is the effect of an input in a given state?” $\rightarrow$ asingle state transitionas defined by $\delta$ -- “What is the effect of an input sequence in a given state?” $\rightarrow$ a composition ofsequential state transitionsas defined by $\delta*$ +- "What is the effect of an input in a given state?" $\rightarrow$ asingle state transitionas defined by $\delta$ +- "What is the effect of an input sequence in a given state?" $\rightarrow$ a composition ofsequential state transitionsas defined by $\delta*$ -> Transitive State Transition Functionδ∗ +> Transitive State Transition Function$\delta$^* > -> Let $\sigma\sigma\in\sum^*$ be a sequence of inputs consisting of a single input $\sigma\in\sum\cup\{\epsilon\}$ followed by a sequence $\sigma\in\sum^∗$, where $\epsilon$ denotes an empty input sequence. Then, $\delta∗:Q\times\sum^∗\rightarrow Q$ is defined by -> - $\delta∗(q,\sigma\sigma^∗)=\delta^∗(\delta(q,\sigma),\sigma^∗)$ -> - $\delta^∗(q,\epsilon)=q$. +> Let $\sigma\sigma\in\sum^*$ be a sequence of inputs consisting of a single input $\sigma\in\sum\cup\{\epsilon\}$ followed by a sequence $\sigma\in\sum^^*$, where $\epsilon$ denotes an empty input sequence. Then, $\delta^*:Q\times\sum^^*\rightarrow Q$ is defined by +> - $\delta^*(q,\sigma\sigma^^*)=\delta^^*(\delta(q,\sigma),\sigma^^*)$ +> - $\delta^^*(q,\epsilon)=q$. HRU Safety A state q of an HRU model is called HRU safe with respect to a right $r\in R$ iff, beginning with q, there is no sequence of commands that enters r in an ACM cell where it did not exist in q. @@ -1317,13 +1348,13 @@ According to Tripunitara and Li [2013], this property (Due to more technical det > HRU Safety > > For a state $q=\{S_q,O_q,m_q\}\in Q$ and a right $r\in R$ of an HRU model $⟨Q,\sum,\delta,q_0,R⟩$, the predicate $safe(q,r)$ holds iff -> $\forall q′= S_{q′},O_{q′},m_{q′} \in \{\delta^∗(q,\sigma^∗)|\sigma^∗\in\sum^∗\},\forall s\in S_{q′},\forall o\in O_{q′}: r\in m_{q′}(s,o)\Rightarrow s\in S_q \wedge o\in O_q \wedge r\in m_q(s,o)$. +> $\forall q′= S_{q′},O_{q′},m_{q′} \in \{\delta^^*(q,\sigma^^*)|\sigma^^*\in\sum^^*\},\forall s\in S_{q′},\forall o\in O_{q′}: r\in m_{q′}(s,o)\Rightarrow s\in S_q \wedge o\in O_q \wedge r\in m_q(s,o)$. > > We say that an HRU model is safe w.r.t. r iff $safe(q_0 ,r)$. ##### HRU Safety Examples -- Assume all states in ${\delta^∗(q,\sigma^∗)|\sigma^∗\in\sum^∗\}$ have been validated except for $q′$: +- Assume all states in ${\delta^^*(q,\sigma^^*)|\sigma^^*\in\sum^^*\}$ have been validated except for $q′$: - State transfer 1 | $m_q$ | $o_1$ | $o_2$ | $o_3$ | | ----- | ------------- | ------------- | --------- | @@ -1359,12 +1390,12 @@ Examples - $r_2\in m_{q′}(s_2,o_4)\wedge o_4\not\in O_q\Rightarrow\lnot safe(q,r_2)$ Let’s dissect the previous definitions: from a practical perspective, showing that an HRU model is safe w.r.t. r means to -1. Search for any possible (reachable) successor state $q′$ of $q_0$ (“$\{\delta(q_0,\sigma)|\sigma\in\sum\}$”) -2. Visit all cells in $m_{q′}$ (“$\forall s\in S_{q′},\forall o\in O_{q′}:...$”) -3. If r is found in one of these cells (“$r\in m_{q′}(s,o)$”), check if - - $m_q$ is defined for this very cell (“$s\in S_q\wedge o\in O_q$”), - - $r$ was already contained in this very cell in $m_q$ (“$r\in m_q(s,o)$”). -4. Recursively proceed with 2. for any possible successor state $q′′$ of $q′$ (“$\{\delta^∗(q_0,\sigma^∗)|\sigma^∗\in\sum^∗\}$”) +1. Search for any possible (reachable) successor state $q′$ of $q_0$ ("$\{\delta(q_0,\sigma)|\sigma\in\sum\}$") +2. Visit all cells in $m_{q′}$ ("$\forall s\in S_{q′},\forall o\in O_{q′}:...$") +3. If r is found in one of these cells ("$r\in m_{q′}(s,o)$"), check if + - $m_q$ is defined for this very cell ("$s\in S_q\wedge o\in O_q$"), + - $r$ was already contained in this very cell in $m_q$ ("$r\in m_q(s,o)$"). +4. Recursively proceed with 2. for any possible successor state $q′′$ of $q′$ ("$\{\delta^^*(q_0,\sigma^^*)|\sigma^^*\in\sum^^*\}$") Safety Decidability > Theorem 1 [Harrison et al., 1976] @@ -1375,8 +1406,8 @@ Safety Decidability > > For mono-operational models, HRU safety is decidable. -“So ... what is amono-operational HRU model?” $\rightarrow$ exactly one primitive for each operation in the STS: -``` +"So ... what is amono-operational HRU model?" $\rightarrow$ exactly one primitive for each operation in the STS: +```cpp command op(x_1 , ...,x_k) ::= if r_1 \in m(x_s1 ,x_o1 ) \wedge ... \wedge r_m \in m(x_sm,x_om) @@ -1384,12 +1415,11 @@ command op(x_1 , ...,x_k) ::= if r_1 \in m(x_s1 ,x_o1 ) \wedge p_1; fi ``` - - Theorem 1: See Harrison et al. [1976], reduction to the Halteproblem. - Theorem 2: We’ll have a closer look at this one ... - Insights into the operational principles modeled by HRU models - Demonstrates a method to prove safety property for a particular, given model - - $\rightarrow$ “Proofs teach us how to build things so nothing more needs to be proven.” (W. E. Kühnhauser) + - $\rightarrow$ "Proofs teach us how to build things so nothing more needs to be proven." (W. E. Kühnhauser) ##### Proof of Theorem - Proof Sketch @@ -1499,10 +1529,10 @@ Motivation: Idea: - State-space exploration by model simulation -- Task of heuristic: generating input sequences (“educated guessing”) +- Task of heuristic: generating input sequences ("educated guessing") Outline: Two-phase-algorithm to analyze $safe(q_0,r)$: -1. Static phase: Infer knowledge from the model that helps heuristic to make “good” decisions. +1. Static phase: Infer knowledge from the model that helps heuristic to make "good" decisions. - $\rightarrow$ Runtime: polynomial in model size ($q_0 + STS$) 2. Simulation phase: The automaton is implemented and, starting with $q_0$, fed with inputs $\sigma=⟨op,x⟩$ - $\rightarrow$ For each $\sigma$, the heuristic has to decide: @@ -1553,7 +1583,7 @@ How it Works: - Foundation of a TAM model is an HRU model $⟨Q,\sum,\delta,q_0 ,R⟩$, where $Q= 2^S\times 2^O\times M$ - However: $S\subseteq O$, i. e.: - all subjects can also act as objects (=targets of an access) - - $\rightarrow$ useful for modeling e. g. delegation (“s has the right to grant s′ her read-right”) + - $\rightarrow$ useful for modeling e. g. delegation ("s has the right to grant s′ her read-right") - objects in $O\backslash S$: pure objects - Each $o\in O$ has a type from a type set $T$ assigned through a mapping $type:O\rightarrow T$ - An HRU model is a special case of a TAM model: @@ -1603,7 +1633,7 @@ TAM Example: The ORCON Policy - Example Scenario: Originator Controlled Access Rights (ORCON Policy) - Goal: To illustrate usefulness/convenience of type system - ORCON describes sub-problem of larger policies - - Information flow confinement required by ORCON is tricky to do in HRU (“This information may not flow beyond ...”) + - Information flow confinement required by ORCON is tricky to do in HRU ("This information may not flow beyond ...") - The Problem - Creator/owner of a document shouldpermanently retain controlover its accesses - Neither direct nor indirect (by copying) right proliferation @@ -1623,7 +1653,7 @@ TAM Example: The ORCON Policy - $type_0(projectX)=co$ - Model Behavior (Example) - ann creates ORCON object _projectX_ (STS command createOrconObject) - - ann grants cread (“confined read”) right for projectX to bob (STS command grantCRead) + - ann grants cread ("confined read") right for projectX to bob (STS command grantCRead) - bob uses cread to create confined subject chris with permission to read projectX (STS command useCRead) | m | ann:s | bob:s | projectX:co | chris:cs | | -------- | ------------- | ------------- | ---------------------- | ------------- | @@ -1701,7 +1731,7 @@ TAM Example: The ORCON Policy - Are not monotonic (consequences ...) - Summary - Contributions of ORCON Example - - Owner (“originator”) retains full control over + - Owner ("originator") retains full control over - Use of her confined objects by third parties $\rightarrow$ transitive right revocation - Subjects using (or misusing) these objects $\rightarrow$ destruction of these subjects - Subjects using such objects are confined: cannot forward read information @@ -1760,8 +1790,8 @@ Safety Decidability Expressive Power of TAMTAM - MTAM: obviously same expressive power as monotonic HRU (MHRU) $\rightarrow$ cannot model: - - transfer of rights: “take r from ... and in turn grant r to ...” - - countdown rights: “r can only be used n times” + - transfer of rights: "take r from ... and in turn grant r to ..." + - countdown rights: "r can only be used n times" - ORCON example (and many others): allow to ignore non-monotonic command $s$ from STS, e.g. 4.-7., since they - only remove rights - are reversible (e. g.: undo 4. by 2.; compensate 7. by 3. where the new subject takes roles of the destroyed one) @@ -1796,7 +1826,7 @@ IBAC Summary - Limitations - IBAC models are fundamental: KISS - IBAC models provide basic expressiveness only: - - Comparable to “assembler programs for writing AC policies” + - Comparable to "assembler programs for writing AC policies" - Imagine writing a sophisticated end-user application in assembler: - reserve and keep track of memory layout and addresses ≈ create and maintain individual rights for thousands of subjects, billions of objects - display comfortable GUI by writing to the video card framebuffer ≈ specify sophisticated workflows through an HRU STS @@ -1804,7 +1834,7 @@ IBAC Summary - Large information systems: many users, many databases, files, ... $\rightarrow$ Scalability problem - Access decisions not just based on subjects, objects, and operations $\rightarrow$ Abstraction problem -$\rightarrow$ “New” paradigm (early–mid 90s): Role-based Access Control +$\rightarrow$ "New" paradigm (early-mid 90s): Role-based Access Control #### Roles-based Access Control Models (RBAC) @@ -1834,6 +1864,929 @@ RBAC Application Domains - Operating systems - Roles: System admin, webserver admin, database admin, key account user, user, ... +RBAC Idea +- Models include smart abstraction: roles +- Access control rules are specified based on roles instead of identities: + - "All ward physiciansare allowed to read EPRs." + - "Allnursesare allowed to log body temperature." +- Compared to IBAC + - IBAC Semantics: + - Subjects, objects, and rights for executing operations + - Access rules are based onidentity of individualsubjects and objects + - RBAC Semantics: + - Users, roles, and rights for executing operations + - Access rules are based onrolesof users $\rightarrow$ on assignments: + + +RBAC Security Model Definition +> Basic RBAC model: "$RBAC_0$" [Sandhu, 1994]: +> +> An RBAC 0 model is a tuple $⟨U,R,P,S,UA,PA,user,roles⟩$ where +> - U is a set of user identifiers, +> - R is a set of role identifiers, +> - P is a set of permission identifiers, +> - S is a set of session identifiers, +> - $UA\subseteq U\times R$ is a many-to-many user-role-relation, +> - $PA\subseteq P\times R$ is a many-to-many permission-role-relation, +> - $user:S\rightarrow U$ is a total function mapping sessions to users, +> - $roles:S\rightarrow 2^R$ is a total function mapping sessions to sets of roles such that $\forall s\in S:r\in roles(s)\Rightarrow ⟨user(s),r⟩\in UA$. + +Interpretation +- Users U model people: actual humans that operate the AC system +- Roles R model functions (accumulations of tasks), that originate from the workflows and areas of responsibility in organizations +- Permissions P model rights for any particular access to a particular document (e. g. read project documentation, transfer money, write into EPR, ...) +- The user-role-relation $UA\subseteq U\times R$ defines which roles are available to users at any given time $\rightarrow$ must be assumed during runtime first, before they are usable! +- The permission-role-relation $PA\subseteq P\times R$ defines which permissions are associate with roles +- $UA$ and $PA$ describe static policy rules: Roles available to a user are not considered to possibly change, same with permissions associated with a role. Examples: + - "Bob may assume the role of a developer; Ann may assume the role of a developer or a project manager; ..." + - "A developer may read and write the project documentation; a project manager may create branches of a source code repository; ..." +- Sessions $S$ describe dynamic assignments of roles $\rightarrow$ a session $s\in S$ models when a user is logged in(where she may use some role(s) available to her as per $UA$): + - The session-user-mapping user: $S\rightarrow U$ associates a session with its ("owning") user + - The session-roles-mapping roles: $S\rightarrow 2^R$ associates a session with the set of roles currently assumed by that user (active roles) + +![](Assets/Systemsicherheit-rbac-0.png) + +Remark: +Note the difference between users in RBAC and subjects in IBAC: the latter usually represent a technical abstraction, such as an OS process, while RBAC users always model an organizational abstraction, such as an employee, a patient, etc.! + +##### RBAC Access Control Function +- Authorization in practice: access rules have to be defined for operations on objects (cf. IBAC) +- IBAC approach: access control function $f:S\times O\times OP\rightarrow \{true,false\}$ +- RBAC approach: implicitly defined through $P\rightarrow$ made explicit: $P\subseteq O\times OP$ is a set of permission tuples $⟨o,op⟩$ where + - $o\in O$ is an object from a set of object identifiers, + - $op\in OP$ is an operation from a set of operation identifiers. +- We may now define the $ACF$ for $RBAC_0$: + +> $RBAC_0$ ACF +> +> $f_{RBAC_0}:U \times O\times OP\rightarrow\{true,false\}$ where +> $f_{RBAC_0} (u,o,op)= \begin{cases} true, \quad \exists r\in R,s\in S:u=user(s)\wedge r\in roles(s)\wedge ⟨⟨o,op⟩,r⟩ \in PA \\ false, \quad\text{ otherwise\end{cases}$. + +##### RBAC96 Model Family +Sandhu et al. [1996] + +In practice, organizations have more requirements that need to be expressed in their security policy: +- Roles are often hierarchical: "Any project manager is also a developer, any medical director is also a doctor, ..." $\rightarrow$ $RBAC_1 = RBAC_0 + hierarchies$ +- Role association and activation are often constrained: "No purchasing manager may be head of internal auditing, no product manager may be logged in as a project manager for more than one project at a time, ..." $\rightarrow$ $RBAC_2 = RBAC_0 + constraints$ +- Both may be needed: $\rightarrow$ $RBAC_3$ = consolidation: $RBAC_0 + RBAC_1 + RBAC_2$ + +RBAC 1 : Role Hierarchies +- Observation: Roles in organizations often overlap: + - Users in different roles havecommon permissions: "Any project manager must have the same permissions as any developer in the same project." + - Approach 1: disjoint permissions for roles proManager and proDev $\rightarrow$ any proManager user must always have proDev assigned and activated for any of her workflows $\rightarrow$ role assignment redundancy + - Approach 2: overlapping permissions: $\forall p\in P:⟨p,proDev⟩ \in PA\Rightarrow ⟨p,proManager⟩ \in PA\rightarrow$ any permission for project developers must be assigned to two different roles $\rightarrow$ role definition redundancy + - Two types of redundancy $\rightarrow$ undermines scalability goal of RBAC! +- Solution + - Role hierarchy: Eliminates role definition redundancy through permissions inheritance +- Modeling Role Hierarchies + - Lattice here: $⟨R,\leq⟩$ + - Hierarchy expressed through dominance relation: $r_1\leq r_2 \Leftrightarrow r_2$ inherits any permissions from $r_1$ + - Interpretation + - Reflexivity: any role consists of ("inherits") its own permissions $\forall r\in R:r\leq r$ + - Antisymmetry: no two different roles may mutually inherit their respective permissions $\forall r_1 ,r_2\in R:r_1\leq r_2\wedge r_2\leq r_1\Rightarrow r_1=r_2$ + - Transitivity: permissions may be inherited indirectly $\forall r_1,r_2,r_3\in R:r_1\leq r_2 \wedge r_2\leq r_3\Rightarrow r_1\leq r_3$ + +> $RBAC_1$ Security Model +> +> An $RBAC_1$ model is a tuple $⟨U,R,P,S,UA,PA,user,roles,RH⟩$ where +> - $U,R,P,S,UA,PA$ and $user$ are defined as for $RBAC_0$, +> - $RH\subseteq R\times R$ is a partial order that represents a role hierarchy where $⟨r,r′⟩\in RH\Leftrightarrow r\leq r′$ such that $⟨R,\leq⟩$ is a lattice, +> - roles is defined as for $RBAC_0$, while additionally holds: $\forall r,r′\in R,\exists s\in S:r\leq r′\wedge r′\in roles(s)\Rightarrow r\in roles(s)$. + +In prose: When activating any role that inherits permissions from another role, this other role isautomatically(by definition) active as well. +- $\rightarrow$ no role assignment redundancy in defining the STS +- $\rightarrow$ no role definition redundancy in defining PA + + +RBAC 2 : Constraints +- Observation: Assuming and activating roles in organizations is often more restricted: + - Certain roles may not beactive at the same time(same session)for any user: "A payment initiator may not be a payment authorizer at the same time (in the same session)." + - Certain roles may not be together assigned to any user: "A purchasing manager never be the same person as the head of internal auditing." + - $\rightarrow$ separation of duty (SoD) + - While SoD constraints are a more fine-grained type of security requirements to avoid mission-critical risks, there are other types represented by RBAC constraints. +- Constraint Types + - Separation of duty: mutually exclusive roles + - Quantitative constraints: maximum number of roles per user + - Temporal constraints: time/date/week/... of role activation (advanced RBAC models, e.g. Bertino et al. [2001]) + - Factual constraints: assigning or activating roles for specific permissions causally depends on any roles for a certain, other permissions (e.g. only allow user $u$ to activate auditingDelegator role if audit payments permission is usable by $u$) +- Modeling Constraints:(idea only) + - $RBAC_2 : ⟨U,R,P,S,UA,PA,user,roles,RE⟩$ + - $RBAC_3 : ⟨U,R,P,S,UA,PA,user,roles,RH,RE⟩$ + - where $RE$ is aset of logical expressions over the other model components (such as $UA,PA,user,roles$). + +##### RBAC Summary +- Scalability +- Application-oriented model abstractions +- Standardization (RBAC96) $\rightarrow$ tool-support for: + - role engineering (identifying and modeling roles) + - model engineering (specifying and validating a model configuration) + - static model checking (verifying consistency and plausibility of a model configuration) +- Still weak OS-support + - $\rightarrow$ application-level integrations (e. g. hospital IS, DBIS, ERP systems) + - $\rightarrow$ middleware integrations (e. g. XACML, NGAC[Ferraiolo et al., 2016]) +- Limited dynamic analyses w.r.t. automaton-based models + - cf. HRU:safety properties? + - solution approach: automaton-based RBAC96 model + - $\rightarrow$ DRBAC 0 ... 3 [Schlegel and Amthor, 2020] + + +#### Attribute-based Access Control Models +Goals of ABAC: +- Providing a more versatile solution than RBAC for these problems, especially for open and distributed systems. + - Scalability and manageability + - Application-oriented model abstractions + - Model semantics meet functional requirements of open systems: + - user IDs, INode IDs, ... only available locally, scaling bad + - roles that gather permissions model functions limited to specific organizational structure; only assignable to users + - $\rightarrow$ Consider application-specific context of an access: attributes of subjects and objects(e. g. age, location, trust level, ...) + +Idea: Generalizing the principle of indirection already known from RBAC +- IBAC: no indirection between subjects and objects +- RBAC: indirection via roles assigned to subjects +- ABAC: indirection via arbitrary attributes assigned to subjects or objects +- Attributes model application-specific properties of the system entities involved in any access, e. g.: + - Age, location, trustworthiness of a application/user/device/... + - Size, creation time, premium-access classification of web resource/multimedia content/document/... + - Risk quantification involved with these subjects and objects (e. g. access from an IP address/proxy domain reportedly belonging to a TOR network) + +##### ABAC Access Control Function +- $f_{IBAC}:S\times O\times OP\rightarrow\{true,false\}$ +- $f_{RBAC}:U\times O\times OP\rightarrow\{true,false\}$ +- $f_{ABAC}:S\times O\times OP\rightarrow\{true,false\}$ +- $\rightarrow$ Evaluates attribute values for $⟨s,o,op⟩$, e. g.: $f_{ABAC}(user,game,download)=game.pegi \leq user.age$ + +##### ABAC Security Model +- Note: There is no such thing (yet) like a standard ABAC model (such as RBAC96). +- Instead: Many highly specialized, application-specific models. +- Here: minimal common formalism, based on Servos and Osborn [2017] + +> ABAC Security Model +> +> An ABAC security model is a tuple $⟨S,O,AS,AO,attS,attO,OP,AAR⟩$ where +> - $S$ is a set of subject identifiers and $O$ is a set of object identifiers, +> - $A_S=V_S^1 \times...\times V_S^n$ is a set of subject attributes, where each attribute is an n-tuple of values from arbitrary domains $V_S^i$, $1\leq i \leq n$, +> - $A_O=V_O^1\times...\times V_O^m$ is a corresponding set of object attributes, based on values from arbitrary domains $V_O^j$, $1\leq j \leq m$, +> - $att_S:S\rightarrow A_S$ is the subject attribute assignment function, +> - $att_O:O\rightarrow A_O$ is the object attribute assignment function, +> - $OP$ is a set of operation identifiers, +> - $AAR\subseteq \Phi\times OP$ is the authorization relation. + +Interpretation +- Active and passive entities are modeled by $S$ and $O$, respectively +- Attributes in $AS,AO$ are index-referenced tuples of values, which are specific to some property of subjects $V_S^i$ (e.g. age) or of objects $V_O^j$ (e. g. PEGI rating) +- Attributes are assigned to subjects and objects via $att_S,att_O$ +- Access control rules w.r.t. the execution of operations in $OP$ are modeled by the $AAR$ relation $\rightarrow$ determines ACF! +- $AAR$ is based on aset of first-order logic predicates $\Phi$: $\Phi=\{\phi_1 (x_{s1},x_{o1}),\phi_2 (x_{s2},x_{o2}),...\}$. Each $\phi_i\in\Phi$ is a binary predicate (a logical statement with two arguments), where $x_{si}$ is a subject variable and $x_{oi}$ is an object variable. + + +##### ABAC Access Control Function +With conditions from $\Phi$ for executing operations in $OP,AAR$ determines the ACF of the model: + +> ABAC ACF +> +> $f_{ABAC}:S\times O\times OP\rightarrow\{true,false\}$ where +> $f_{ABAC}(s,o,op)= \begin{cases} true, \quad\exists ⟨\phi,op⟩\in AAR:\phi(s,o)=true\\ false, \quad\text{ otherwise }$. +> We call $\phi$ an authorization predicate for $op$. + +Example 1: Online Game Store +- Policy goal: Enforce PEGI age restrictions for video game access +- S: set of client IDs +- O: set of video game titles +- $A_S=\mathbb{N}(where\ n=1)$: one subject attribute (age) +- $A_O=\{0,3,7,12,14,18\}(where\ m=1)$: one object attribute (PEGI rating) +- $att_S:S\rightarrow A_S$: assigns age attribute to clients +- $att_O:O\rightarrow A_O$: assigns PEGI rating attribute to games +- $OP=\{download\}$: sole operation +- One simpleauthorization rule: $AAR=\{⟨att_O(o) \leq att_S(s),download⟩\}$ + +Example 2: Document Management System +- Policy goal: Enforce document confidentiality +- $S$: set of user IDs +- $O$: set of document IDs +- $A_S=\mathbb{N}(where\ n=1)$: subject attribute (trustworthiness value) +- $A_O=\mathbb{N}(where\ m=1)$: object attribute (confidentiality level) +- $att_S:S\rightarrow A_S$: assigns trustworthiness value to user (e. g. based on management level) +- $att_O:O\rightarrow A_O$: assigns confidentiality level to documents +- $OP=\{read,write,append,...\}$: operations +- Authorization rules: $AAR=\{⟨att_O(o)\leq att_S(s),read⟩,⟨att_S(s) \leq att_O(o),write⟩,...\}$ + +##### ABAC Summary +- Scalability +- Application-oriented model abstractions +- Universality: ABAC can conveniently express + - IBAC (attributes: IDs) + - RBAC (attributes: roles) + - MLS (attributes: sensitivity levels $\rightarrow$ next topic) +- Still weak OS-support $\rightarrow$ application-level integrations (increasingly replacing RBAC) +- Attribute semantics highly diverse, not normalizable $\rightarrow$ no common "standard ABAC" to expect (all too soon ...) +- Limited dynamic analyses w.r.t. automaton-based models + - cf. HRU:safety properties? + - solution approach: automaton-based ABAC model ... + + + + + +### Information Flow Models +Abstraction Level of AC Models: rules about subjects accessing objects + +Adequate for +- Workflow systems +- Document/information management systems +- ... that’s it. + +Goal of Information Flow (IF) Models: Problem-oriented definition of policy rules for scenarios based on information flows(rather than access rights) + + +Lattices (refreshment) +- Terms: + - $inf_C$: "systemlow" + - $sup_C$: "systemhigh" +- $\rightarrow$ notably, a graph described by a lattice +- is connected +- has a source: $deg^-(inf_C)= 0$ +- has a sink: $deg^+(sup_C)= 0$ + +> Self-Study Task +> +> I work on six days in a $week:W=\{Mo,Tu,We,Th,Fr,Sa\}$. On each of these days, I can decide to procrastinate work from daywtow′: the same or a day later that week $(w\rightarrow w′)$. For a lattice $⟨W,\rightarrow⟩$: +> - Draw the lattice as a graph. +> - Determine $inf_W$ and $sup_W$. +> Let’s assume that Saturday is exclusively reserved for work I was unable to do on Monday. Is $⟨W,\rightarrow⟩$ still a lattice now? Why (not)? + +Implementation of Information Flow Models +- Background: Information flows and read/write operations are isomorphic + - s has read permission w.r.t. o $\Leftrightarrow$ information may flow from o to s + - s has write permission w.r.t. o $\Leftrightarrow$ information may flow from s to o +- $\rightarrow$ Implementation by standard AC mechanisms! + +Analysis of Information Flow Models +- IF Transitivity $\rightarrow$ analysis goal: covert information flows + - Question: "Is there a possible, sequential usage of read- and write-permissions that ultimately leads to an unintended information flow?" +- IF Antisymmetry $\rightarrow$ analysis goal: redundancy + - Question: "Which subjects/object share the same possible information flows and are therefore redundant?" + +#### The Denning Model +On of the first information flow models [Denning, 1976]: + +> Denning Security Model +> +> A Denning information flow model is a tuple $⟨S,O,L,cl,\bigoplus⟩$ where +> - S is a set of subjects, +> - O is a set of objects, +> - $L=⟨C,\leq⟩$ is a lattice where +> - C is a set of classes, +> - $\leq$ is a dominance relation wherec $\leq d \Leftrightarrow$ information may flow from c to d, +> - $cl:S\cup O\rightarrow C$ is a classification function, and +> - $\bigoplus:C\times C\rightarrow C$ is a reclassification function. + +Interpretation +- Subject set S models active entities, which information flows originate from +- Object set O models passive entities, which may receive information flows (e.g. documents) +- Classes set C used to label entities with identical information flow properties, e.g. $C=\{Physician,Patient\}$ +- Classification function $cl$ assigns a class to each entity, e.g. $cl(cox)=Physician$ +- Reclassification function $\bigoplus$ determines which class an entity is assigned after receiving certain a information flow; e.g. for Physician to Patient: $\bigoplus (Physician,Patient)=sup_{\{Physician,Patient\}}$ + +Example $⟨S,O,L,cl,\bigoplus⟩$ mit $L=⟨C,\leq⟩$: +- $S=O=\{cox,kelso,carla,...\}$ +- $C=\{Physician, Anamnesis, Pharmacy, Medication,...\}$ +- dominance relation $\leq$: + - rule "information may flow from any ward physician to an anamnesis record" $\Leftrightarrow$ Physician $\leq$ Anamnesis + - rule "information may flow from a medication record to the pharmacy" $\Leftrightarrow$ Medication $\leq$ Pharmacy +- classification cl: + - $cox=Physician$ + - $carla=Medication$ + +We can now ... +- precisely define all information flows valid for a given policy +- define analysis goals for an IF model w.r.t. + - Correctness: $\exists$ covert information flows? (transitivity of $\leq$, automation: graph analysis tools) + - Redundancy: $\exists$ sets of subjects and objects with (transitively) equivalent information contents? (antisymmetry of $\leq$, automation: graph analysis tools) +- implement a model: through an automatically generated, isomorphic ACM(using already-present ACLs!) + + +#### Multilevel Security (MLS) +Motivation +- Introducing a hierarchy of information flow classes: levels of trust +- Subjects and objects are classified: + - Subjects w.r.t. their trust worthiness + - Objects w.r.t. their criticality +- Within this hierarchy, information may flow only in one direction $\rightarrow$ "secure" according to these levels! +- $\rightarrow \exists$ MLS models for different security goals! + +Modeling Confidentiality Levels +- Class set: levels of confidentiality e.g. $C=\{public,confidential,secret\}$ +- Dominance relation: hierarchy between confidentiality levels e.g. $\{public \leq confidential,confidential \leq secret\}$ +- Classification of subjects and objects: $cl:S\cup O\rightarrow C$ e.g. $cl(BulletinBoard)=public,cl(Timetable)=confidential$ +- Note: In contrast du Denning, $\leq$ in MLS models is a total order. + +Example +- Lattice $⟨\{public,confidential,secret\},\leq⟩$ where $\leq=\{⟨public,confidential⟩,⟨confidential,secret⟩\}$ +- Objects $O=\{ProjectXFiles, Timetable, BulletinBoard\}$ +- Subjects $S=\{Ann, Bob\}$ +- Classification of objects (classification level): + - $cl(ProjectXFiles)=secret$ + - $cl(Timetable)=confidential$ + - $cl(BulletinBoard)=pulic$ +- Classification of subjects (clearance level): + - $cl(Ann)=confidential$ + - $cl(Bob)=public$ +- Neither Ann nor Bob can readProjectXFiles +- Ann can + - write to ProjectXFiles and Timetable + - read from Timetable and BulletinBoard +- Bob can + - write to all objects + - read from BulletinBoard + + +#### The Bell-LaPadula Model +Goal: MLS-Model for Preserving Information Confidentiality + +Incorporates impacts on model design ... +- from the application domain: hierarchy of trust +- from the Denning model: information flow and lattices +- from the MLS models: information flow hierarchy +- from the HRU model: + - Modeling dynamic behavior: state machine and STS + - Model implementation: ACM +- $\rightarrow$ application-oriented model engineering by composition of known abstractions + +Idea: +- entity sets S,O +- $lattice⟨C,\leq⟩$ defines information flows by + - C: classification/clearance levels + - $\leq$: hierarchy of trust +- classification function $cl$ assigns + - clearance level from C to subjects + - classification level from C to objects +- Model’s runtime behavior is specified by a deterministic automaton + +> BLP Security Model +> +> A BLP model is a deterministic automaton $⟨S,O,L,Q,\sum,\sigma,q_0,R⟩$ where +> - S and O are (static) subject and object sets, +> - $L=⟨C,\leq⟩$ is a (static) lattice consisting of +> - the classes set C, +> - the dominance relation $\leq$, +> - $Q=M\times CL$ is the state space where +> - $M=\{m|m:S\times O\rightarrow 2^R\}$ is the set ofpossible ACMs, +> - $CL=\{cl|cl:S\cup O\rightarrow C\}$ is a set offunctions that classify entities in $S\cup O$, +> - $\sum$ is the input alphabet, +> - $\sigma:Q\times \sum\rightarrow Q$ is the state transition function, +> - $q_0\in Q$ is the initial state, +> - $R=\{read,write\}$ is the set of access rights. + +Interpretation +- $S,O,M,\sum,\sigma,q_0,R$: same as HRU +- L: models confidentiality hierarchy +- cl: models classification meta-information about subjects and objects +- $Q=M\times CL$ models dynamic protection states; includes + - rights in the ACM, + - classification of subjects/objects, + - not: S and O (different to HRU $\rightarrow$ consequences for safety analysis?) +- Commands in the STS may therefore + - change rights in the ACM, + - reclassify subjects and objects. + +##### Lattice vs. ACM +Given an exemplary BLP model where +- $S=\{s_1,s_2\}, O=\{o_1,o_2\}$ +- $C=\{public,confidential\}$ +- $\leq=\{⟨public,confidential⟩\}$ +- $cl(s_1)=cl(o_1)=public$, $cl(s_2)=cl(o_2)=confidential$ +- ![](Assets/Systemsicherheit-lattice-vs-acm.png) +- Observation: L and m are isomorphic $\rightarrow$ redundancy? +- $\rightarrow$ So, why do we need both model components? + +Rationale +- L is an application-oriented abstraction + - Supports convenient for model specification + - Supports easy model correctness analysis ($\rightarrow$ reachability analyses in graphs) + - $\rightarrow$ easy to specify and to analyze +- m can be directly implemented by standard OS/DBIS access control mechanisms (ACLs, Capabilities) $\rightarrow$ easy to implement +- m is determined (= restricted) by L and cl, not vice-versa! + +> Rationale for L and m +> - L and cl control m +> - m provides an easy specification for model implementation + +##### Consistency of L,cl, and m +We know: IF rules specificed by L and cl are implemented by an ACM m... + +So: What are the conditions for m to be a correct representation of L and cl? + +Intuition: An ACM m is a correct representation of a lattice L iff information flows granted by m do not exceed those defined by L and cl. $\rightarrow$ BLP security property + +Consequence: If we can prove this property for a given model, then its implementation (by m) is consistent with the rules given by L and cl. + +##### BLP Security +Help Definitions +> Read-Security Rule +> A BLP model state $⟨m,cl⟩$ is called read-secure iff $\forall s\in S,o\in O:read\in m(s,o)\Rightarrow cl(o) \leq cl(s)$. + +> Write-Security Rule +> A BLP model state $⟨m,cl⟩$ is called write-secure iff $\forall s\in S,o\in O:write\in m(s,o)\Rightarrow cl(s)\leq cl(o)$. + +Note: In some literature, read-security is called "simple security", while write-security is called "^*-property". Reasons are obscure-historical. + +> State Security +> A BLP model state is called secure iff it is both read- and write-secure. + +> Model Security +> A BLP model with initial state $q_0$ is called secure iff +> 1. $q_0$ is secure and +> 2. each state reachable from $q_0$ by a finite input sequence is secure. + +The above definition is +- intuitive +- difficult to verify: state reachability... + +Auxiliary Definition: The Basic Security Theorem for BLP (BLP BST) +- A convenient tool for proving BLP security +- Idea: let’s look at properties of the finite and small model components $\rightarrow\sigma\rightarrow$ STS + + +> The BLP Basic Security Theorem +> +> A BLP model $⟨S,O,L,Q,\sum,\sigma,q_0,R⟩$ is secure iff both of the following holds: +> 1. $q_0$ is secure +> 2. $\sigma$ is build such that for each state q reachable from $q_0$ by a finite input sequence, where $q=⟨m,cl⟩$ and $q′=\sigma(q,\delta)=m′,cl′,\forall s\in S, o\inO,\delta\in\sum$ the following holds: +> - Read-security conformity: +> - read $\not\in m(s,o)\wedge read\in m′(s,o)\Rightarrow cl′(o)\leq cl′(s)$ +> - read $\in m(s,o) \wedge\lnot (cl′(o)\leq cl′(s)) \Rightarrow read \not\in m′(s,o)$ +> - Write-security conformity: +> - write $\not\in m(s,o)\wedge write \in m′(s,o)\Rightarrow cl′(s)\leq cl′(o)$ +> - write $\in m(s,o)\wedge\lnot(cl′(s)\leq cl′(o)) \Rightarrow write \not\in m′(s,o)$ + +Proof of Read Security +- Technique: Term rewriting + Let $q=\sigma*(q_0 ,\sigma^+),\sigma^+\in\sigma^+,q′=\delta(q,\sigma),\sigma\in\sigma,s\in S,o\in O$. With $q=⟨m,cl⟩$ and $q′=m′,cl′$, the BLP BST for read-security is + - (a1) $read \not\in m(s,o) \wedge read\in m′(s,o) \Rightarrow cl′(o) \leq cl′(s)$ + - (a2) $read \in m(s,o) \wedge\lnot (cl′(o)\leq cl′(s)) \Rightarrow read \not\in m′(s,o)$ + - Let’s first introduce some convenient abbreviations for this: + - $R:=read\in m(s,o)$ + - $R′:=read\in m′(s,o)$ + - $C′:=cl′(o) \leq cl′(s)$ + - $\sigma^+$ is the set of finite, non-empty input sequences. +- Proposition: $(a1) \wedge (a2)\equiv read-security$ +- Proof: $(a1) \wedge (a2)= R′ \Rightarrow C′\equiv read\in m′(s,o) \Rightarrow cl′(o)\leq cl′(s)$, which exactly matches the definition of read-security for $q′$. +- Write-security: Same steps for $(b1)\wedge (b2)$. + +Where Do We Stand? +- Precision: necessary and sufficient conditions for BLP security property +- Analytical power: statements about dynamic model behavior based on static analysis of the (finite and generally small) STS $\rightarrow$ tool support +- Insights: shows that BLP security is an inductive property + +Problem: Larger systems: only source of access rules is the trust hierarchy $\rightarrow$ too coarse-grained! + +Idea: Encode an additional, more fine-grained type of access restriction in the ACM $\rightarrow$ compartments +- Comp: set of compartments +- $co:S\cup O\rightarrow 2^{Comp}$: assigns a set of compartments to an entity as an (additional) attribute +- Refined state security rules: + - $⟨m,cl,co⟩$ is read-secure $\Leftrightarrow\forall s\in S,o\in O:read \in m(s,o)\Rightarrow cl(o)\leq cl(s)\wedge co(o) \subseteq co(s)$ + - $⟨m,cl,co⟩$ is write-secure $\Leftrightarrow\forall s\in S,o\in O:write\in m(s,o)\Rightarrow cl(s)\leq cl(o)\wedge co(o) \subseteq co(s)$ + - Good ol’ BLP: $⟨S,O,L,Q,\sigma,\delta,q_0⟩$ + - With compartments: $⟨S,O,L,Comp,Q_{co},\sigma,\delta,q_0⟩ where $Q_{co}=M\times CL\times CO$ and $CO=\{co|co:S\cup O\rightarrow 2^{Comp}\}$ + +Example +- Let $co(o)=secret,co(o)=airforce$ +- $s_1$ where $cl(s_1)=public,co(s_1)=\{airforce,navy\}$ can write o +- $s_2$ where $cl(s_2)=secret,co(s_2)=\{airforce,navy\}$ can read and write o +- $s_3$ where $cl(s_3)=secret,co(s_3)=\{navy\}$ can do neither +- ![](Assets/Systemsicherheit-blp-example.png) + + +##### BLP Model Summary +Model Achievements +- Application-oriented modeling $\rightarrow$ hierarchical information flow (goal: preserve confidentiality) +- Scalability $\rightarrow$ attributes: trust levels +- Modeling dynamic behavior $\rightarrow$ automaton with STS +- Correctness guarantees + - Of model specification: analysis of + - consistency: BLP security, BST + - completeness of IF: IFG path finding + - presence of unintended, transitive IF: IFG path finding + - unwanted redundancy: IF cycles $\rightarrow$ information equivalence classes + - safety properties:decidable! + - $\rightarrow$ tool-supportpossible! + - Of model implementation: good ol’ ACM $\rightarrow$ ACLs, capabilities +- Implementation + - ACM is a standard AC mechanism in contemporary implementation platforms (cf. prev. slide) + - Contemporary standard OSs need this: do not support mechanisms for + - entity classification + - arbitrary STSs + - $\rightarrow$ newer platforms may do: SELinux, SEAndroid, TrustedBSD, Solaris, Trusted Extensions, PostgreSQL +- Is an example of a hybrid model: IF + AC + ABAC + +Lessons Learned - What we can learn from BLP for designing and using security models: +- Model composition from known model abstractions + - Denning: IF modeling + - ABAC: IF classes and compartments as attributes + - MSL: modeling trust as a linear hierarchy + - HRU: modeling dynamic behavior + - ACM: implementing application-oriented policy semantics +- Consistency is an important property of composed models +- BLP is further extensible and refinable $\rightarrow$ starting point for later models, e. g. Biba + + +#### The Biba Model +BLP upside down [Biba, 1977]: +![](Assets/Systemsicherheit-blp-vs-biba.png) +- BLP $\rightarrow$ preserves confidentiality +- Biba $\rightarrow$ preserves integrity + +Applications Example: On-board Airplane Passenger Information Systems +- Goal: Provide in-flight information in cabin network + - Flight instruments data + - Outboard camera video streams + - communication pilot - tower +- Integrity: no information flow from cabin to flight deck! +- As employed in Boeing 787: common network for cabin and flight deck + software firewall + Biba implementation + +Windows Vista UAC +- An application of the Biba model for OS access control: +- Integrity: Protect system files from malicious user (software) tampering +- Class hierarchy: + - system: OS level objects + - high: services + - medium: user level objects + - low: untrusted processes e. g. web browser, setup application, ... +- Consequence: every file, process, ... created by the web browser is classified low $\rightarrow$ cannot violate integrity of system- and user-objects +- Manual user involvement ($\rightarrow$ DAC portion of the policy):resolving intended exceptions, e. g. to install trusted application software + + + +### Non-interference Models +Problem No. 1: Covert Channels + +> Covert Channel [Lampson, 1973] +> Channels [...] not intended for information transfer at all, such as the service program’s effect on the system load. + +- AC policies (ACM, HRU, TAM, RBAC, ABAC): colluding malware agents, escalation of common privileges + - Process 1: only read permissions on user files + - Process 2: only permission to create an internet socket + - both:communication via covert channel(e. g. swapping behavior) +- MLS policies (Denning, BLP, Biba): indirect information flow exploitation (Note: We can never prohibitany possible transitive IF ...) + - Test for existence of a file + - Volume control on smartphones + - Timing channels from server response times + +Problem No. 2: Damage Range + How to substantiate a statement like: "Corruption of privileged system software will never have any impact on other system components." $\rightarrow$ Attack perimeter + +Idea of NI models: +- Once more: higher level of abstraction +- Policy semantics: which domains should be isolated based on their mutual impact + +Consequences: +- Easier policy modeling +- More difficult policy implementation ...($\rightarrow$ higher degree of abstraction!) + + +##### Example 1: Multi-application Smart Cards +- Different services, different providers, different levels of trust +- Shared resources: Runtime software, OS, hardware (processor, memory, I/O interfaces, ...) +- Needed:Total isolation of services (program code, security-critical information e. g. private keys) +- $\rightarrow$ Guarantee of total non-interference between domains + +##### Example 2: Server System +- Different services: web hosting, mail service, file sharing +- Shared resources (see example 1) +- Needed:Precisely defined and restricted cross-domain interactions (e. g. file up-/downloads, socket communication, shared memory read/write, ...) +- $\rightarrow$ Guarantee of limited non-interferenc ebetween domains + +##### NI Security Policies +NI-Policies Specify +- Security domains +- Cross-domain (inter)actions $\rightarrow$ interference +From convert channels to domain interference: +> Non-Interference +> +> Two domains do not interfere with each other iff no action in one domain can be observed by the other. + +$\rightarrow$ NI Model Abstractions: +- Set of domains D +- A non-interference relation $≈_{NI}\subseteq D\times D$, such that $d_1 ≈_{NI} d_2\Leftrightarrow d_1$ does not interfere with $d_2$ +- Subjects executeactions $a\in A$ +- Effects of actions on domains defined by a mapping $dom:A\rightarrow 2^D$ + +> NI Security Model +> An NI model is a det. automaton $⟨Q,\sigma,\delta,\lambda,q_0,D,A,dom,≈_{NI},Out⟩$ where +> - Q is the set of (abstract) states, +> - $\sigma=A$ is the input alphabet where A is the set of (abstract) actions, +> - $\delta:Q\times\sigma\rightarrow Q$ is the state transition function, +> - $\lambda:Q\times\sigma\rightarrow Out$ is the output function, +> - $q_0\in Q$ is the initial state, +> - $D$ is a set of domains, +> - $dom:A\rightarrow 2^D$ is adomain function that completely defines the set of domains affected by an action, +> - $≈_{NI}\subseteq D\times D$ is a non-interference relation, +> - $Out$ is a set of (abstract) outputs. + +NI Security Model is also called Goguen/Meseguer-Model [Goguen and Meseguer, 1982]. + +BLP written as an NI Model +- BLP Rules: + - write in class public may affect public and confidential + - write in class confidential may only affect confidential +- NI Model: + - $D=\{d_{pub},d_{conf}\}$ + - write in $d_{conf}$ does not affect $d_{pub}$, so $d_{conf} ≈_{NI} d_{pub}$ + - $A=\{writeInPub, writeInConf\}$ + - $dom(writeInPub)=\{d_{pub},d_{conf}\}$ + - $dom(writeInConf)=\{d_{conf}\}$ + +##### NI Model Analysis +Goal +- AC models: privilege escalation ($\rightarrow$ HRU safety) +- BLP models:model consistency ($\rightarrow$ BLP security) +- NI models:Non-interference between domains + +Non-Interference Intuitively: +Is there a sequence of actions $a^*\in A^*$ that violates $≈_{NI}$? $\rightarrow$ A model is called $NI$-secure iff there is no sequence of actions that results in an illegal domain interference. Now what does this meansprecisely...? + +Before we define what NI-secure is, assume we could remove all actions from an action sequence that have no effect on a given set of domains: +> Purge Function +> +> Let $aa^*\in A^*$ be a sequence of actions consisting of a single action $a\in A\cup\{\epsilon\}$ followed by a sequence $a^*\in A^*$, where $\epsilon$ denotes an empty sequence. Let $D′\in 2^D$ be any set of domains. Then, purge: $A^*\times 2^D \rightarrow A^*$ computes a subsequence of $aa^*$ by removing such actions without an observable effect on any element of $D′: +> - $purge(aa^*,D′)=\begin{cases} a\circ purge(a^*,D′), \quad\exists d_a\in dom(a),d′\in D′:d_a≈_I d′ \\ purge(a^*,D′), \quad\text{ otherwise }\end{cases}$ +> - $purge(\epsilon,D′)=\epsilon$ +> where $≈_I$ is the complement of $≈_{NI}:d_1 ≈_I d_2\Leftrightarrow \lnot(d_1 ≈_{NI} d_2)$. + +> NI Security +> +> For a state $q\in Q$ of an NI model $⟨Q,\sigma,\delta,\lambda,q_0,D,A,dom,≈_{NI},Out⟩$, the predicate ni-secure(q) holds iff $\forall a\in A,\forall a^*\in A^*:\lambda (\delta^*(q,a^*),a)=\lambda(\delta^*(q,purge(a^*,dom(a))),a)$ + +Interpretation +1. Running an NI model on $⟨q,a^*⟩$ yields $q′=\delta^*(q,a^*)$. +2. Running the model on the purged input sequence so that it contains only actions that, according to $≈_{NI}$, actually have impact on $dom(a)$ yields $q′_{clean}=\delta^*(q,purge(a^*,dom(a)))$ +3. If $\forall a\in A:\lambda(q′,a)=\lambda(q′_{clean},a)$, than the model is called NI-secure w.r.t. q($ni-secure(q)$). + +##### Comparison to HRU and IF Models +- HRU Models + - Policies describe rules that control subjects accessing objects + - Analysis goal: right proliferation + - Covert channels analysis: only based on model implementation +- IF Models + - Policies describe rules about legal information flows + - Analysis goals: indirect IFs, redundancy, inner consistency + - Covert channel analysis: same as HRU +- NI Models + - Rules about mutual interference between domains + - Analysis goal: consistency of $≈_{NI}$ and $dom$ + - Implementation needs rigorous domain isolation (more rigorous than MLS, e.g. object encryption is not sufficient!) $\rightarrow$ expensive + - State of the Art w.r.t. isolation completeness: VMs > OS domains (SELinux) > Containers + +### Hybrid Models +Real-world Scenarios e.g. workflow modeling: IBAC plus RBAC plus IF plus time... $\rightarrow$ Hybrid models by composing pure models + +#### Chinese-Wall Policies +Security policy family for consulting companies +- Clients of any such company + - Companies, including their business data + - Often: mutual competitors +- Employees of consulting companies + - Are assigned to clients they consult (decided by management) + - Work for many clients $\rightarrow$ gather insider information +- $\rightarrow$ Policy goal: No flow of (insider) information between competing clients + +Why look at specifically these policies? +- Modeling + - Composition of + - Discretionary IBAC components + - Mandatory ABAC components + - Driven by real-world demands: iterative refinements of a model over time + - Brewer-Nash model [Brewer and Nash, 1989] + - Information flow model [Sandhu, 1992a] + - Attribute-based model [Sharifi and Tripunitara, 2013] +- Application areas: consulting, cloud computing + +#### The Brewer-Nash Model +Specialized model: Explicitly tailored towards Chinese Wall (CW) policies + +Model Abstractions +- Consultants represented by subjects +- Client companies represented by objects, which comprise a company’s business data +- Modeling of competition by conflict classes: two different clients are competitors $\Leftrightarrow$ their objects belong to the same class +- No information flow between competing objects $\rightarrow$ a "wall" separating any two objects from the same conflict class +- Additional ACM for refined management settings of access permissions + +Example +- Consultancy clients + - Banks: HSBC, Deutsche Bank, Citigroup + - Oil companies: Shell, Exxon Mobil/Esso +- Conflicts: business-crucial information flows between banks and oil companies +![](Assets/Systemsicherheit-brewer-example.png) + +Representation of Conflict Classes +- Client company data: object set O +- Competition: conflict relation $C\subseteq O\times O:⟨o,o′⟩\in C\Leftrightarrow o$ and $o′$ belong to competing companies (non-reflexive, symmetric, generally not transitive) +- In terms of ABAC:object attribute $att_O:O\rightarrow 2^O$, such that $att_O(o)=\{o′\in O|⟨o,o′⟩\in C\}$. + +Representation of a Consultant’s History +- Consultants: subject set S +- History relation $H\subseteq S\times O:⟨s,o⟩\in H\Leftrightarrow s$ has previously consulted $o$ +- In terms of ABAC: subject attribute $att_S:S\rightarrow 2^O$, such that $att_S(s)=\{o\in O|⟨s,o⟩\in H\}$. + +> Brewer-Nash Security Model +> +> The Brewer-Nash model of the CW policy is a det. $automaton⟨S,O,Q,\sigma,\delta,q_0,R⟩$ where +> - $S$ and $O$ are sets of subjects (consultants) and (company data) objects, +> - $Q=M\times 2^C\times 2^H$ is the state space where +> - $M=\{m|m:S\times O\rightarrow 2^R\}$ is the set ofpossible ACMs, +> - $C\subseteq O\times O$ is the conflict relation: $⟨o,o′⟩\in C\Leftrightarrow o$ and $o′$ are competitors, +> - $H\subseteq S\times O$ is the history relation: $⟨s,o⟩\in H\Leftrightarrow s$ has previously +consulted $o$, +> - $\sigma=OP \times X$ is the input alphabet where +> - $OP=\{read,write\}$ is a set of operations, +> - $X=S \times O$ is the set of arguments of these operations, +> - $\delta:Q \times\sigma\rightarrow Q$ is the state transition function, +> - $q_0\in Q$ is the initial state, +> - $R=\{read,write\}$ is the set of access rights. + +![](Assets/Systemsicherheit-brewer-example-2.png) +At the time depicted: +- Conflict relation: $C=\{⟨HSBC,DB⟩,⟨HSBC,Citi⟩,⟨DB,Citi⟩,⟨Shell,Esso⟩\}$ +- History relation: $H=\{⟨Ann,DB⟩,⟨Bob,Citi⟩,⟨Bob,Esso⟩\}$ + + +##### Brewer-Nash STS +- Read (here: similar to HRU notation) + $command read(s,o)::=if read \in m(s,o) \wedge\forall ⟨o′,o⟩\in C:⟨s,o′⟩\not\in H$ + $then$ + $H:=H\cup\{⟨s,o⟩\}$ + $fi$ +- Write + $command write(s,o)::=if write \in m(s,o) \wedge\forall o′\in O:o'\not=o \Rightarrow ⟨s,o′⟩\not\in H$ + $then$ + $H:=H\cup\{⟨s,o⟩\}$ + $fi$ + +Not shown: Discretionary policy portion $\rightarrow$ modifications in m to enable fine-grained rights management. + +Restrictiveness +- Write Command: s is allowed to write $o\Leftrightarrow write\in m(s,o)\wedge\forall o′\in O:o′\not=o\Rightarrow⟨s,o′⟩\not\in H$ +- Why so restrictive? $\rightarrow$ No transitive information flow! + - $\rightarrow$ s must never have previously consulted any other client! + - $\Rightarrow$ any consultant is stuck with her client on first read access + - $\Rightarrow$ not (yet) a professional model! + +##### Brewer-Nash Model +Instantiation of a Model +- Initial State $q_0$ + - $m_0$: consultant assignments to clients, issued by management + - $C_0$: according to real-life competition + - $H_0 =\varnothing$ + +> Secure State +> $\forall o,o′ \in O,s\in S:⟨s,o⟩\in H_q\wedge⟨s,o′⟩\in H_q\Rightarrow⟨o,o′⟩\not\in C_q$ +> Corollary: $\forall o,o′\in O,s\in S:⟨o,o′⟩\in C_q\wedge⟨s,o⟩\in H_q\Rightarrow ⟨s,o′⟩\not\in H_q$ + +> Secure Brewer-Nash Model +> Similar to "secure BLP model". + +In the exercises: STS, transformation into pure HRU calculus, dynamic subject and object sets. + +##### Summary Brewer-Nash +What’s remarkable with this model? +- Composes DAC and MAC components +- Simple model paradigms + - Sets (subjects, objects) + - ACM (DAC) + - Relations (company conflicts, consultants history) + - Simple "read" and "write" rule + - $\rightarrow$ easy to implement +- Analysis goals + - MAC: Model security + - DAC: safety properties +- Drawback: Restrictive write-rule + +Professionalization +- Remember the difference: trusting humans (consultants) vs. trusting software agents (subjects) + - Consultants are assumed to be trusted + - Systems (processes, sessions, etc.) may fail, e. g. due to a malware attack +- $\rightarrow$ Write-rule applied not to humans, but to (shorter-lived) software agents $\rightarrow$ mitigating malware effectiveness +- $\rightarrow$ Subject set S models consultant’s subjects (e. g. processes) in a group model: + - All processes of one consultant form a group + - Group members + - have the same rights in m + - have individual histories + - are strictly isolated w.r.t. IF +- Solution approach: as we already know $\rightarrow$ model refinement! + + +#### The Least-Restrictive-CW Model +Restrictiveness of Brewer-Nash Model: +- If $⟨o_i,o_k⟩\in C$: no transitive information flow $o_i \rightarrow o_j\rightarrow o_k$, i.e. consultant(s) of $o_i$ must never write to any $o_j\not=o_i$ +- This is actually more restrictive than necessary: $o_j\rightarrow o_k$ and afterwards $o_i\rightarrow o_j$ would be fine! (no information can actually flow from $o_i$ to $o_k$) +- In other words: Criticality of an IF depends on existence of earlier flows. + +Idea LR-CW[Sharifi and Tripunitara, 2013]: Include time as a model abstraction! + +Approach: +- $\forall s\in S,o\in O$: remember, which information has flown to an entity +- $\rightarrow$ subject-/object-specific history, $≈$attributes ("lables") + +> LR-CW Model +> +> The Least-Restrictive model of the CW policy is a deterministic $automaton ⟨S,O,F,\zeta,Q,\sigma,\delta,q_0⟩$ where +> - S and O are sets of subjects (consultants) and data objects, +> - F is the set of client companies, +> - $\zeta:O\rightarrow F$ ("zeta") is a function mapping each object to its company, +> - $Q=2^C \times 2^H$ is the state space where +> - $C\subseteq F\times F$ is the conflict relation: $⟨f,f′⟩\in C\Leftrightarrow f$ and $f′$ are competitors, +> - $H=\{Z_e\subseteq F|e\in S\cup O\}$ is the history set: $f\in Z_e\Leftrightarrow e$ contains information about $f(Z_e$ is the "history label" of $e$), +> - $\sigma=OP\times X$ is the input alphabet where +> - $OP=\{read,write\}$ is the set of operations, +> - $X=S\times O$ is the set of arguments of these operations, +> - $\delta:Q\times\sigma\rightarrow Q$ is the state transition function, +> - $q_0\in Q$ is the initial state + +![](Assets/Systemsicherheit-brewer-example-2.png) +- At the time depicted (before the first write): + - Client companies: $F=\{HSBC,DB,Citi,Shell,Esso\}$ + - History set: $H=\{Z_{Ann},Z_{Bob},Z_{o1} ,...,Z_{o|O|}\}$ with history labels + - $Z_{Ann}=\{DB\}$ + - $Z_{Bob}=\{Citi,Esso\}$, + - $Z_{oi}=\{\zeta(o_i)}, 1\leq i\leq |O|$. + +Inside the STS +- a reading operation + - requires that no conflicting information is accumulated in the subject potentially increases the amount of information in the subject + - command read(s,o) ::= if $\forall f,f′\in Z_s \cup Z_o:⟨f,f′⟩\not\in C$ then $Z_s:=Z_s\cup Z_o$ fi +- a writing operation + - requires that no conflicting information is accumulated in the object potentially increases the amount of information in the object + - command write(s,o) ::= if $\forall f,f′\in Z_s\cup Z_o:⟨f,f′⟩\not\in C$ then $Z_o:=Z_o\cup Z_s$ fi + +Model Achievements +- Applicability: more writes allowed in comparison to Brewer-Nash (note that this still complies with the general CW policy) +- Paid for with + - Need to store individual attributes of all entities (their history labels $Z_e$) + - Dependency of write permissions on earlier actions of other subjects +- More extensions: + - Operations to modify conflict relation + - Operations to create/destroy entities + +#### An MLS Model for Chinese-Wall Policies +Problems +- Modeling of conflict relation +- Modeling of consultants history + +Conflict relation is +- non-reflexive: no company is a competitor of itself +- symmetric: competition is always mutual +- not necessarily transitive: any company might belong to more than one conflict class $\Rightarrow$ if a competes with b and b competes with c, then a and c might still be in different conflict classes (= no competitors) $\rightarrow$ Cannot be modeled by a lattice! + +Reminder:In a lattice$⟨C,\leq⟩$,$\leq$ is a partial order: +1. reflexive $(\forall a\in C:a \leq a)$ +2. anti-symmetric $(\forall a,b \in C:a \leq b \wedge b \leq a\Rightarrow a=b)$ +3. transitive $(a,b,c \in C:a \leq b \wedge b \leq c \Rightarrow a \leq c)$ + +MLS-CW Example: +- Two conflict classes: + - ![](Assets/Systemsicherheit-mls-conflict-classes.png) +- Resulting valid information flows: + - ![](Assets/Systemsicherheit-mls-information-flow.png) +- Problem: How to express this more directly, by allowed information flows rather than (forbidden) conflicts? + +Idea: Labeling of entities +- Class of an entity (subject or object) reflects information it carries +- Consultant reclassified whenever a company data object is read +- $\rightarrow$ Classes and labels: +- Class set of a lattice $C=\{DB,Citi,Shell,Esso\}$ +- Entity label: vector of information already present in each business branch (formerly known as conflict classin Brewer-Nash!) +- In our example, a vector consists of 2 elements $\in C$; resulting in labels such as: + - $[\epsilon,\epsilon]$ (exclusively for $inf_C$) + - $[DB,\epsilon]$ (for DB-objects or -consultants) + - $[DB,Shell]$ (for subjects or objects containing information from both DB and Shell) + - $[Esso,Shell]$ (illegal label!) + - ... + +##### Summary CW +Why is the "Chinese Wall" policy interesting? +- One policy, multiple models: + - The Brewer-Nash model demonstrates hybrid DAC-/MAC-/IFC-approach + - The Least-Restrictive CW model demonstrates a more practical professionalization + - The MLS-CW model demonstrates applicability of lattice-based IF modeling $\rightarrow$ semantically cleaner approach +- Applications: Far beyond traditional consulting scenarios...$\rightarrow$ current problems in cloud computing! + + +## Summary +Security Models +- Formalize informal security policies for the sake of + - objectification by unambiguous calculi + - explanation and (possibly) proof of security properties (e.g. HRU safety, BLP security, NI security) by formal analysis techniques + - foundation for correct implementations +- Are composed of simple building blocks + - E.g. ACMs, sets, relations, functions, lattices, state machines + - ... that are combined and interrelated to form more complex models + - $\rightarrow$ (D)RBAC, (D)ABAC, BLP, Brewer-Nash, LR-CW, MLS-CW + +Remember: Goals of Security Models +- Unambiguous policy formalization to +1. reason about policy correctness +2. correctly implement a policy + #### ABAC #### Summary