September 2006 1 Security policy systems and their consistency problems Luigi Logrippo, Kamel Adi Université du Québec en Outaouais

Slides:



Advertisements
Similar presentations
Business Ethics for Real Estate: A. Glean
Advertisements

Financial Statements Audit
LIFE CYCLE MODELS FORMAL TRANSFORMATION
SECAM Systems Product Presentation SECAM Systems © 2010.
Some general principles in computer security Tomasz Bilski Chair of Control, Robotics and Computer Science Poznań University.
Formal Methods in Software Engineering Credit Hours: 3+0 By: Qaisar Javaid Assistant Professor Formal Methods in Software Engineering1.
Process Model for Access Control Wael Hassan University of Ottawa Luigi Logrippo, Université du Québec en Outaouais.
XACML 2.0 and Earlier Hal Lockhart, Oracle. What is XACML? n XML language for access control n Coarse or fine-grained n Extremely powerful evaluation.
How do Networks work – Really The purposes of set of slides is to show networks really work. Most people (including technical people) don’t know Many people.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Lecture.
Chapter 9 Describing Process Specifications and Structured Decisions
Governance Policies for Privacy Access and their Interactions ICFI-2005 Waël Hassan 1 & Luigi Logrippo 2 1 University of Ottawa School of information technology.
Firewall Policy Queries Author: Alex X. Liu, Mohamed G. Gouda Publisher: IEEE Transaction on Parallel and Distributed Systems 2009 Presenter: Chen-Yu Chang.
Developing Ideas for Research and Evaluating Theories of Behavior
IS550: Software requirements engineering Dr. Azeddine Chikh 4. Validation and management.
School of Computer ScienceG53FSP Formal Specification1 Dr. Rong Qu Introduction to Formal Specification
Senior Design – Acceptance Test Plan Review The goal is to: define the criteria for approving the application. Tightly coupled to the Requirements document.
Lecture slides prepared for “Computer Security: Principles and Practice”, 2/e, by William Stallings and Lawrie Brown, Chapter 4 “Overview”.
Presented by INTRUSION DETECTION SYSYTEM. CONTENT Basically this presentation contains, What is TripWire? How does TripWire work? Where is TripWire used?
Lecture 18 Page 1 CS 111 Online Design Principles for Secure Systems Economy Complete mediation Open design Separation of privileges Least privilege Least.
Chapter 6: Integrity and Security Thomas Nikl 19 October, 2004 CS157B.
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
Database Design - Lecture 1
DBS201: DBA/DBMS Lecture 13.
What is Enterprise Architecture?
Topics Covered: Software requirement specification(SRS) Software requirement specification(SRS) Authors of SRS Authors of SRS Need of SRS Need of SRS.
ITEC224 Database Programming
1 Luigi Logrippo Kamel Adi Inconsistency and incompleteness in security policies
© G. Dhillon, IS Department Virginia Commonwealth University Principles of IS Security Formal Models.
CatBAC: A Generic Framework for Designing and Validating Hybrid Access Control Models Bernard Stepien, University of Ottawa Hemanth Khambhammettu Kamel.
Information flow-based Risk Assessment in Access Control Systems
Chapter 7 Auditing Internal Control over Financial Reporting McGraw-Hill/Irwin ©2008 The McGraw-Hill Companies, All Rights Reserved.
Copyright © 2007, Oracle. All rights reserved. Managing Concurrent Requests.
A GENERIC PROCESS FOR REQUIREMENTS ENGINEERING Chapter 2 1 These slides are prepared by Enas Naffar to be used in Software requirements course - Philadelphia.
Configuration Management (CM)
Service Transition & Planning Service Validation & Testing
 Dr. Syed Noman Hasany.  Review of known methodologies  Analysis of software requirements  Real-time software  Software cost, quality, testing and.
Chapter 2 Data Models Database Systems: Design, Implementation, and Management, Rob and Coronel Adapted for INFS-3200.
Proof Carrying Code Zhiwei Lin. Outline Proof-Carrying Code The Design and Implementation of a Certifying Compiler A Proof – Carrying Code Architecture.
Author: Graham Hughes, Tevfik Bultan Computer Science Department, University of California, Santa Barbara, CA 93106, USA Source: International Journal.
1 The CeNTIE project is supported by the Australian Government through the Advanced Networks Program of the Department of Communications, Information Technology.
1 Dept of Information and Communication Technology Creating Objects in Flexible Authorization Framework ¹ Dep. of Information and Communication Technology,
Collecting Data Types, coding, accuracy, file formats and the effect of data loss.
Problem Solving Techniques. Compiler n Is a computer program whose purpose is to take a description of a desired program coded in a programming language.
Formal Verification Lecture 9. Formal Verification Formal verification relies on Descriptions of the properties or requirements Descriptions of systems.
WHAT IS THE NATURE OF SCIENCE?. SCIENTIFIC WORLD VIEW 1.The Universe Is Understandable. 2.The Universe Is a Vast Single System In Which the Basic Rules.
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,
Claims-Based Identity Solution Architect Briefing zoli.herczeg.ro Taken from David Chappel’s work at TechEd Berlin 2009.
Assurance service/engagement
CSIIR Workshop March 14-15, Privilege and Policy Management for Cyber Infrastructures Dennis Kafura Markus Lorch Support provided by: Commonwealth.
INTRUSION DETECTION SYSYTEM. CONTENT Basically this presentation contains, What is TripWire? How does TripWire work? Where is TripWire used? Tripwire.
Computer Science 1 Detection of Multiple-Duty-Related Security Leakage in Access Control Policies JeeHyun Hwang 1, Tao Xie 1, and Vincent Hu 2 North Carolina.
September XACML: Consistency analysis Luigi Logrippo Université du Québec University of Ottawa
11 Restricting key use with XACML* for access control * Zack’-a-mul.
1 Access Control Policies: Modeling and Validation Luigi Logrippo & Mahdi Mankai Université du Québec en Outaouais.
Understand Permissions LESSON Security Fundamentals.
Software Requirements Specification Document (SRS)
Role Of Network IDS in Network Perimeter Defense.
Systems Analyst (Module V) Ashima Wadhwa. The Systems Analyst - A Key Resource Many organizations consider information systems and computer applications.
The Relational Model Lecture #2 Monday 21 st October 2001.
Access Controls Mandatory Access Control by Sean Dalton December 5 th 2008.
ALLOY: A Formal Methods Tool Glenn Gordon Indiana University of Pennsylvania COSC 481- Formal Methods Dr. W. Oblitey 26 April 2005.
Getting started with Accurately Storing Data
Chapter 4 – Requirements Engineering
Validating Access Control Policies with Alloy
State your reasons or how to keep proofs while optimizing code
Chapter 11 Describing Process Specifications and Structured Decisions
Security policy systems and their consistency problems
PLANNING A SECURE BASELINE INSTALLATION
Presentation transcript:

September Security policy systems and their consistency problems Luigi Logrippo, Kamel Adi Université du Québec en Outaouais

2 Research at the UQO Computer Science and Engineering Canada Research Chair in Photonics University Research Chair in Distributed Computing Security Laboratory My colleague Kamel Adi We organized 3 international workshops on Access control and security in the past couple of years We have also research labs in multimedia, robotics, hardware design, wireless communications, etc. Master’s and PhD program

3 Our Claim Formal auditing and formal verification of security policies is becoming possible by the use of logic tools

4 Formal auditing of accounts $15, $ 5, $ 3, $17, Has a company made 17,000 if it has had incomes of 15,000 and 5,000, and loss of 3,000?

5 Formal auditing of security policies Can nurses gain access to accounting information in a hospital? Only employees in the accounting department can access acct info Nurses are in the patient care department No employees can be in both patient care and accounting No nurse can gain accept to accounting information This is formally verifiable if enterprise policies are expressed in a suitable formal language

6 Policy languages for customizing enterprise systems Policy languages are already being used in order to express enterprise policies in many applications. Examples: Firewalls Access control (e.g. language XACML, SiteMinder) Security models (Bell-LaPadula, Chinese Wall, RBAC…) Identity identification Telecommunications features, call control Telecommunications routers Web services orchestration and choreography (e.g. language BPEL) E-commerce

7 Policy sources Enterprise policies can be formalized in computer language, or be in printed regulations, or be in the ‘memory’ of the enterprise Policies can originate in several different places in an enterprise Can be attached to administrative units or roles Can be created by agreements, internal or external Policies come and go as the enterprise evolves

8 We’ll start with a simpler problem Policy consistency

9 Policies must be mutually consistent in order to work together Inconsistency of policies can lead to inability to take a decision in a particular situation Or to the wrong decision being taken Research issues: How to check policy consistency How to maintain policy consistency

10 Approach Consistency is a logical problem Tools to perform ‘efficient’ consistency checking are becoming available Translate policies in logic formalism Use logic tools to check consistency: Model checkers Theorem provers Once an inconsistency has been identified, it must be reported to user to check if it is intended

11 Required: a formal model of the enterprise Of the organization structure Of all policies in an organization Not too much to ask? partial models can be sufficient in many cases

12 Results: 1. XACML case study XACML: A language to specify access control constraints to computing resources To files, equipment, web services … OASIS standard Some functionalities of XACML are present in SiteMinder, to which our approach may apply

13 Access Control Applications Access control is becoming very important in the presence of strict accessibility and privacy laws And the possibility of remote access via web services Example: in a hospital Statistician can access files for reading patient data, but not names Physician can access for read/write most info for her patients But not billing info Patient can read selected information on her record Accountant can only access accounting info Etc. etc.

14 A professor can perform any action on the file of the course she teaches Professor Example of XACML Rule

15 Checking Access Control Policies Policies can be translated in logic notation, and consistency checks can be run

16 Possible relationships between targets Disjunction Non-empty intersection Inclusion Equality Of: Subjects Resources Actions

17 Disjunction There is disjunction between targets if subjects, resources, and actions are all distinct Disjunction between the targets of two policy sets, policies, or rules means that there is no case in which both are applicable OK, then

18 Non-empty Intersection There is nonempty intersection between two targets if: The set of subjects intersect and The set of resources intersect and The set of actions intersect Example: (deny) (Executives) (databases A, B, C) (action read, write) (accept) (Employees) (database B, D) (action write) Executives, being employees, have conflicting write rights on B

19 How to fix? Non-empty intersections must be reported to user Indicate that some relationships may not have been thought out But the following are interesting special cases

20 Inclusion of target T1 in target T2 (special case of nonempty intersection) There is inclusion between two targets if: The set of subjects of T1 is included in the set of subjects of T2 and The set of resources of T1 is included in the set of resources of T2 and The set of actions of T1 is included in the set of actions of T2 Example: (accept) (executives) (database B) (action write) (deny) (employees) (database A,B,C) (any action)

21 Is there something to fix? The included case can be wanted as an exception but: Check that the exception is really wanted (accept) (executives) (database B) (action write) (deny) (employees) (database A,B,C) (any action)

22 Equality (special case of nonempty intersection) Subjects, target, action are all the same Almost certainly, an error

23 Proof of concept: 2. Firewall case study Contrary to XACML, where all rules must be considered, in firewalls rules are considered top-down, The first applicable rule is used, all the following ones are skipped So in principle inconsistencies are impossible, however if there are two rules that lead to different decisions, one of them may have been included by error Hence it is a safe strategy to look for inconsistencies among rules

24 Domain intersections, again As in the previous case, domain intersections are symptoms of possible errors, but the order is important

25 Shadowing A rule is preceded by a more general one with different outcome Refuse all packets from port 25 Accept all packets from port 25 but from domain CA (the second rule is ineffective)

26 How to fix Either take out the second rule, Or if the second rule is a desired exception, move it ahead

27 Generalization A rule is followed by a more general one but with a different outcome Accept all packets from port 25 and from domain CA Refuse all packets from port 25 (the first rule is an exception wrt to the first one) (it must be checked whether the exception is desired)

28 Is there something to fix? Check that the exception is really wanted

29 Other cases… There are other cases of nonempty intersection between the domains of applicability of two rules They should be detected and pointed out to user because they could be the result of user errors

30 User Interfaces for policy creation Ideally, policies should be created and modified directly by privacy specialists Often people with limited computing expertise These people should be able to Enter policies by clicking on boxes Or in English-like language Obtain diagnostics in clear Exercise different cases What will happen if Joe wants to write on file X? Need of appropriate GUIs

31 Decisions and user intentions Since systems can have many rules, the existence of different rules for the same cases indicates the possibility of user error Some user intention which is not properly represented

32 Difficulty of the detection problem In principle, the detection of inconsistencies is a constraint satisfaction problem Exponential complexity However the examples we have seen have few variables, thus problem is still tractable

33 Research tools to be considered Coq, a theorem-proving tool developed at INRIA Alloy, a model-checker developed at MIT Z-Eves, Canadian product, much used in research Constraint programming languages, e.g. Constraint Prolog Implementation in standard programming languages such as C is possible, but requires more work

34 Security agreements WS-Policy Framework and other related standards establish rules by which parties can agree on security rules for a transaction Each party will advertise own security policy wrt signatures, encryption, etc. Are the requirements of the various parties mutually consistent? Are the requirements of one a special case of the requirements of the other Are there ways that the requirements can be reconciled?

35 Privacy and secrecy models Main privacy/secrecy models known: Bell-LaPadula Chinese Wall RBAC Delegation models Can they be reconciled? Our work is showing that they can be combined together However conditions should be added in each case

36 E.g. effects of models on delegation Chinese Wall is being used A and B are in different domains So they cannot delegate to each other Bell-LaPadula is being used A can delegate to B if and only if A and B have equal clearance level B has higher clearance level than A These facts we can prove automatically by using our automated system They are for themselves fairly simple, however much more complex properties can also be proven.

37 Many applications These ideas are of very general application, not at all limited to the case studies we have mentioned E.g. in the case of identity management, we can have sets of policies that can be partially inconsistent

38 Conclusions Strict accessibility and privacy laws will require increasing attention to this area Security can be compromised by inappropriately formulated access control rules Formal methods will allow formal auditing and verification of accessibility and privacy policies, as precise as formal accounting of financial records! Tools to do this are available, but must be adapted