Outline • Class evaluation • Resource security and protection

advertisement
Outline
• Class evaluation
• Resource security and protection
Class Evaluation
• Course: COP 5611 01
• Instructor: Xiuwen Liu
• Today’s date: April 17, 2003
May 29, 2016
COP 5611 - Operating Systems
2
General Introduction
• Security is related to dependability
– Confidentiality
• Information should only be disclosed to authorized
parties
– Integrity
• Alterations can be made only in an authorized way
May 29, 2016
COP 5611 - Operating Systems
3
General Introduction – cont.
• Security threats
– Interception
• A situation where an unauthorized party gained access to a
service or data
– Interruption
• A situation where services or data become unavailable
– Modification
• Unauthorized changing of data or tampering with a service
– Fabrication
• Additional data or activity that would normally do not exist
May 29, 2016
COP 5611 - Operating Systems
4
General Introduction – cont.
• Security policy
– Which actions on what entities in a system are
allowed
• Security mechanisms
– By which a policy can be enforced
– Important ones include
•
•
•
•
Encryption
Authentication
Authorization
Auditing
May 29, 2016
COP 5611 - Operating Systems
5
Access Control
• Typical distributed systems are organized as
client-server architectures
– A request from a service generally involves
invoking a method of a specific object
– Verifying access right is referred to as access
control, whereas authorization is about granting
access rights
May 29, 2016
COP 5611 - Operating Systems
6
Access Control – cont.
• General issues
– The system consists of subjects that issue a request to
access an object
• Subjects are processes acting on behalf of users, but can
also be objects that need the services of other objects
• Objects are entities with their own state and operations
May 29, 2016
COP 5611 - Operating Systems
7
Access Control Matrix
• Three components
– Current objects
– Current subjects
– Generic rights
May 29, 2016
COP 5611 - Operating Systems
8
Access Control Matrix – cont.
May 29, 2016
COP 5611 - Operating Systems
9
Access Control Matrix – cont.
May 29, 2016
COP 5611 - Operating Systems
10
Capabilities
• The capability based method corresponds to
the row-wise decomposition of the access
matrix
– Each subject s is assigned a list of pairs (o,
P[s,o]) for all objects o that it is allowed to access
– The pairs are referred to as as capabilities
May 29, 2016
COP 5611 - Operating Systems
11
Capabilities – cont.
May 29, 2016
COP 5611 - Operating Systems
12
Capabilities – cont.
• Implementation considerations
– A user should not be able to read, modify or
construct a capability
– Two approaches
• The tagged approach
– One or more bits are attached to each memory location and
to every processor register to indicate whether the memory
word or a register contains a capability
• The partitioned approach
– Capabilities and ordinary data are stored separately
May 29, 2016
COP 5611 - Operating Systems
13
Capabilities – cont.
• Advantages of capabilities
– Efficiency
– Simplicity
– Flexibility
• Drawbacks
–
–
–
–
Control of propagation
Review is difficult
Revocation of access rights is difficult
Garbage collection is difficult
May 29, 2016
COP 5611 - Operating Systems
14
The Access Control List Method
• Corresponds to the column-wise decomposition
of the access matrix
– Each object o is assigned a list of pairs (s, P[s, o])
for all subjects s that are allowed to access the
object
– When a subject s requests access a to object o, the
system checks the access control list of o to see if
an entry (s, F) exists; if yes, then check if a belongs
to F
May 29, 2016
COP 5611 - Operating Systems
15
Access Control List Method – cont.
May 29, 2016
COP 5611 - Operating Systems
16
Access Control List Method – cont.
• Advantages
– Easy revocation
– Easy review of an access
• Implementation issues
– Efficiency of execution
– Efficiency of storage
• Protection groups
– Authority to change an access control list
• Self control
• Hierarchical control
May 29, 2016
COP 5611 - Operating Systems
17
The Lock-Key Method
• A hybrid of the capability-based method and
the access control list method
– Every subject has a capability list that contains
tuples of the form (O, k), indicating that the
subject can access object O using key k
– Every object has an access control list that
contains tuples of the form (l, ), called a lock
entry, indicating that any subject which can open
the lock l can access this object in modes in 
May 29, 2016
COP 5611 - Operating Systems
18
The Lock-Key Method – cont.
• When a subject s makes the request to access
object o in mode a, the system does the following
– The system locates the tuple (o, k) in the capability
list of the subject
• If no such tuple is found, the access is not permitted
– Otherwise, the access is permitted only if there exists
a lock entry (l, Y) in the access control list of the
object o such that k = l and a  
May 29, 2016
COP 5611 - Operating Systems
19
Take-Grant Model
• The take-grant model uses directed graphs to
model access control
– It provides an efficient way to implement an access
matrix that is likely to be highly sparse
• Note a sparse matrix can be stored efficiently using a
directed graph
– There are two types of modes in the graph: subjects
and objects
• An edge from node x to y indicates that the subject
represented by x has some access rights to node y
• Two special rights (take and grant) specify how the access
rights can be propagated to other nodes
May 29, 2016
COP 5611 - Operating Systems
20
Take-Grant Model – cont.
May 29, 2016
COP 5611 - Operating Systems
21
Case Studies
• The UNIX operating system
–
–
–
–
–
–
–
–
file access modes
read, write, execute
owner, group, others
set user ID on execution
set group ID on execution
enable mandatory locking
turn on sticky bit
access control lists (setfacl, getfacl)
• The Hydra Kernel
• Amoeba
• Andrew
May 29, 2016
COP 5611 - Operating Systems
22
Summary
• Protection and security deal with the control
of unauthorized use and the access to
hardware and software resources
• Access matrix model is widely used
– Capabilities
– Access control lists
• Case studies
May 29, 2016
COP 5611 - Operating Systems
23
Download