Verifying Security Policies using Host Attributes



Similar documents
About this talk: Keywords. Network Security Policy Stateful Firewalls Isabelle/HOL

Deterministic Discrete Modeling

Demonstrating topos: Theorem-Prover-Based Synthesis of Secure Network Configurations

Semantics-Preserving Simplification of Real-World Firewall Rule Sets

Information Flows and Covert Channels

Network Security Informik Version

Chapter 6: Episode discovery process

Bell & LaPadula Model Security Policy Bell & LaPadula Model Types of Access Permission Matrix

20% more formulas. Verified Firewall Ruleset Verification. Now with. with Isabelle/HOL. Cornelius Diekmann

Firewalls CSCI 454/554

Access Control Models Part I. Murat Kantarcioglu UT Dallas

Demonstrating topos: Theorem-Prover-Based Synthesis of Secure Network Configurations

Part III. Access Control Fundamentals

Computer security Lecture 3. Access control

CS 665: Computer System Security. Designing Trusted Operating Systems. Trusted? What Makes System Trusted. Information Assurance Module

Certifying the Security of Android Applications with Cassandra

How users bypass your security!

Instructions Android Smartphone & Tablet Page 1

Network Security. Chapter 3. Cornelius Diekmann. Version: October 21, Lehrstuhl für Netzarchitekturen und Netzdienste Institut für Informatik

Identity Management and Access Control

How to set up the HotSpot module with SmartConnect. Panda GateDefender 5.0

CS377: Database Systems Data Security and Privacy. Li Xiong Department of Mathematics and Computer Science Emory University

Research Paper Available online at: A COMPARATIVE STUDY OF CLOUD COMPUTING SERVICE PROVIDERS

CS346: Advanced Databases

1 P a g e. Lim Jun Yan, Undergraduate School of Information Systems Singapore Management University

HP ProtectTools Release Manager

Introduction to Dropbox. Jim Miller, LCITO Office Mobile

MaaS360 Mobile Enterprise Gateway

Certifying Spoofing-Protection of Firewalls

MaaS360 Mobile Enterprise Gateway

OMICS Group. Contact us at:

Instructions Microsoft Outlook Express Page 1

HP PROTECTTOOLS RELEASE MANAGER

The Ministry of Information & Communication Technology MICT

Reconciling multiple IPsec and firewall policies

Firewall Design: Consistency, Completeness, Compactness

rules in brief

Access Control Fundamentals

CSC 373: Algorithm Design and Analysis Lecture 16

Course: Information Security Management in e-governance. Day 1. Session 5: Securing Data and Operating systems

CONTROLLING DATA IN THE CLOUD: OUTSOURCING COMPUTATION WITHOUT OUTSOURCING CONTROL

Model-Based Quality Assurance of The SMB2 Protocol Documentation

Guardian Digital Secure Mail Suite Quick Start Guide

Understanding Android s Security Framework

Comfort without compromise

Rules in Brief. Every user has one or more roles the rules are partly different for e.g. the staff and the students

Configuring Security for SMTP Traffic

RE Think. IT & Business. Invent. IBM SmartCloud Security. Dr. Khaled Negm, SMIEEE, ACM Fellow IBM SW Global Competency Center Leader GCC

Privacy-Preserving Distributed Encrypted Data Storage and Retrieval

Acceptable Use Policy

ABET General Outcomes. Student Learning Outcomes for BS in Computing

Global Network Mobility RIPE 48

The Road from Software Testing to Theorem Proving

A Security Model for Military Message Systems: Retrospective

Lecture 10: CPA Encryption, MACs, Hash Functions. 2 Recap of last lecture - PRGs for one time pads

Access Control Intro, DAC and MAC. System Security

ACPT: Access Control Policy Tool

(67902) Topics in Theory and Complexity Nov 2, Lecture 7

Outline. EE 122: Interdomain Routing Protocol (BGP) BGP Routing. Internet is more complicated... Ion Stoica TAs: Junda Liu, DK Moon, David Zats

Summary of Last Lecture. Automated Reasoning. Outline of the Lecture. Definition. Example. Lemma non-redundant superposition inferences are liftable

A Static Analyzer for Large Safety-Critical Software. Considered Programs and Semantics. Automatic Program Verification by Abstract Interpretation

SPAZIO IT. Spazio IT Open Source & AVIONICs. Open Source & Avionics. December 2014

DAC vs. MAC. Most people familiar with discretionary access control (DAC)

Avion. apex AWARD BoardConnect: Run the future, not cables. Revolutionizing in-flight entertainment

Simulation-Based Security with Inexhaustible Interactive Turing Machines

Network Security - ISA 656 Intro to Firewalls

KEEPING UNSTRUCTURED DATA SECURE IN AN UNSTRUCTURED WORLD

Implementing Failover Capabilities in Red Hat Network Satellite

LESSON 13 VIRTUALIZATION AND CLOUD COMPUTING

Configuring CQ Security

Secure Web Access Solution

UNCLASSIFIED Version 1.0 May 2012

Automated Program Behavior Analysis

On strong fairness in UNITY

ON HOLD ANNOUNCER. Once you receive your audio announcer, check the packaging to ensure that all of the following items are enclosed:

Secure Client Applications

Analysis of an Electronic Boardroom Voting System

Getting Started Manual: Authors

Firewalls. Mahalingam Ramkumar

Corporate Data Quality Policy

IT TECHNOLOGY ACCESS POLICY

Acellus Lab Cart. User s Manual. Version 4B. Acellus Corporation Copyright 2010 Acellus Corporation. All Rights Reserved.

Translation Service Provider according to ISO 17100

VIA CONNECT PRO Deployment Guide

FileCloud Security FAQ

Inmarsat Aviation overview. Leo Mondale Managing Director, Inmarsat

Cloud definitions you've been pretending to understand. Jack Daniel, Reluctant CISSP, MVP Community Development Manager, Astaro

Cyber Threats, Trends, and Security Configurations. June 2, Shevaun Culmer-Reid, Program Manager

Lecture 1: Oracle Turing Machines

BEST WI-FI IN THE SKY

Dr. György Kálmán

A Case Study in Using ACL2 for Feature-Oriented Verification

The NIST Definition of Cloud Computing (Draft)

Evaluate the Usability of Security Audits in Electronic Commerce

Globalstar User Guide for Mac

Secure Frequently Asked Questions

Semantic Description of Distributed Business Processes

CSC2420 Fall 2012: Algorithm Design, Analysis and Theory

Customer Security Issues in Cloud Computing

Transcription:

Verifying Security Policies using Host Attributes 34 th IFIP International Conference on Formal Techniques for Distributed Objects, Components and Systems Cornelius Diekmann 1 Stephan-A. Posselt 1 Heiko Niedermayer 1 Holger Kinkelin 1 Oliver Hanka 2 Georg Carle 1 1 2 Airbus Group Innovations FORTE, 2014, Verifying Security Policies Using Host Attributes 1/21

Fakulta t fu r Informatik Technische Universita t Mu nchen Example: Aircraft Cabin Data Network google image search FORTE, 2014, Verifying Security Policies Using Host Attributes: Example & Demo 2/21

Example: Aircraft Cabin Data Network Policy CC IFEsrv SAT C1 C2 IFE1 IFE2 WiFi P1 P2 Policy Access Control Matrix Network Connectivity Structure FORTE, 2014, Verifying Security Policies Using Host Attributes: Example & Demo 3/21

Example: Security Invariants as Host Attributes Crew Entertain CC! IFEsrv INET SAT POD INET C1 C2 IFE1 IFE2 WiFi! crew entertain P1 POD P2 FORTE, 2014, Verifying Security Policies Using Host Attributes: Example & Demo 4/21

Example: Security Invariants as Host Attributes Crew Entertain CC! IFEsrv master INET SAT POD INET C1 C2 IFE1 slave IFE2 slave WiFi! crew entertain P1 POD P2 FORTE, 2014, Verifying Security Policies Using Host Attributes: Example & Demo 4/21

Example: Security Invariants as Host Attributes Crew Entertain CC secret! IFEsrv declassify master INET SAT POD INET C1 secret C2 secret IFE1 confid. slave IFE2 confid. slave WiFi! crew entertain P1 POD P2 FORTE, 2014, Verifying Security Policies Using Host Attributes: Example & Demo 4/21

Big Picture: Verification Demo Formal verification Executable, no need for hand-crafted proofs FORTE, 2014, Verifying Security Policies Using Host Attributes: Example & Demo 5/21

Big Picture: Debugging Demo add coffee machine, connect it to IFE1 [invalid] inv1 :... [invalid] inv2 :... [valid] inv3 :... IFE1 Aircraft-Entertain 1 DomainMember POD2 Aircraft-Entertain-POD SatGW POD1 Aircraft-Entertain-INET Aircraft-Entertain-POD IFE2 WifiAccess Crew2 Aircraft-Entertain Aircraft-Entertain-POD trust: 1 Aircraft-Crew 1 2 DomainMember coffee IFEsrv Aircraft-Entertain 0!trusted! SecurityGatewayIN Crew1 Aircraft-Crew 2 CabinCoreSrv Aircraft-Crew trust: 1 2 FORTE, 2014, Verifying Security Policies Using Host Attributes: Example & Demo 6/21

Big Picture: Invariant Feedback Demo CC secret! IFEsrv declassify master INET SAT C1 secret C2 secret IFE1 confid. slave IFE2 confid. slave WiFi! crew.aircraft entertain.aircraft P1 POD P2 FORTE, 2014, Verifying Security Policies Using Host Attributes: Example & Demo 7/21

This Talk policy = security invariants security invariants = policy It s all about the security invariants! Scenario-Specific Knowledge Security Invariant Host Attribute Mapping + Generic Invariant Formal HOL Semantics Security Policy Directed Graph G =(hosts, allowed flows) Firewalls, ACL, etc FORTE, 2014, Verifying Security Policies Using Host Attributes: This Talk 8/21

Definitions Policy G = (V, E) directed graph G = (V set) ((V V) set) Host mapping P: V Ψ total function maps a host to an attribute FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 9/21

Definitions Policy G = (V, E) directed graph G = (V set) ((V V) set) Host mapping P: V Ψ total function maps a host to an attribute Security invariant template m: m(g, (V Ψ)) Predicate (total, Boolean-valued function) first argument: security policy second argument: host attribute mapping m(g, P) G fulfills the invariant specified by m and P FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 9/21

Example Label-based information flow security: Bell LaPadula model Security clearances, i. e. host attributes Ψ = {unclassified, confidential, secret, topsecret} Invariant template, i. e. no read-up and no write-down: m ( (V, E), P ) (s, r) E. P(s) P(r) FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 10/21

Example Label-based information flow security: Bell LaPadula model Security clearances, i. e. host attributes Ψ = {unclassified, confidential, secret, topsecret} Invariant template, i. e. no read-up and no write-down: m ( (V, E), P ) (s, r) E. P(s) P(r) Scenario-specific knowledge P(db1 ) = confidential all other hosts are unclassified P = (λh. if h = db 1 then confidential else unclassified) m(g, P) db 1 does not leak confidential information there is no non-reflexive outgoing edge from db1 FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 10/21

Security Invariants cont. Security strategy Information Flow Strategy (IFS) confidentiality Access Control Strategy (ACS) integrity, controlled access m must be either IFS or ACS Monotonicity Prohibiting more does not harm security m((v, E), P) and E E then m((v, E ), P) Composition Composability and modularity enabled by design m1 (G, P 1 ) m k (G, P k ) FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 11/21

Offending Flows If a security invariant is violated m(g, P) Flows F E responsible for the violation set offending flows ( G, P ) is the set of all such minimal F FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 12/21

Offending Flows If a security invariant is violated m(g, P) Flows F E responsible for the violation set offending flows ( G, P ) is the set of all such minimal F i.e. the set of all minimal sets which violate m set offending flows ( G, P ) = { F E m ( G, P ) m ( (V, E \ F), P ) (s, r) F. m ( (V, (E \ F ) {(s, r)}), P )} FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 12/21

Offending Flows If a security invariant is violated m(g, P) Flows F E responsible for the violation set offending flows ( G, P ) is the set of all such minimal F Example: m is that v 1 must not access v 3 transitively v 2 v 2 v 2 v 1 v 3 v 1 v 3 v 1 v 3 G {(v 1, v 2 )} {(v 2, v 3 )} set offending flows ( G, P ) = { {(v 1, v 2 )}, {(v 2, v 3 )} } FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 12/21

Example: Offending Flows for the Bell LaPadula Model Recall: m ( (V, E), P ) (s, r) E. P(s) P(r) set offending flows ( G, P ) = {{ {(s, r) E P(s) > P(r)} } if m(g, P) if m(g, P) Uniquely defined Can be computed in linear time This holds for all similar-structured security invariants FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 13/21

Analysis: Offending Flows Do the offending flows always exist? Theorem 1. For m monotonic, let G deny-all = (V, ). If m(g, P) then m ( G deny-all, P ) set offending flows(g, P) A security violation can be fixed by tightening the policy iff the invariant holds for the deny-all policy FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 14/21

Example: Policy Construction G all = (V, V V ) G max = (V, V V \ set offending flows ( G all, P ) ) Iterate this over all m i Sound for arbitrary m Complete for m similar to Bell LaPadula Gmax is the uniquely defined maximum policy FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 15/21

Who is responsible for a violation? A violation either happens at the sender or the receiver ACS initiator provokes an access control restriction IFS leak only occurs when the information reaches the unintended receiver Definition. For F set offending flows(g, P) { { s (s, r) F} if ACS offenders(f ) = { r (s, r) F} if IFS FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 16/21

Auto Completion of Host Mappings P is a total function V Ψ User-specified incomplete host mapping: P C V Ψ Default value: Ψ { ψ if (v, ψ) P C P(v) = else FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 17/21

Auto Completion of Host Mappings P is a total function V Ψ User-specified incomplete host mapping: P C V Ψ Default value: Ψ { ψ if (v, ψ) P C P(v) = else What is a secure? Everything forbidden? Barely usable! can never solve an existing security violation must never mask potential security risks! FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 17/21

Secure Auto Completion of Host Mappings Replacing the host attribute of any offenders by must guarantee that no security-relevant information is masked. Definition. is a secure default attribute if G P. F set offending flows ( G, P ). v offenders(f). m ( G, P v ) Secure and permissive = everything forbidden, security proof easy can be more permissive, e.g., Bell LaPadula = unclassified hosts can freely interact P C = (db 1, confidential) Security invariant for complete network restrictions only for interactions with db 1 FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 18/21

Example m(g, P) New host x P(x) = (P is not updated) Magic oracle P oracle (x) = ψ x is an attacker m(g, P oracle ) Is the security violation exposed without the oracle? If m(g, P oracle ) then m(g, P x ) Hence m(g, P) The security violation is never masked! FORTE, 2014, Verifying Security Policies Using Host Attributes: Formalization 19/21

Conclusion Monotonic Security Invariants Verify policy Fix security violations Construct policy Construct easily and end-user-friendly Fully machine-verified with Isabelle/HOL https://github.com/diekmann/topos = λ β Isabelle α FORTE, 2014, Verifying Security Policies Using Host Attributes: Conclusion 20/21

Thanks for your attention! Questions? FORTE, 2014, Verifying Security Policies Using Host Attributes: Thank You! 21/21

Backup Slides FORTE, 2014, Verifying Security Policies Using Host Attributes: Appendix 21/21

Example: Aircraft Cabin Data Network CC The Cabin Core Server (essential aircraft features). air conditioning, crew telecommunication... C1, C2 Two crew mobile devices. identify passenger calls, make announcements... IFEsrv The In-Flight Entertainment server. movies, Internet... IFE1, IFE2 Two In-Flight entertainment displays (thin client). Mounted at the back of seats Movies and Internet... Wifi A wifi hotspot. Internet access for passengers owned devices Sat A satellite uplink to the Internet. P1, P2 Two passenger owned devices. laptops, smartphones... FORTE, 2014, Verifying Security Policies Using Host Attributes: Appendix 21/21

Example: Security Invariants Invariant 1: Domain Hierarchy Different protection domains Devices may send to their own (sub-)domains entertain aircraft crew Trust level are available INET POD Invariant 2: Security Gateway Slave devices are bound to a master Master controls all communication to/between them. IFE displays (thin clients) are strictly bound to IFEsrv Invariant 3: Bell LaPadula Information flow restrictions secret crew communication confidential (< secret) passenger communication (privacy) FORTE, 2014, Verifying Security Policies Using Host Attributes: Appendix 21/21

Stateful Implementation C2 P2 C1 P1 IFE2 IFE1 CC Wifi IFEsrv SAT Cornelius Diekmann, Lars Hupel, and Georg Carle. Directed Security Policies: A Stateful Network Implementation. In ESSS, Singapore, May 2014. FORTE, 2014, Verifying Security Policies Using Host Attributes: Appendix 21/21

Bell LaPadula with Trust Prevent information leakage P(v).sc is v s security clearance P(v).trust m ( (V, E), P ) (s, r) E. { True P(s).sc P(r).sc if P(r).trust otherwise FORTE, 2014, Verifying Security Policies Using Host Attributes: Appendix 21/21

Domain Hierarchy Hierarchical structures Ψ = fully qualified domain names {a.b.c, b.c, c,...} is below or at the same hierarchy level a.b.c a.b.c a.b.c b.c a.b.c c Trust: Act as if were in higher hierarchy position Trust 1 = one position higher chop(a.b.c, 1) = a.c m ( (V, E), P ) (s, r) E. P(r).level chop ( P(s).level, P(s).trust ) FORTE, 2014, Verifying Security Policies Using Host Attributes: Appendix 21/21

Security Gateway Approve intra-domain communication between domain members by a central instance (security gateway) m ( (V, E), P ) (s, r) E, s r. table ( P(s), P(r) ) snd rcv rslt explanation sgw * Can send to the world. sgwa * memb sgw Can contact its security gateway. memb sgwa memb memb Must not communicate directly. May communicate via sgw(a). memb default No restrictions for direct access to outside world. Outgoing accesses are not within the invariant s scope. default sgw Not accessible from outside. default sgwa Accessible from outside. default memb Protected from outside world. default default No restrictions. FORTE, 2014, Verifying Security Policies Using Host Attributes: Appendix 21/21