590J Lecture 21: Access Control (contd). Review ● Recall: – Protection system is a description of conditions under which a system is secure – P is the.

Slides:



Advertisements
Similar presentations
Protection Goals of Protection Domain of Protection Access Matrix
Advertisements

Jan. 2014Dr. Yangjun Chen ACS Database security and authorization (Ch. 22, 3 rd ed. – Ch. 23, 4 th ed. – Ch. 24, 6 th )
Database Management System
1 Access Control Matrix CSSE 490 Computer Security Mark Ardis, Rose-Hulman Institute March 9, 2004.
Authentication James Walden Northern Kentucky University.
6/12/2015 9:14 PM Lecture 2: Access Control James Hook CS 591: Introduction to Computer Security.
April 6, 2004ECS 235Slide #1 Chapter 13: Design Principles Overview Principles –Least Privilege –Fail-Safe Defaults –Economy of Mechanism –Complete Mediation.
ITIS 3200: Introduction to Information Security and Privacy Dr. Weichao Wang.
Chapter 2 Access Control Fundamentals. Chapter Overview Protection Systems Mandatory Protection Systems Reference Monitors Definition of a Secure Operating.
CMSC 414 Computer (and Network) Security Lecture 10 Jonathan Katz.
1 Access Control Matrix CSSE 442 Computer Security Larry Merkle, Rose-Hulman Institute March 16, 2007.
Lecture 7 Access Control
Authentication and authorization Access control consists of two steps, authentication and authorization. Subject Do operation Reference monitor Object.
CS-550 (M.Soneru): Protection and Security - 2 [SaS] 1 Protection and Security - 2.
1 September 14, 2006 Lecture 3 IS 2150 / TEL 2810 Introduction to Security.
CH14 – Protection / Security. Basics Potential Violations – Unauthorized release, modification, DoS External vs Internal Security Policy vs Mechanism.
Csci5233 computer security & integrity 1 Access Control Matrix.
IS-2150/TEL-2810: Introduction of Computer Security1 September 7, 2005 Introduction to Computer Security Access Control Matrix Take-grant model.
ECE509 Cyber Security : Concept, Theory, and Practice Access Control Matrix Spring 2014.
Chapter 2: Access Control Matrix
CIT 380: Securing Computer SystemsSlide #1 CIT 380: Securing Computer Systems Access Control.
Slide #2-1 Chapter 2: Access Control Matrix Overview Access Control Matrix Model Protection State Transitions –Commands –Conditional Commands.
G53SEC 1 Access Control principals, objects and their operations.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 18: Protection Goals of Protection Objects and Domains Access Matrix Implementation.
14.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts with Java – 8 th Edition Chapter 14: Protection.
CE Operating Systems Lecture 21 Operating Systems Protection with examples from Linux & Windows.
Slide #2-1 Access Control Matrix and Safety Results CS461/ECE422 Computer Security I, Fall 2009 Based on slides provided by Matt Bishop for use with Computer.
Access Control in Practice CS461/ECE422 Fall 2010.
Computer Science and Engineering Computer System Security CSE 5339/7339 Lecture 14 October 5, 2004.
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.
1/30/20161 Computer Security Access Control Matrix.
Database Management Systems, 2 nd Edition, R. Ramakrishnan and J. Gehrke1 Security Lecture 17.
2/1/20161 Computer Security Foundational Results.
Protection & Security Greg Bilodeau CS 5204 October 13, 2009.
1 IS 2150 / TEL 2810 Introduction to Security James Joshi Associate Professor, SIS Lecture 4 September 18, 2012 Access Control Model Foundational Results.
July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-1 Chapter 2: Access Control Matrix Overview Access Control Matrix Model.
Computer Science and Engineering Computer System Security CSE 5339/7339 Session 16 October 14, 2004.
What is the difference between authentication and authorization? Authorization is usually explained using the ___________________ model.
November 1, 2004Introduction to Computer Security © 2004 Matt Bishop Slide #2-1 Chapter 2: Access Control Matrix Overview Access Control Matrix Model Protection.
1 IS 2150 / TEL 2810 Introduction to Security James Joshi Assistant Professor, SIS Lecture 3 September 13, 2007 Mathematical Review Security Policies.
September 10, 2012Introduction to Computer Security © 2004 Matt Bishop Slide #2-1 Chapter 2: Access Control Matrix Overview Access Control Matrix Model.
Database Security Advanced Database Dr. AlaaEddin Almabhouh.
IS 2150 / TEL 2810 Introduction to Security
Protection and Security
Operating Systems Protection Alok Kumar Jagadev.
IS 2150 / TEL 2810 Introduction to Security
Introduction to Computer Security Lecture 2
2. Access Control Matrix Introduction to Computer Security © 2004 Matt Bishop 9/21/2018.
IS 2150 / TEL 2810 Information Security & Privacy
Chapter 13: Design Principles
CE Operating Systems Lecture 21
Computer Security Access Control Matrix
IS 2150 / TEL 2810 Introduction to Security
IS 2150 / TEL 2810 Introduction to Security
Chapter 14: Protection.
Chapter 14: Protection.
Operating System Concepts
Outline Motivation Access Control Matrix Model
Computer Security: Art and Science, 2nd Edition
Access Control.
IS 2150 / TEL 2810 Information Security & Privacy
Chapter 2: Access Control Matrix
IS 2150 / TEL 2810 Introduction to Security
Computer Security Access Control Mechanisms
IS 2150 / TEL 2810 Introduction to Security
IS 2150 / TEL 2810 Introduction to Security
Chapter 2: Access Control Matrix
Presentation transcript:

590J Lecture 21: Access Control (contd)

Review ● Recall: – Protection system is a description of conditions under which a system is secure – P is the set of all protection states – Q is the set of authorized protection states ● Q  secure system ● P-Q  insecure system – Secure policies characterize the states of Q – Security mechanisms ensure the system never enters P-Q

Review (contd) ● Access control matrix (A) relates – Objects (O) entities relevant to the protection state – Subjects (S) are active object – Rights (R) a subject has over an object; implementation dependent ● Example: file_1file_2proc_1 proc_1r,w,xrr,w,x,own proc_2rr,wr

Protection State Transitions ● Process execution causes the protection system states to change: t i+1 : X i  X i+1 ● This implies the access control matrix representation must change via commands: c i+1 (p i+1,1,...,p i+1,m ): X i  X i+1

Primitive Commands ● Harrison, Ruzzo, and Ullman define a set of six primitive commands that alter the ACM: 1. create subject s4. delete r from a[s,o] 2. create object o5. destroy subject s 3. enter r into a[s,o]6. destroy object o ● These primitive commands are used to construct more sophisticated commands ● Recall that S  O.

create subject s ● Precondition: s  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]] ● This primitive creates a new subject s, which must not exist as an object before command execution. Note that no rights are added to the matrix.

create object o ● Precondition: o  O ● Postconditions: S' = S, O' = O  {s}, (  x  S'  [a'[x,o] =  ], (  x  S)(  y  O)[a'[x,y]=a[x,y]] ● This primitive creates a new object o, which must not exist as an object before command execution. Note that no rights are added to the matrix.

enter r into a[s,o] ● Precondition: s  S, o  O ● Postconditions: S'=S, O'=O, a'[s,o] = a[s,o]  {r}, (  x  S')(  y  O')[(x,y)  (s,o)  a'[x,y]=a[x,y]] ● This command adds r to the set of rights at a[s,o]. If r  a[s,o] prior to the execution of the command, the behavior depends on the model instantiation.

delete r from a[s,o] ● Precondition: s  S, o  O ● Postconditions: S'=S, O'=O, a'[s,o] = a[s,o] - {r}, (  x  S')(  y  O')[(x,y)  (s,o)  a'[x,y] = a[x,y]] ● This command removes r from the set of rights at a[s,o]. If r  a[s,o] prior to the execution of the command, then the effect of the operation is null.

destroy subject s ● Precondition: s  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]] ● This primitive deletes the subject s and the column/row defined by s in A.

destroy object o ● Precondition: o  O ● Postconditions: S' = S, O' = O  {s}, (  x  S'  [a'[x,o] =  ], (  x  S')(  y  O')[a'[x,y]=a[x,y]] ● This primitive deletes the object o and removes the column defined by o from the matrix A.

Example: UNIX files ● Suppose a process p creates a file f with read and write permissions. Then A is updated with the following command: 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

Example: UNIX process ● Support a process p spawns a child process q. The following command updates the matrix A: 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 interprocess signals

Example: Uni-operational commands ● Primitive commands are not meant to be used directly. Instead, a wrapper around them provides their functionality: command make-owner (p,f) enter own into a[p,f]; end

Conditional Commands ● What if a process p wanted to give permission to read a file f to another process q? ● Process p would have to have the rights to that file. – Principle of Attenuation of Privilege: A subject s 1 may not grant rights to another subject s 2 of an object o that it does not have those rights to. ● Conditional statements in commands allow specific preconditions to be satisfied.

Conditional Commands (contd) ● Example: conjunction command grant-read-file (p,f,q) if r in a[p,f] and c in a[p,f] then enter r into a[q,f]; end ● Disjunctions and negations are not allowed. – 'or' can be represented as two commands – absence of rights is not permitted.

The own Right ● The own right allows – a subject to grant rights to other (may be restricted) – self-referential right granting ● The owner is usually the creator of an object ● Semantics get tricky: – Can new owners delete objects? – Should ownership be transferred? – Who is reponsible for the object?