ECE509 Cyber Security : Concept, Theory, and Practice Access Control Matrix Spring 2014.

Slides:



Advertisements
Similar presentations
Access Control CS461/ECE422 Fall Reading Material Chapter 4 through section 4.5 Chapters 23 and 24 – For the access control aspects of Unix and.
Advertisements

RBAC and Usage Control System Security. Role Based Access Control Enterprises organise employees in different roles RBAC maps roles to access rights After.
Access Control Discretionary Access Control Lecture 4 1.
Access Control Intro, DAC and MAC System Security.
1 Access Control Matrix CSSE 490 Computer Security Mark Ardis, Rose-Hulman Institute March 9, 2004.
Authentication James Walden Northern Kentucky University.
Chapter 4: Security Policies Overview The nature of policies What they cover Policy languages The nature of mechanisms Types Secure vs. precise Underlying.
Security Fall 2009McFadyen ACS How do we protect the database from unauthorized access? Who can see employee salaries, student grades, … ? Who can.
April 6, 2004ECS 235Slide #1 Chapter 13: Design Principles Overview Principles –Least Privilege –Fail-Safe Defaults –Economy of Mechanism –Complete Mediation.
Security Fall 2006McFadyen ACS How do we protect the database from unauthorized access? Who can see employee salaries, student grades, … ? Who can.
ITIS 3200: Introduction to Information Security and Privacy Dr. Weichao Wang.
590J Lecture 21: Access Control (contd). Review ● Recall: – Protection system is a description of conditions under which a system is secure – P is the.
Computer Security: Principles and Practice EECS710: Information Security Professor Hossein Saiedian Fall 2014 Chapter 4: Access Control.
1 Access Control Matrix CSSE 442 Computer Security Larry Merkle, Rose-Hulman Institute March 16, 2007.
November 1, 2004Introduction to Computer Security ©2004 Matt Bishop Slide #6-1 Chapter 6: Integrity Policies Overview Requirements Biba’s models Clark-Wilson.
Lecture 7 Access Control
Lecture slides prepared for “Computer Security: Principles and Practice”, 2/e, by William Stallings and Lawrie Brown, Chapter 4 “Overview”.
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.
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.
Chapter 2: Access Control Matrix
Security Policy What is a security policy? –Defines what it means for a system to be secure Formally: Partition system into –Secure (authorized) states.
ISA Access Control ISA 562 Internet Security Theory & Practice.
CSCE 201 Introduction to Information Security Fall 2010 Access Control.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 14: Protection.
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.
Computer Security: Principles and Practice First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown Chapter 4 – Access Control.
G53SEC 1 Access Control principals, objects and their operations.
Access Control. What is Access Control? The ability to allow only authorized users, programs or processes system or resource access The ability to disallow.
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.
COEN 350: Network Security Authorization. Fundamental Mechanisms: Access Matrix Subjects Objects (Subjects can be objects, too.) Access Rights Example:
Chapter 4: Security Policies Overview The nature of policies What they cover Policy languages The nature of mechanisms Types Secure vs. precise Underlying.
Access Control: Policies and Mechanisms Vinod Ganapathy.
Privilege Management Chapter 22.
Computer Security: Principles and Practice
1/30/20161 Computer Security Access Control Matrix.
June 1, 2004Computer Security: Art and Science © Matt Bishop Slide #13-1 Chapter 13: Design Principles Overview Principles –Least Privilege –Fail-Safe.
July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-1 Chapter 2: Access Control Matrix Overview Access Control Matrix Model.
November 1, 2004Introduction to Computer Security © 2004 Matt Bishop Slide #2-1 Chapter 2: Access Control Matrix Overview Access Control Matrix Model Protection.
CSE Operating System Principles Protection.
September 10, 2012Introduction to Computer Security © 2004 Matt Bishop Slide #2-1 Chapter 2: Access Control Matrix Overview Access Control Matrix Model.
Computer Security: Principles and Practice First Edition by William Stallings and Lawrie Brown Chapter 4 – Access Control.
Access Control Discretionary Access Control Chapter 3.
Access Control Model SAM-5.
Access Control CSE 465 – Information Assurance Fall 2017 Adam Doupé
IS 2150 / TEL 2810 Introduction to Security
Chapter 14: System Protection
2. Access Control Matrix Introduction to Computer Security © 2004 Matt Bishop 9/21/2018.
Chapter 14: Protection.
Chapter 13: Design Principles
CE Operating Systems Lecture 21
Computer Security Access Control Matrix
IS 2150 / TEL 2810 Introduction to Security
OS Access Control Mauricio Sifontes.
Chapter 14: Protection.
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
Chapter 4: Security Policies
Computer Security Access Control Mechanisms
IS 2150 / TEL 2810 Introduction to Security
Chapter 2: Access Control Matrix
Presentation transcript:

ECE509 Cyber Security : Concept, Theory, and Practice Access Control Matrix Spring 2014

Access Control Principles

Types of Access Control Policies Discretionary Access Control (DAC) –Decision made based on identity of requestor and access rules –Regular users can adjust the policy Mandatory Access Control (MAC) –Decision made by testing labels associated with processes and resources against system policy rules –Regular user cannot adjust the policy Role Based Access Control (RBAC) –Access decisions defined against roles rather than individual requestors

Multiple Access Control Policies DACMAC RBAC

Access Control Requirements or Differentiators Reliable Input Fine and course grain specifications Least Privilege Separation of Duty Open and closed policies Policy combination and conflict resolution Administrative policies Dual Control

Chapter 2: Access Control Matrix Overview Access Control Matrix Model –Boolean Expression Evaluation –History Protection State Transitions –Commands –Conditional Commands Special Rights –Principle of Attenuation of Privilege July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-6

Overview Protection state of system –Describes current settings, values of system relevant to protection Access control matrix –Describes protection state precisely –Matrix describing rights of subjects –State transitions change elements of matrix July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-7

Description Subjects S = { s 1,…,s n } Objects O = { o 1,…,o m } Rights R = { r 1,…,r k } Entries A[s i, o j ]   R A[s i, o j ] = { r x, …, r y } means subject s i has rights r x, …, r y over object o j July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-8 objects (entities) subjects s1s2…sns1s2…sn o 1 … o m s 1 … s n

Example 1 Processes p, q Files f, g Rights r, w, x, a, o fgpq prworrwxow qarorrwxo July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-9

Example 2 Procedures inc_ctr, dec_ctr, manage Variable counter Rights +, –, call counterinc_ctrdec_ctrmanage inc_ctr+ dec_ctr– managecallcallcall July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-10

Boolean Expression Evaluation ACM controls access to database fields –Subjects have attributes –Verbs define type of access –Rules associated with objects, verb pair Subject attempts to access object –Rule for object, verb evaluated, grants or denies access July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-11

Example Subject annie –Attributes role (artist), groups (creative) Verb paint –Default 0 (deny unless explicitly granted) Object picture –Rule: paint: ‘ artist ’ in subject.role and ‘ creative ’ in subject.groups and time.hour ≥ 0 and time.hour < 5 July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-12

ACM at 3AM and 10AM July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-13 … picture … … annie … paint At 3AM, time condition met; ACM is: … picture … … annie … At 10AM, time condition not met; ACM is:

History Database: namepositionagesalary Aliceteacher45$40,000 Bobaide20$20,000 Cathyprincipal37$60,000 Dilbertteacher50$50,000 Eveteacher33$50,000 Queries: 1.sum(salary, “ position = teacher ” ) = 140,000 2.sum(salary, “ age > 40 & position = teacher ” ) should not be answered (deduce Eve ’ s salary) July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-14

ACM of Database Queries O i = { objects referenced in query i } f(o i ) = { read }for o j  O i, if |  j = 1,…,i  O j | < 2 f(o i ) =  for o j  O i, otherwise 1. O 1 = { Alice, Dilbert, Eve } and no previous query set, so: A[asker, Alice] = f(Alice) = { read } A[asker, Dilbert] = f(Dilbert) = { read } A[asker, Eve] = f(Eve) = { read } and query can be answered July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-15

But Query 2 From last slide: f(o i ) = { read }for o j in O i, if |  j = 1,…,i  O j | > 1 f(o i ) =  for o j in O i, otherwise 2.O 2 = { Alice, Dilbert } but | O 2  O 1 | = 2 so A[asker, Alice] = f(Alice) =  A[asker, Dilbert] = f(Dilbert) =  and query cannot be answered July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-16

State Transitions Change the protection state of system |– represents transition –X i |–  X i+1 : command  moves system from state X i to X i+1 –X i |– * X i+1 : a sequence of commands moves system from state X i to X i+1 Commands often called transformation procedures July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-17

Primitive Operations create subject s; create object o –Creates new row, column in ACM; creates new column in ACM destroy subject s; destroy object o –Deletes row, column from ACM; deletes column from ACM enter r into A[s, o] –Adds r rights for subject s over object o delete r from A[s, o] –Removes r rights from subject s over object o July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-18

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]] July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-19

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]] July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-20

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]] July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-21

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]] July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-22

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]] July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-23

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]] July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-24

Creating File Process p creates file f with r and w permission command createfile(p, f) create object f; enter own into A[p, f]; enter r into A[p, f]; enter w into A[p, f]; end July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-25

Mono-Operational Commands Make process p the owner of file g command makeowner(p, g) enter own into A[p, g]; end Mono-operational command –Single primitive operation in this command July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-26

Conditional Commands Let p give q r rights over f, if p owns f command grantreadfile1(p, f, q) if own in A[p, f] then enter r into A[q, f]; end Mono-conditional command –Single condition in this command July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-27

Multiple Conditions Let p give q r and w rights over f, if p owns f and p has c rights over q command grantreadfile2(p, f, q) if own in A[p, f] and c in A[p, q] then enter r into A[q, f]; enter w into A[q, f]; end July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-28

Copy Right Allows possessor to give rights to another Often attached to a right, so only applies to that right –r is read right that cannot be copied –rc is read right that can be copied Is copy flag copied when giving r rights? –Depends on model, instantiation of model July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-29

Own Right Usually allows possessor to change entries in ACM column –So owner of object can add, delete rights for others –May depend on what system allows Can ’ t give rights to specific (set of) users Can ’ t pass copy flag to specific (set of) users July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-30

Attenuation of Privilege Principle says you can ’ t give rights you do not possess –Restricts addition of rights within a system –Usually ignored for owner Why? Owner gives herself rights, gives them to others, deletes her rights. July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-31

Key Points Access control matrix simplest abstraction mechanism for representing protection state Transitions alter protection state 6 primitive operations alter matrix –Transitions can be expressed as commands composed of these operations and, possibly, conditions July 1, 2004Computer Security: Art and Science © Matt Bishop Slide #2-32

Slice and Dice File example

Unix Access Control Three permission octets associated with each file and directory –Owner, group, and other –Read, write, execute For each file/directory –Can specify RWX permissions for one owner, one group, and one other 9/29/2010Computer Security I34

Reading Sandhu, R.S.; Samarati, P., "Access control: principle and practice," Communications Magazine, IEEE, vol.32, no.9, pp.40,48, Sept [ sp?tp=&arnumber=312842&ranges%3D199 0_2000_p_Publication_Year%26queryText %3Daccess+control+matrix]