Lecture 17: Mandatory Access Control

Slides:



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

Operating System Security
1 cs691 chow C. Edward Chow Confidentiality Policy CS691 – Chapter 5 of Matt Bishop.
Access Control Chapter 3 Part 3 Pages 209 to 227.
Access Control Methodologies
I NFORMATION S ECURITY : C ONFIDENTIALITY P OLICIES (C HAPTER 4) Dr. Shahriar Bijani Shahed University.
Slide #5-1 Chapter 5: Confidentiality Policies Overview –What is a confidentiality model Bell-LaPadula Model –General idea –Informal description of rules.
Access Control Patterns Fatemeh Imani Mehr Amirkabir university of technology, Department of Computer Engineering & Information Technology.
Access Control Intro, DAC and MAC System Security.
Confidentiality Policies  Overview  What is a confidentiality model  Bell-LaPadula Model  General idea  Informal description of rules  Formal description.
CMSC 414 Computer and Network Security Lecture 13 Jonathan Katz.
November 1, 2004Introduction to Computer Security ©2004 Matt Bishop Slide #5-1 Chapter 5: Confidentiality Policies Overview –What is a confidentiality.
Sicurezza Informatica Prof. Stefano Bistarelli
User Domain Policies.
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.
1 Confidentiality Policies September 21, 2006 Lecture 4 IS 2150 / TEL 2810 Introduction to Security.
1 IS 2150 / TEL 2810 Information Security & Privacy James Joshi Associate Professor, SIS Lecture 6 Oct 2-9, 2013 Security Policies Confidentiality Policies.
© G. Dhillon, IS Department Virginia Commonwealth University Principles of IS Security Formal Models.
3/16/2004Biba Model1 Biba Integrity Model Presented by: Nathan Balon Ishraq Thabet.
Session 2 - Security Models and Architecture. 2 Overview Basic concepts The Models –Bell-LaPadula (BLP) –Biba –Clark-Wilson –Chinese Wall Systems Evaluation.
Security Architecture and Design Chapter 4 Part 3 Pages 357 to 377.
Chapter 5 Network Security
Access Control. What is Access Control? The ability to allow only authorized users, programs or processes system or resource access The ability to disallow.
ECE Prof. John A. Copeland fax Office: GCATT Bldg.
Trusted OS Design and Evaluation CS432 - Security in Computing Copyright © 2005, 2010 by Scott Orr and the Trustees of Indiana University.
Policy, Models, and Trust
Information Security CS 526 Topic 17
1 IS 2150 / TEL 2810 Introduction to Security James Joshi Associate Professor, SIS Lecture 5 September 29, 2009 Security Policies Confidentiality Policies.
COEN 350: Network Security Authorization. Fundamental Mechanisms: Access Matrix Subjects Objects (Subjects can be objects, too.) Access Rights Example:
Mandatory Access Control and SE Linux CS 460 Cyber Security Lab Spring ‘10.
Trusted Operating Systems
Access Control: Policies and Mechanisms Vinod Ganapathy.
Computer Security: Principles and Practice
November 1, 2004Introduction to Computer Security ©2004 Matt Bishop Slide #5-1 Confidentiality Policies Overview –What is a confidentiality model Bell-LaPadula.
CS426Fall 2010/Lecture 211 Computer Security CS 426 Lecture 21 The Bell LaPadula Model.
Security Models Xinming Ou. Security Policy vs. Security Goals In a mandatory access control system, the system defines security policy to achieve security.
Dr. Jeff Teo Class 4 July 2, Deliverables Lecture on Trusted Computing: Evolution and Direction Review of students’ blogs and assignments Summarize.
Design and Implementation MAC in Security Operating System CAI Yi, ZHENG Zhi-rong, SHEN Chang-xiang Presented By, Venkateshwarlu Jangili. 1.
Database Security Database System Implementation CSE 507 Some slides adapted from Navathe et. Al.
Access Controls Mandatory Access Control by Sean Dalton December 5 th 2008.
PREPARED BY: MS. ANGELA R.ICO & MS. AILEEN E. QUITNO (MSE-COE) COURSE TITLE: OPERATING SYSTEM PROF. GISELA MAY A. ALBANO PREPARED BY: MS. ANGELA R.ICO.
Lecture 2 Page 1 CS 236 Online Security Policies Security policies describe how a secure system should behave Policy says what should happen, not how you.
9- 1 Last time ● User Authentication ● Beyond passwords ● Biometrics ● Security Policies and Models ● Trusted Operating Systems and Software ● Military.
CS580 Internet Security Protocols
Database System Implementation CSE 507
Access Control Model SAM-5.
Access Control CSE 465 – Information Assurance Fall 2017 Adam Doupé
Verifiable Security Goals
Access control models and policies
Protection and Security
Computer Data Security & Privacy
Chapter 5: Confidentiality Policies
Executive Director and Endowed Chair
Computer Security Confidentiality Policies
IS 2150 / TEL 2810 Introduction to Security
Information Security CS 526 Topic 17
Advanced System Security
Confidentiality Models
Guest Lecture in Acc 661 (Spring 2007) Instructor: Christopher Brown)
Trust Models CS461/ECE422.
Chapter 5: Confidentiality Policies
Lecture 18: Mandatory Access Control
Computer Security Access Control
Computer Security Confidentiality Policies
CS703 - Advanced Operating Systems
IS 2150 / TEL 2810 Information Security & Privacy
Chapter 5: Confidentiality Policies
Advanced System Security
Presentation transcript:

Lecture 17: Mandatory Access Control CS 5430 3/26/2018

Review: Access control Subject: principal to which execution can be attributed Object: data or resource Operation: performed by subject on object Right: entitlement to perform operation

Review: DAC Discretionary access control (DAC) Implementations: Philosophy: users have the discretion to specify policy themselves Commonly, information belongs to the owner of object Model: access control relation Set of triples (subj,obj,rights) Sometimes described as access control "matrix" Implementations: Access control lists (ACLs): each object associated with list of (subject, rights) Capability lists (Privilege lists): each subject associated with list of (object, rights) Capabilities: distributed ways of implementing privilege lists

MAC Mandatory access control (MAC) not Message Authentication Code (applied crypto), nor Media Access Control (networking) philosophy: central authority mandates policy information belongs to the authority, not to the individual users

Multi-Level Security A mechanism for monitoring access control in a system where both principals and objects have security labels drawn from a hierarchy of labels Commonly associated with military systems Influenced "Orange Book" (DoD Trusted Computer System Evaluation Criteria) A) Verified Protection B) Mandatory Protection C) Discretionary Protection D) Minimal Protection

Sensitivity Concern is confidentiality of information Documents classified according to sensitivity: risk associated with release of information In US: Top Secret Secret Confidential Unclassified If there are levels above Top Secret, they must themselves be classified...

Compartments Documents classified according to compartment(s): categories of information (in fact, aka category) cryptography nuclear biological reconnaissance Need to Know Principle: access should be granted only when necessary to perform assigned duties (instance of Least Privilege) {crypto, nuclear}: must need to know about both to access {}: no particular compartments

Labels Label: pair of sensitivity level and set of compartments, e.g., (Top Secret, {crypto, nuclear}) (Unclassified, {}) Users are labeled according to their clearance Document is labeled aka classified Perhaps each paragraph labeled Label of document is most restrictive label for any paragraph Labels are imposed by organization Notation: let L(X) be the label of entity X

Restrictiveness of labels Notation: L1 ⊑ L2 means L1 is no more restrictive than L2 less precisely: L1 is less restrictive than L2 Definition: Let L1 = (S1, C1) and L2 = (S2, C2) L1 ⊑ L2 iff S1 ≤ S2 and C1 ⊆ C2 Where ≤ is order on sensitivity: Unclassified ≤ Confidential ≤ Secret ≤ Top Secret e.g. (Unclassified,{}) ⊑ (Top Secret, {}) (Top Secret, {crypto}) ⊑ (Top Secret, {crypto,nuclear})

Label partial order Conf, {nuc,crypto} Conf, {nuc} Conf, {crypto}

Label partial order Secret, {nuc, crypto} Secret, {nuc} Secret, {crypto} Secret, {} Conf, {}

Label partial order Secret, {nuc, crypto} Conf, {nuc,crypto} Conf, {crypto} Secret, {nuc} Secret, {crypto} Hasse diagram Secret, {} Conf, {}

Label partial order Incomparable Sec, {nuc,crypto} Secret, {nuc} Conf, {nuc,crypto} Secret, {crypto} Conf, {nuc} Secret, {} Conf, {crypto} Incomparable Conf, {}

Label partial order Incomparable Sec, {nuc,crypto} Secret, {nuc} Conf, {nuc,crypto} Secret, {crypto} Conf, {nuc} Secret, {} Conf, {crypto} Conf, {}

Access control with MLS When may a subject read an object? Threat: subject attempts to read information for which it is not cleared e.g., subject with clearance Unclassified attempts to read Top Secret information When may a subject write an object? Threat: subject attempts to launder information by writing into a lower-security object e.g., subject with clearance Top Secret reads Top Secret information then writes it into an Unclassified file group discussion

Access control with MLS Threat of concern is subject not user: Users trustworthy by virtue of vetting process for security clearance Out of scope (e.g.): user who views Top Secret information and calls the Washington Post But still want to enforce Least Privilege And malicious programs are a threat...

Trojan Horse Example: Gozi http://blog.talosintelligence.com/2018/03/gozi-isfb-remains-active-in-2018.html

Access control with MLS When may a subject read an object? S may read O iff L(O) ⊑ L(S) object's classification must be below (or equal to) subject's clearance "no read up" When may a subject write an object? S may write O iff L(S) ⊑ L(O) object's classification must be above (or equal to) subject's clearance "no write down" Beautiful symmetry between these

Reading with MLS Scenario: Which documents may Colonel read? Colonel with clearance (Secret, {nuclear, Europe}) DocA with classification (Confidential, {nuclear}) DocB with classification (Secret, {Europe, US}) DocC with classification (Top Secret, {nuclear, Europe}) Which documents may Colonel read? Recall: S may read O iff L(O) ⊑ L(S) DocA: (Confidential, {nuclear}) ⊑ (Secret, {nuclear, Europe}) DocB: (Secret, {Europe, US}) ⋢ (Secret, {nuclear, Europe}) DocC: (Top Secret, {nuclear, Europe}) ⋢ (Secret, {nuclear, Europe})

Writing with MLS Scenario: Which documents may Colonel write? Colonel with clearance (Secret, {nuclear, Europe}) DocA with classification (Confidential, {nuclear}) DocB with classification (Secret, {Europe, US}) DocC with classification (Top Secret, {nuclear, Europe}) Which documents may Colonel write? Recall: S may write O iff L(S) ⊑ L(O) DocA: (Secret, {nuclear, Europe}) ⋢ (Confidential, {nuclear}) DocB: (Secret, {nuclear, Europe}) ⋢ (Secret, {Europe, US}) DocC: (Secret, {nuclear, Europe}) ⊑ (Top Secret, {nuclear, Europe}) Exercize

Reading and writing with MLS Scenario: Colonel with clearance (Secret, {nuclear, Europe}) DocA with classification (Confidential, {nuclear}) DocB with classification (Secret, {Europe, US}) DocC with classification (Top Secret, {nuclear, Europe}) Summary: DocA: Colonel may read but not write DocB: Colonel may neither read nor write DocC: Colonel may write but not read

Prevention of laundering Earlier concern: "subject with clearance Top Secret reads Top Secret information then writes it into an Unclassified file" More generally: S reads O1 then writes O2 where L(O2) ⊏ L(O1) and regardless of L(S) Prohibited by MLS rules: S read O1, so L(O1) ⊑ L(S) S wrote O2, so L(S) ⊑ L(O2) So L(O1) ⊑ L(S) ⊑ L(O2) Hence L(O1) ⊑ L(O2) But combined with L(O2) ⊏ L(O1), we have L(O1) ⊏ L(O1) Contradiction! So access control rules would defeat laundering, Trojan Horse, etc.

Perplexities of writing with MLS Blind write: subject may not read higher-security object yet may write it Useful for logging Some implementations prohibit writing up as well as writing down User who wants to write lower-security object may not Attenuation of privilege: login at a lower security level than clearance Motivated by Trojan Horse Nice (annoying?) application of Least Privilege Declassification violates "no write down" Encryption or billing procedure produces (e.g.) Unclassified output from Secret information Traditional solution is trusted subjects who are not constrained by access control rules

MLS in OSs DG/UX Discontinued Unix OS, release 1985 Three regions: Virus Protection ⊑ User Region ⊑ Administrative Region DG/UX = Data General (company)/Unix, Data General later bough by EMC which then merged with Dell User Region: users are cleared here Virus Protection: executables that implement the system Can't be written by users (no write down) Can be executed (okay to read down) Administrative Region: authorization & authentication database (assigns labels), audit logs Can't be read by users (no read up) Can't be changed by users (no blind writes)

MLS in OSs DG/UX Discontinued Unix OS, release 1985 Three regions: Virus Protection ⊑ User Region ⊑ Administrative Region MLS confidentiality: read down, no read up Extra integrity: no write down, no write up for shared directories (e.g., /tmp), introduced mulit-level directories with one hidden subdirectory for each level

MLS in OSs SELinux Kernel security module, dates back to NSA c. 2000, merged with Linux kernel mainline in 2.6 Goal: separate security policy from security decisions Supports mandatory access controls in reference policy. When MLS is enabled: Each principal (user or process) is assigned a context (username, role, domain, (sensitivity)) Each object (file, port, hardware) is assigned a context SELinux enforces MLS

MLS in OSs TrustedBSD [2000] Similar goals to SELinux: separate policy from security mechanism, implements MLS ported parts of SELinux to FreeBSD Many components eventually folded into FreeBSD Most interfaces supported on Macs since OSX 10.5 The source for the TrustedBSD/OSX discussion is the PhD dissertation of Robert Watson, New Approaches to Operating System Security Extensibility, http://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-818.html.

Formalizing MLS [Bell and LaPadula 1973] Formal mathematical model of MLS plus access control matrix Proof that information cannot leak to subjects not cleared for it "No read up": simple security property "No write down": *-property "The influence of [BLP] permeates all policy modeling in computer security" –Matt Bishop Influenced Orange Book Led to research field "foundations of computer security”

BLP, for integrity BLP is about confidentiality Adapted to integrity by Biba [1977]: same rules, different lattice Instead of Unclassified and Secret, labels could be Untrusted and Trusted L1 ⊑ L2 means “L1 may flow to L2 without breaking confidentiality” BLP: low secrecy sources may flow to high secrecy sinks Hence Unclassified ⊑ Secret, but not v.v. Biba: low integrity sources may not flow to high integrity sinks Hence Trusted ⊑ Untrusted, but not v.v. High vs. low is “flipped” (lattices are duals)

Biba model S may read O iff L(O) ⊑ L(S) S may write O iff L(S) ⊑ L(O) E.g., Trusted subject cannot read Untrusted object But Untrusted subject may read Trusted object S may write O iff L(S) ⊑ L(O) E.g., Trusted subject may write Untrusted object But Untrusted subject may not write Trusted object

Beyond Multi-level Security… Mandatory access control comes in many different forms (not just MLS): Brewer-Nash (consulting firm) Clark-Wilson (business) Role-based access control (organization) Clinical information systems (medicine)