Compliance Monitoring of Third-Party Applications in Online Social Networks

Similar documents
Orifice Flow Meter

Data Warehouse Risk Assessment (GDPR)

LBI Public Information. Please consider the impact to the environment before printing this.

The West End Community Trust Privacy Policy

ISO27018 a step toward cloud standardisation? GuidelinesCambria

1 Privacy Statement INDEX

Cloud Computing Briefing Presentation. DANU

1.2 This Privacy Policy applies to the games provided by GAMESTURE sp. z o. o. (GAMESTURE, We, Our company)

HYPERFAST BROADBAND. Acceptable Usage Policy (GCAUP)

Representation-Independent Data Usage Control

Public Sector Cloud Service Adoption: The Nigerian Case

Security as a Architectural Concern, Chrome Arch, and NFP Measurement Reid Holmes

Module 5: Performance Issues in Shared Memory and Introduction to Coherence Lecture 9: Performance Issues in Shared Memory. The Lecture Contains:

ETSY.COM - PRIVACY POLICY

The Virtualisation Security Journey: Beyond Endpoint Security with VMware and Symantec

Formal Methods in Software Engineering. Lecture 07

Cloud Transformation: Data center usage models driving Cloud computing innovation. Jake Smith, Advanced Server Technologies Data Center Group Intel

IsoStack Highly Efficient Network Processing on Dedicated Cores

It applies to personal information for individuals that are external to us such as donors, clients and suppliers (you, your).

SCONE: Secure Linux Container Environments with Intel SGX

How the European Commission is supporting innovation in mobile health technologies Nordic Mobile Healthcare Technology Congress 2015

Mobile Application Privacy Policy

etouches, Inc. Privacy Policy

When we refer to Toyota, we mean Toyota Motor Sales, USA, Inc. and its affiliated entities.

Privacy Policy. Last Updated: August 2017

Islam21c.com Data Protection and Privacy Policy

Privacy Code of Conduct on mhealth apps the role of soft-law in enhancing trust ehealth Week 2016

A Haskell and Information Flow Control Approach to Safe Execution of Untrusted Web Applications

Architecture Assessment Case Study. Single Sign on Approach Document PROBLEM: Technology for a Changing World

Privacy Policy. I. How your information is used. Registration and account information. March 3,

CIAM: Need for Identity Governance & Assurance. Yash Prakash VP of Products

Separating Access Control Policy, Enforcement, and Functionality in Extensible Systems. Robert Grimm University of Washington

A Tutorial on Runtime Verification and Assurance. Ankush Desai EECS 219C

TABLE OF CONTENTS. Page

ADMA Briefing Summary March

Understanding the Platform

Widget security model based on MIDP and Web Application based on a security model with TLS/SSL and XMLDsig

Privacy hacking & Data Theft

Sample BYOD Policy. Copyright 2015, PWW Media, Inc. All Rights Reserved. Duplication, Reproduction or Distribution by Any Means Prohibited.

Privacy-Preserving Photo Sharing based on Secure JPEG

Fundamental Concepts and Models

Privacy Policy. Personal Data collected for the following purposes and using the following services:

Website Privacy Policy

Eagles Charitable Foundation Privacy Policy

Microsoft. MS-101 EXAM Microsoft 365 Mobility and Security. m/ Product: Demo File

An Access Control Model for Collaborative Management of Shared Data in OSNS

You can find a brief summary of this Privacy Policy in the chart below.

Using Positive Tainting and Syntax-Aware Evaluation to Counter SQL Injection Attacks

FACTS WHAT DOES FARMERS STATE BANK DO WITH YOUR PERSONAL INFORMATION? WHY? WHAT? HOW? L QUESTIONS?

Managing SaaS risks for cloud customers

Data Protection and Privacy Policy PORTOBAY GROUP Version I

Website and Marketing Privacy Policy

Beyond BYOD Mobility, Cloud and the Internet of Everything

Implicit BPM Business Process Platform for Transparent Workflow Weaving

Data Subject Access Request Procedure. Page 1 KubeNet Data Subject Access Request Procedure KN-SOP

ALGORITHMIC TRADING AND ORDER ROUTING SERVICES POLICY

POLICY ON ALGORITHMIC TRADING AND ORDER ROUTING SERVICES

When and what information does Kantar Worldpanel collect?

SOFTWARE PLATFORM INFRASTRUCTURE. as a Service. as a Service. as a Service. Empower Users. Develop Apps. Manage Machines

Leveraging the Cloud for Law Enforcement. Richard A. Falkenrath, PhD Principal, The Chertoff Group

#mytweet via Instagram: Exploring User Behaviour Across Multiple Social Networks

ecare Vault, Inc. Privacy Policy

VMware Hybrid Cloud Solution

PRIVACY POLICY GUESTS WEB OR CONTACTS. The Privacy Policy is part of that govern this Website.

Data Protection Policy

Date Approved: Board of Directors on 7 July 2016

Introduction To Cloud Computing

General Data Protection Regulation BT s amendments to the proposed Regulation on the protection of individuals with regard to the processing of

Privacy Policy V2.0.1

Plus500UK Limited. Website and Platform Privacy Policy

Regulating Telemedicine: the

<Document Title> INFORMATION SECURITY POLICY

INFS 214: Introduction to Computing

Experiences with. data for use in apps

At Sound United, we re committed to protecting and respecting your privacy.

Abstract. The Challenges. ESG Lab Review InterSystems IRIS Data Platform: A Unified, Efficient Data Platform for Fast Business Insight

IBM Bluemix platform as a service (PaaS)

SDMS Assessor Web Portal User Manual PMKVY2.0

Cyberpeace A Guide to. Social Networking And Privacy Settings

Verified Volunteers. A division of Sterling Talent Solutions. Privacy Policy. Last Updated: June 21, 2016

MySQL CLOUD SERVICE. Propel Innovation and Time-to-Market

Privacy Statement for DROP Connect Products and Services

Ensuring β-availability in P2P Social Networks

BYOD Business year of decision!

Making Smart Use of Geo-location Data

Distributed and Cloud Computing

Streaming as a pattern. Peter Mattson, Richard Lethin Reservoir Labs

Distributed File System Support for Virtual Machines in Grid Computing

Social Engineering Hacking the Human Element

SegSlice: new primitives for trustworthy computing

Planning and Administering SharePoint 2016

OneKey Mobile App USER GUIDE

Cloud-Security: Show-Stopper or Enabling Technology?

Planning an architecture for the. Internet of Things. IoT Expo, Nov 5, Sumit Sharma Director, API Solutions.

ACCOUNTING TECHNICIANS IRELAND DATA PROTECTION POLICY GENERAL DATA PROTECTION REGULATION

The Software Driven Datacenter

IEEE 2013 JAVA PROJECTS Contact No: KNOWLEDGE AND DATA ENGINEERING

Data Protection Modernization: Meeting the Challenges of a Changing IT Landscape

The Ladder to AI. Rob Thomas General Manager, IBM

Privacy Statement Tai Ceredigion Cyf Site Privacy Statement

Transcription:

Compliance Monitoring of Third-Party Applications in Online Social Networks Florian Kelbert, Imperial College London Alexander Fromm, Technical University of Munich

Problem

Problem How to ensure that data is used in correspondence with policies?

Problem How to ensure that data is used in correspondence with policies?

Problem How to ensure that data is used in correspondence with policies?

Problem How to ensure that data is used in correspondence with policies?

Problem How to ensure that data is used in correspondence with policies?

Problem How to ensure that data is used in correspondence with policies? You may cache the content for up to 24 hours

Problem How to ensure that data is used in correspondence with policies? You may cache the content for up to 24 hours Only use friend data in the person s experience in your app

Problem How to ensure that data is used in correspondence with policies? You may cache the content for up to 24 hours Only use friend data in the person s experience in your app You may not disclose confidential information to a third party without the prior explicit consent of Tumblr.

To start with...

To start with... Social Networks are trusted

To start with... Social Networks are trusted

To start with... Social Networks are trusted Third Party Applications are not

To start with... Social Networks are trusted Third Party Applications are not Thousands of apps and developers

Overview

Overview User Data OSN Operator (trusted)

Overview User Data OSN Operator (trusted)

Overview User Data 1. Policy Provisioning Policy Database OSN Operator (trusted)

Overview Applications (untrusted) User Data 1. Policy Provisioning Policy Database OSN Operator (trusted)

Overview Applications (untrusted) PaaS / SEE (trusted) User Data 1. Policy Provisioning Policy Database PaaS Provider (trusted) OSN Operator (trusted)

Overview Applications (untrusted) User Data Libraries PaaS / SEE (trusted) 1. Policy Provisioning Policy Database PaaS Provider (trusted) OSN Operator (trusted)

Overview Applications (untrusted) Libraries User Data Monitor PaaS / SEE (trusted) 1. Policy Provisioning Policy Database PaaS Provider (trusted) OSN Operator (trusted)

Overview Applications (untrusted) 2. Request Libraries User Data Monitor PaaS / SEE (trusted) 1. Policy Provisioning Policy Database PaaS Provider (trusted) OSN Operator (trusted)

Overview Applications (untrusted) User Data 2. Request Libraries Monitor 1. Policy Provisioning PaaS / SEE (trusted) 3. Request Policy Database Coordinator PaaS Provider (trusted) OSN Operator (trusted)

Overview Applications (untrusted) User Data 2. Request Libraries Monitor 1. Policy Provisioning PaaS / SEE (trusted) 3. Request 4. getpolicies Policy Database Coordinator PaaS Provider (trusted) OSN Operator (trusted)

Overview Applications (untrusted) User Data 2. Request Libraries Monitor 1. Policy Provisioning PaaS / SEE (trusted) 3. Request 4. getpolicies 5. Policies Policy Database Coordinator PaaS Provider (trusted) OSN Operator (trusted)

Overview Applications (untrusted) User Data 2. Request Libraries Monitor 1. Policy Provisioning PaaS / SEE (trusted) 3. Request 4. getpolicies 5. Policies Decision Engine PaaS Provider (trusted) Policy Database Coordinator OSN Operator (trusted)

Overview Applications (untrusted) User Data 2. Request Libraries Monitor 1. Policy Provisioning PaaS / SEE (trusted) 3. Request 4. getpolicies 5. Policies Decision Engine PaaS Provider (trusted) 6. deploypolicy Policy Database Coordinator OSN Operator (trusted)

Overview 7. Request Applications (untrusted) User Data 2. Request Libraries Monitor 1. Policy Provisioning PaaS / SEE (trusted) 3. Request 4. getpolicies 5. Policies Decision Engine PaaS Provider (trusted) 6. deploypolicy Policy Database Coordinator OSN Operator (trusted)

Overview 7. Request 8. Response Applications (untrusted) User Data 2. Request Libraries Monitor 1. Policy Provisioning PaaS / SEE (trusted) 3. Request 4. getpolicies 5. Policies Decision Engine PaaS Provider (trusted) 6. deploypolicy Policy Database Coordinator OSN Operator (trusted)

Overview 7. Request 8. Response Applications (untrusted) User Data 2. Request Libraries Monitor 1. Policy Provisioning PaaS / SEE (trusted) 3. Request 4. getpolicies 9. Response 5. Policies Decision Engine PaaS Provider (trusted) 6. deploypolicy Policy Database Coordinator OSN Operator (trusted)

Overview 7. Request 8. Response Applications (untrusted) User Data 10. Response 2. Request Libraries Monitor 1. Policy Provisioning PaaS / SEE (trusted) 3. Request 4. getpolicies 9. Response 5. Policies Decision Engine PaaS Provider (trusted) 6. deploypolicy Policy Database Coordinator OSN Operator (trusted)

Overview 7. Request 8. Response Applications (untrusted) User Data Continuous policy evaluation 10. Response 2. Request Libraries Monitor 1. Policy Provisioning PaaS / SEE (trusted) 3. Request 4. getpolicies 9. Response 5. Policies Decision Engine PaaS Provider (trusted) 6. deploypolicy Policy Database Coordinator OSN Operator (trusted)

Some details follow...

Some details follow... Policy Provisioning

Some details follow... Policy Provisioning

Some details follow... Policy Provisioning

Policy Provisioning

Policy Provisioning If you cache data you receive from us, [... ] keep it up to date

Policy Provisioning If you cache data you receive from us, [... ] keep it up to date

Policy Provisioning If you cache data you receive from us, [... ] keep it up to date Whenever some data is processed by the application, then it must have been received from the OSN within the last 24 hours

Policy Provisioning If you cache data you receive from us, [... ] keep it up to date Whenever some data is processed by the application, then it must have been received from the OSN within the last 24 hours

Policy Provisioning If you cache data you receive from us, [... ] keep it up to date Whenever some data is processed by the application, then it must have been received from the OSN within the last 24 hours Event: Condition: Action:

Policy Provisioning If you cache data you receive from us, [... ] keep it up to date Whenever some data is processed by the application, then it must have been received from the OSN within the last 24 hours Event: Condition: Action: process(data)

Policy Provisioning If you cache data you receive from us, [... ] keep it up to date Whenever some data is processed by the application, then it must have been received from the OSN within the last 24 hours Event: process(data) Condition: Action: <inhibit>

Policy Provisioning If you cache data you receive from us, [... ] keep it up to date Whenever some data is processed by the application, then it must have been received from the OSN within the last 24 hours Event: process(data) Condition: not(repmin(24[hours], 1, receive(data))) Action: <inhibit>

Policy Provisioning If you cache data you receive from us, [... ] keep it up to date Whenever some data is processed by the application, then it must have been received from the OSN within the last 24 hours Event: process(data) Condition: not(repmin(24[hours], 1, receive(data))) Action: <inhibit> Complex LTL formulas: propositional temporal cardinal spatial constraints

Policy Provisioning If you cache data you receive from us, [... ] keep it up to date Whenever some data is processed by the application, then it must have been received from the OSN within the last 24 hours Event: process(data) Condition: not(repmin(24[hours], 1, receive(data))) Action: <inhibit> Complex LTL formulas: propositional temporal cardinal spatial constraints

Some details follow... Policy Provisioning Application Deployment

Some details follow... Policy Provisioning Application Deployment

Some details follow... Policy Provisioning Application Deployment

Application Deployment

Application Deployment Analysis of binary app to find

Application Deployment Analysis of binary app to find Data sources e.g., retrieve from OSN

Application Deployment Analysis of binary app to find Data sources e.g., retrieve from OSN Data sinks e.g., data usage/sharing

Application Deployment Analysis of binary app to find Data sources e.g., retrieve from OSN Data sinks e.g., data usage/sharing Dependencies between them

Application Deployment Analysis of binary app to find Data sources e.g., retrieve from OSN Data sinks e.g., data usage/sharing Dependencies between them Instrumentation of sources and sinks for

Application Deployment Analysis of binary app to find Data sources e.g., retrieve from OSN Data sinks e.g., data usage/sharing Dependencies between them Instrumentation of sources and sinks for Data flow tracking Policy decisions

Some details follow... Policy Provisioning Application Deployment Event signaling for data flow tracking policy decisions

Event Signaling

Event Signaling Signal invocations of data sources data sinks

Event Signaling Signal invocations of data sources data sinks to decision engine:

Event Signaling Signal invocations of data sources data sinks to decision engine: Is data read from source? Is data written to sink?

Event Signaling Signal invocations of data sources data sinks to decision engine: Is data read from source? Is data written to sink? } i.e., does event of ECA rule match? Event: Condition: Action: process(data) not(repmin(24[hours], 1, receive(data))) <inhibit>

Event Signaling Signal invocations of data sources data sinks to decision engine: Is data read from source? Is data written to sink? } i.e., does event of ECA rule match? If Yes: Evaluate condition Event: Condition: Action: process(data) not(repmin(24[hours], 1, receive(data))) <inhibit>

Event Signaling Signal invocations of data sources data sinks to decision engine: Is data read from source? Is data written to sink? } i.e., does event of ECA rule match? If Yes: Evaluate condition If True: Apply action Event: Condition: Action: process(data) not(repmin(24[hours], 1, receive(data))) <inhibit>

Event Signaling Signal invocations of data sources data sinks to decision engine: Is data read from source? Is data written to sink? } i.e., does event of ECA rule match? If Yes: Evaluate condition If True: Apply action Event: Condition: Action: process(data) not(repmin(24[hours], 1, receive(data))) <inhibit>

Overview 7. Request 8. Response Applications (untrusted) User Data Continuous policy evaluation 10. Response 2. Request Libraries Monitor 1. Policy Provisioning PaaS / SEE (trusted) 3. Request 4. getpolicies 9. Response 5. Policies Decision Engine PaaS Provider (trusted) 6. deploypolicy Policy Database Coordinator OSN Operator (trusted)

Evaluation

Evaluation Between 15% and 41% performance overhead

Evaluation Between 15% and 41% performance overhead Depends much on the application and policy

Evaluation Between 15% and 41% performance overhead Depends much on the application and policy Problem: Real-world apps are not available

Summary

Summary Protection from data misuse is possible

Summary Protection from data misuse is possible Critical requirements

Summary Protection from data misuse is possible Critical requirements User awareness

Summary Protection from data misuse is possible Critical requirements User awareness Transparency for all involved parties

Summary Protection from data misuse is possible Critical requirements User awareness Transparency for all involved parties