Dr. Kalpakis CMSC 621, Advanced Operating Systems. Security & Protection.

Slides:



Advertisements
Similar presentations
Information Flow and Covert Channels November, 2006.
Advertisements

CMSC 414 Computer (and Network) Security Lecture 13 Jonathan Katz.
Protection. Goals of Protection Operating system consists of a collection of objects, hardware or software Each object has a unique name and can be accessed.
Bilkent University Department of Computer Engineering
Chapter 7  Computer Security 1 Overview  Important components of computer security: o User authentication – determine the identity of an individual accessing.
19: Protection1 PROTECTION Protection is the mechanism for controlling access to computer resources. Security concerns the physical integrity of the system.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 14: Protection.
CS-550 (M.Soneru): Protection and Security - 1 [SaS] 1 Protection and Security.
CMSC 414 Computer and Network Security Lecture 11 Jonathan Katz.
1 FM and Security-Overview FM Formal Security Models Based on Slides prepared by A. Jones and Y. Lin. Material based on C. Landwehr paper.
Chapter 14: Protection.
Information Systems Security Security Architecture Domain #5.
User Domain Policies.
Lecture 7 Access Control
Dr. Kalpakis CMSC 621, Advanced Operating Systems. Fall 2003 URL: Security & Protection.
Lecture slides prepared for “Computer Security: Principles and Practice”, 2/e, by William Stallings and Lawrie Brown, Chapter 4 “Overview”.
CMSC 414 Computer and Network Security Lecture 19 Jonathan Katz.
CS-550 (M.Soneru): Protection and Security - 2 [SaS] 1 Protection and Security - 2.
Dr. Kalpakis CMSC 421, Operating Systems. Fall 2008 URL: Protection.
CH14 – Protection / Security. Basics Potential Violations – Unauthorized release, modification, DoS External vs Internal Security Policy vs Mechanism.
Protection.
© G. Dhillon, IS Department Virginia Commonwealth University Principles of IS Security Formal Models.
14.1 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 14: Protection Goals of Protection Principles of Protection Domain of Protection.
Session 2 - Security Models and Architecture. 2 Overview Basic concepts The Models –Bell-LaPadula (BLP) –Biba –Clark-Wilson –Chinese Wall Systems Evaluation.
Chapter 14 Protection Bernard Chen Spring Goal of Protection Protection was originally conceived as an adjunct to multiprogramming operation.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 14: Protection.
Chapter 5 Network Security
Chapter 14: Protection Silberschatz, Galvin and Gagne ©2005 AE4B33OSS Chapter 14: Protection Goals of Protection Principles of Protection Domain.
Access Control. What is Access Control? The ability to allow only authorized users, programs or processes system or resource access The ability to disallow.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Protection (Chapter 14)
Cosc 4740 Chapter 13: Protection. Goals of Protection Operating system consists of a collection of objects, hardware or software Each object has a unique.
Protection Nadeem Majeed Choudhary
CE Operating Systems Lecture 21 Operating Systems Protection with examples from Linux & Windows.
14.1/21 Part 5: protection and security Protection mechanisms control access to a system by limiting the types of file access permitted to users. In addition,
12/4/20151 Computer Security Security models – an overview.
Chapter 14: Protection Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Apr 11, 2005 Chapter 14: Protection Goals.
Access Control: Policies and Mechanisms Vinod Ganapathy.
Chapter 14: Protection Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Apr 11, 2005 Goals of Protection Operating.
Chapter 14: Protection Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Goals of Protection Operating system consists of a collection.
Computer Security: Principles and Practice
Protection & Security Greg Bilodeau CS 5204 October 13, 2009.
CS426Fall 2010/Lecture 211 Computer Security CS 426 Lecture 21 The Bell LaPadula Model.
Computer Science and Engineering Computer System Security CSE 5339/7339 Session 16 October 14, 2004.
CSE Operating System Principles Protection.
Database Security. Introduction to Database Security Issues (1) Threats to databases Loss of integrity Loss of availability Loss of confidentiality To.
ACCESS MATRIX IMPLEMENTATION AND COMPARISON By: Rushabh Dharwadkar Roll no: TE COMP.
Saurav Karmakar. Chapter 14: Protection  Goals of Protection  Principles of Protection  Domain of Protection  Access Matrix  Implementation of Access.
Access Control Model SAM-5.
Access Control CSE 465 – Information Assurance Fall 2017 Adam Doupé
Protection and Security
Operating Systems Protection Alok Kumar Jagadev.
Chapter 14: Protection Modified by Dr. Neerja Mhaskar for CS 3SH3.
Chapter 14: System Protection
Chapter 14: Protection.
Chapter 14: Protection.
Chapter 14: Protection.
CE Operating Systems Lecture 21
Chapter 14: Protection.
Chapter 14: Protection.
Advanced System Security
Chapter 14: Protection.
Chapter 14: Protection.
Chapter 14: Protection.
Chapter 14: Protection.
Chapter 14: Protection.
Computer Security Access Control
CS703 - Advanced Operating Systems
A Survey of Formal Models for Computer Security
Advanced System Security
Presentation transcript:

Dr. Kalpakis CMSC 621, Advanced Operating Systems. Security & Protection

CMSC Security & Protection Deal with with the control of unauthorized use and access of computer system resources potential security violations unauthorized information release unauthorized information modification unauthorized denial of service security types physical/external security deals with the devices in the system internal security deals with the information in the system separation of policies & mechanisms security=policies protection=mechanism for implementing policies

CMSC Security & Protection The protection domain of a process set of resources it can use and the types of operations it can perform on them enables us to achieve the policy that a process accesses only the needed resources

CMSC Design Principles for Protection Mechanisms Economical to develop and use complete mediation for every access should work even if its underlying principles are known to attackers robustness and flexibility via separation of privileges: “two keys are needed to open a lock” least privilege sufficient to perform tasks least common mechanism among users simple and easy to easy to be acceptable fail-safe default

CMSC The Access Matrix Model Protection model that has O=a set of current objects o S=a set of current subjects s S is a subset of O R=set of generic access rights P=an access matrix such that P[s,o] is a subset of R and specifies the access rights s has on o protection state is the triplet (S, O, P) reference monitor for each object o which validates all access to o by any subject s given (s,o,a), is it in P[s,o]?

CMSC Implementations of the Access Matrix Model Access matrix is generally sparse direct implementations are wasteful of resources decompose access matrix by row => capability-based method by column => access control list method

CMSC Capabilities Each subject s is assigned a set of triples (o, P[s,o]), called capabilities, for the non-empty entries of P a subject having a capability is prima facie evidence that subject can access object in capability in the ways specified in the capability capabilities must not be forgeable capability-based addressing

CMSC Capability-Based Addressing Capability-idoffset access rightsobject-id baselength object capability list Object table Main memory capability

CMSC Implementing Capabilities Two approaches tagged=attach a bit to each memory location and register to distinguish data from capability content; manipulate capabilities only via privileged instructions partition=each object/register has two segments: one for data and one for capabilities

CMSC Advantages and Disadvantages of Capabilities: Advantages efficient simple flexible disadvantages controlling propagation use copy bit or depth counter review of access is expensive revocation of access rights is difficult garbage collection is needed

CMSC Access Control Lists Implement the access matrix by a column-wise decomposition each object o has a list of pairs (s, P[s,o]) for the non-empty P[s,o] access control lists can be long slow for validating access requests takes lots of space however revocation of access rights is easy review of access rights is easy protection groups (groups of subjects) can help to reduce the size of the lists

CMSC Access Control Lists Who has authority to change access control list for an object? self-control=owner of object can modify it hierarchical-control=owner specifies subjects in a hierarchy that can modify it

CMSC The Lock-Key Method A hybrid between capabilities and access control lists each subject has a list of capabilities (o,k) for the objects in its protection domain, where k is a key (integer) each object has an access control list (l, r) where r is a subset of R and l is a lock(integer) how it works at validation, a subject that wants to access o in mode x presents its capability to the reference monitor of o reference monitor grants access request if k=l and x is in r capability-based addressing can be used has advantages of ACLs

CMSC Safety in Access Matrix Model Changing the system’s protection state is done with commands of the form command ( ) { if then End } where the set of primitive operations is enter r into P[s,o] delete r from P[s,o] create subject s create object o delete subject s delete subject o

CMSC Safety in Access Matrix Model Safe if a subject cannot acquire an access right to an object without consent of the object’s owner impossible in the Access Matrix model a command leaks right r from state Q=(S,O,P) if it enters r in a cell of P that did not have r safe if a subject can determine whether its actions can lead to the leakage of a right to unauthorized subjects state Q is unsafe for r if there exists command that leaks r from Q; else Q is safe for r safety can be decided for mono-operational systems it is undecidable for general protection systems

CMSC The Take-Grant Model Access matrix can be thought of as the adjacency matrix of a directed graph an edge from x to y with label r, a subset of R, indicates that x has access rights r on y two special access rights Take: x can take any access rights y may have Grant: y can be granted any rights x has state = graph create/delete operations add/remove nodes in the graph state transitions happen by executing take/grant operations adding edges in the graph

CMSC The Take-Grant Model Safety: given a state, is there a sequence of state transitions that lead into a graph with a specific edge? Safety for take-grant model with general access rights/application rules is undecidable Safety for specific access rights/application rules can be decided in polynomial time

CMSC The Bell and LaPadula Model Deals with information flow instead of access control it has subjects, objects, and an access matrix each subject has a clearance and a current clearance no more than its clearance each objects has a classification access rights read-only append-only execute read-write

CMSC The Bell and LaPadula Model each object has a control attribute; a controller of an object can pass any access rights to any subject Bell-LaPadula imposes the following two properties simple security property (reading down) a subject can not read any objects with classification higher than its clearance star property (writing up) a subject has append rights only to objects with classification > its current clearance read-write rights only to objects with classification=its current clearance read-only rights only to objects with classification<=its current clearance

CMSC The Bell and LaPadula Model Information flow and access to objects is restricted not only by the access matrix but in addition by the simple security property and the star property the star property supports mandatory access controls the access matrix supports discretionary access controls

CMSC The Bell and LaPadula Model State transitions happen via these operations get access release access give access rescind access create object delete object change security level conditions implied by access matrix and star property are enforced before operations can be performed Bell-LaPadula showed that these operations maintain the reading down/writing up properties in the system drawbacks static classification/clearances star property can be too restrictive

CMSC Lattice Model of Information Flow a set of security classes that form a lattice partial order among security classes every set of security classes has a single least upper bound (security class), and a single greatest upper bound Each object x has a security class x

CMSC Military Security Model Military security model objects are ranked in security levels (unclassified, confidential, secret, top secret) assigned to compartments (subject relevance) subjects also have security levels and compartments (need-to-know) the class of an object is O=(Ro, Co) the clearance of an object is S=(Rs, Cs) S dominates O (O <= S) iff Ro <= Rs and Co is subset of Cs

CMSC Controlling Information Flow The dominates relation between classes of objects and clearances of subjects defines a partial order that turns out to be a lattice information flows from object x to object y if information contained in x is used to derive information transferred to y flows can be direct, eg y:=x; or indirect, eg y := (x==1 ? y+1:y); a flow is permitted only if y dominates the least upper bound of the objects from which information is transferred