Security Models
Security Models
Security Models
Bell-Lapadula, Biba, Chinese Wall
Notas:
Introduction
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 1
Security Models
Basic Components
• Confidentiality
– Keeping data and resources hidden
• Integrity
– Two views:
• Data integrity (integrity)
• Origin integrity (authentication)
– Integrity mechanisms fall into two classes:
• Prevention mechanisms
• Detection mechanisms
• Availability
– Enabling access to data and resources
Notas:
Classes of Threats
• Disclosure:
– unauthorized access to information
– snooping / wiretapping
• Deception
– modification, spoofing (phishing), repudiation of origin,
denial of receipt
• Disruption
– modification
• Usurpation
– modification, spoofing, delay, denial of service
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 2
Security Models
Notas:
Goals of Security
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 3
Security Models
Notas:
Types of Mechanisms
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 4
Security Models
Assurance
• Specification
– Requirements analysis
– Statement (formal or informal) of desired functionality
• Design
– How system will meet specification
• Implementation
– Programs/systems that carry out design
Notas:
Operational Issues
• Cost-Benefit Analysis
– Is it cheaper to prevent or recover?
• Risk Analysis
– Should we protect something?
– How much should we protect this thing?
• Laws and Customs
– Are desired security measures illegal?
– Will people do them?
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 5
Security Models
Human Issues
• Organizational Problems
– Power and responsibility
– Financial benefits
• People problems
– Outsiders and insiders
– Social engineering
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 6
Security Models
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 7
Security Models
Notas:
Description
• Subjects S = { s1,…,sn }
• Objects O = { o1,…,om }
Objects
• Rights R = { r1,…,rk }
ACM O1 … Om S1 … Sn
• Entries A[si, oj] ⊆ R
S1
Subjects
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 8
Security Models
Example 1
(set of rights r,w,x,a,o)
Process-1 owns File-1, so it could alter the contents of A[x,file1] where x is any subject
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 9
Security Models
mquiroga has a ftp client but no servers, so neither of the other system can access it, but it
can ftp to them.
Sicua and Banner offer ftp services to anyone
Notas:
Example 3 – Programs
(set of rights +, -, call)
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 10
Security Models
Example 4
(ACM at 3AM and 10AM)
… picture … … picture …
… …
annie paint annie
… …
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 11
Security Models
Notas:
Primitive Operations
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 12
Security Models
Create Subject
• Precondition: s ∉ S
• Primitive command: create subject s
• Postconditions:
– S´ = S ∪{ s }, O´ = O ∪{ s }
– (∀y ∈ O´)[a´[s, y] = ∅], (∀x ∈ S´)[a´[x, s] = ∅]
– (∀x ∈ S)(∀y ∈ O)[a´[x, y] = a[x, y]]
Notas:
Create Object
• Precondition: o ∉ O
• Primitive command: create object o
• Postconditions:
– S´ = S, O´ = O ∪ { o }
– (∀x ∈ S´)[a´[x, o] = ∅]
– (∀x ∈ S)(∀y ∈ O)[a´[x, y] = a[x, y]]
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 13
Security Models
Add Right
• Precondition: s ∈ S, o ∈ O
• Primitive command: enter r into a[s, o]
• Postconditions:
– S´ = S, O´ = O
– a´[s, o] = a[s, o] ∪ { r }
– (∀x ∈ S´)(∀y ∈ O´ – { o }) [a´[x, y] = a[x, y]]
– (∀x ∈ S´ – { s })(∀y ∈ O´) [a´[x, y] = a[x, y]]
Notas:
Delete Right
• Precondition: s ∈ S, o ∈ O
• Primitive command: delete r from a[s, o]
• Postconditions:
– S´ = S, O´ = O
– a´[s, o] = a[s, o] – { r }
– (∀x ∈ S´)(∀y ∈ O´ – { o }) [a´[x, y] = a[x, y]]
– (∀x ∈ S´ – { s })(∀y ∈ O´) [a´[x, y] = a[x, y]]
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 14
Security Models
Destroy Subject
• Precondition: s ∈ S
• Primitive command: destroy subject s
• Postconditions:
– S´ = S – { s }, O´ = O – { s }
– (∀y ∈ O´)[a´[s, y] = ∅], (∀x ∈ S´)[a´[x, s] = ∅]
– (∀x ∈ S´)(∀y ∈ O´) [a´[x, y] = a[x, y]]
Notas:
Destroy Object
• Precondition: o ∈ o
• Primitive command: destroy object o
• Postconditions:
– S´ = S, O´ = O – { o }
– (∀x ∈ S´)[a´[x, o] = ∅]
– (∀x ∈ S´)(∀y ∈ O´) [a´[x, y] = a[x, y]]
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 15
Security Models
Creating File
command create•file(p, f)
create object f;
enter own into A[p, f];
enter r into A[p, f];
enter w into A[p, f];
end
Notas:
command spawn•process(p, q)
create subject q;
enter own into A[p, q];
enter r into A[p, q];
enter w into A[p, q];
enter r into A[q, p];
enter w into A[q, p];
end
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 16
Security Models
Mono-Operational Commands
command make•owner(p, g)
enter own into A[p, g];
end
Notas:
Conditional Commands
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 17
Security Models
Notas:
Copy Right
(aka grant right)
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 18
Security Models
Attenuation of Privilege
Notas:
Own Right
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 19
Security Models
Key Points
Notas:
Security Policies
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 20
Security Models
Notas:
Confidentiality Policy
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 21
Security Models
Bell-LaPadula Model v1
Notas:
Example
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 22
Security Models
Reading Information
(simple security condition v1)
Notas:
Writing Information
(star property v1)
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 23
Security Models
Notas:
Bell-LaPadula Model v2
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 24
Security Models
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 25
Security Models
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 26
Security Models
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 27
Security Models
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 28
Security Models
2+5i
1+5i 2+4i
1+4i
Arrows represent ≤C
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 29
Security Models
Bell-LaPadula Model v2
∅
Arrows represent ⊆
Notas:
• The security level (L,C) dominates the security level (L’,C’) iff
A´≤ A and C´⊆ C
– Examples
• George is cleared into security level (SECRET, {NUC,EUR})
• DocA is classified as (CONFIDENTIAL,{NUC})
• DocB is classified as (SECRET, {EUR,US})
• DocC is classified as (SECRET, {EUR})
– George dom DocA
– George ¬dom DocB
» {EUR,US} ⊆ {NUC,EUR}
– George dom DocC
– More examples
• (Top Secret, {Nuc,Asi}) dom (Secret, {Nuc})
• (Secret, {Nuc, Eur}) dom (Confidential,{Nuc,Eur})
• (Top Secret, {Nuc}) ¬dom (Confidential, {Eur})
• Any pair of security levels may (or may not) be related by dom,
– dom is a partial order
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 30
Security Models
• Personal note: L = C × 2K
Notas:
Reading Information
(simple security condition v2)
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 31
Security Models
Writing Information
(star property v2)
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 32
Security Models
Problem
• Clearly absurd!
Notas:
Solution
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 33
Security Models
Bell-LaPadula models
(key points)
Notas:
Integrity Policies
• Requirements
– Very different than confidentiality policies
• for commercial applications, integrity rather than
confidentiality, is key
• Biba’s models
– Low-Water-Mark policy
– Ring policy
– Strict Integrity policy
• Clark-Wilson model
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 34
Security Models
• Users will not write their own programs, but will use existing
production programs and databases
• Programmers will develop and test programs on a
nonproduction system; if they need access to actual data, they
will be given production data via a special process, but will use
it on their development system
• A special process must be followed to install a program from
the development system onto the production system
• The special process in requirement 3 must be controlled and
audited
• The managers and auditors must have access to both the
system state and the system logs that are generated
Notas:
• Separation of duty:
– If two or more steps are required to perform a critical function, at
least two different people should perform the steps,
• Separation of function:
– Developers don’t develop new programs directly on production
systems,
– Developers don’t process production data on the development
systems,
• Developers and testers may receive sanitized production data,
• Auditing:
– Commercial systems emphasize recovery and accountability,
• What actions took place and who performed them
• Logging and auditing is a must
• Disclosure is certainly an issue
– Bell-LaPadula is too complex in a commercial environment
• A lot of categories, a lot of security levels!
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 35
Security Models
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 36
Security Models
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 37
Security Models
Notas:
Problems
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 38
Security Models
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 39
Security Models
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 40
Security Models
Notas:
• CR1: When any IVP is run, it must ensure all CDIs are in a valid
state
• CR2 : For some associated set of CDIs, a TP must transform
those CDIs in a valid state into a (possibly different) valid state
– CR2 defines relation certified (C) that associates a set of CDIs with
a particular TP
– Example: TP balance, CDIs accounts, in bank example
• (balance,account1),(balance,account2),…,(balance,accountn) ∈ C
– A TP may corrupt a CDI if it is not certified to work on that CDI…
• The system must prevent TPs from operating on CDIs for which
they have not been certified…
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 41
Security Models
• ER1: The system must maintain the certified relations and must
ensure that only TPs certified to run on a CDI manipulate that
CDI
– If a TP f operates on a CDI o, then (f,o) ∈ C
• ER2: The system must associate a user with each TP and set of
CDIs. The TP access those CDIs on behalf of the associated
user. The TP cannot access that CDI on behalf of a user not
associated with that TP and CDI
– This defines a set of triples (user, TP, { CDI set }) to capture the
association of users, TPs and CDIs,
• Call this relation allowed
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 42
Security Models
Logging
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 43
Security Models
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 44
Security Models
Notas:
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 45
Security Models
Comparison to Biba
• Biba
– Several integrity levels
– No notion of certification rules; trusted subjects ensure
actions obey rules
– Untrusted data examined before being made trusted
• Clark-Wilson
– Each object only has two integrity levels (CDI and UDI).
Each subject has two integrity levels (certified or TP and
uncertified)
– Explicit requirements that actions must meet
– Trusted entity must certify method to upgrade untrusted
data (and not certify the data itself)
Notas:
Hybrid Policies
(Chinese Wall Model)
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 46
Security Models
Organization
Notas:
Definitions
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 47
Security Models
Example
Tony has access to the objects in the CD of Bank of America. Because the CD of Citibank
is in the same COI class, Tony cannot gain access to the objects in Citibank’s CD,
• Although he can access Bank of America’s CD and Arco’s CD
Notas:
Temporal Element
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 48
Security Models
Notas:
• Two consequences:
– Once a subject reads any object in a COI class, the only
other objects in that COI in that COI class that the subject
can read are in the same CD as the read object
– The minimum number of subjects needed to access every
object in a COI class is the same as the number of CDs in
that COI class
• The gasoline company COI class requires at least four analyst
to access all information in the COI class without any conflict
of interest
• Ignores sanitized data
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 49
Security Models
Notas:
Writing
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 50
Security Models
CW-*-Property
Notas:
Aqui voy…
Notas:
Copyright CyberTech de Colombia, 2002-2009 Pág. 51