Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in...

64
Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin Olivier (S- Africa) Ehud Gudes (Israel), Andrea Junk, Wouter

Transcript of Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in...

Page 1: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Security and Privacy in Cyberspace

Reind van de Riet

Dept of Computer Science

Vrije Universiteit in Amsterdam

with:Radu Serban (VU), Hans Burg,

Martin Olivier (S-Africa)Ehud Gudes (Israel), Andrea Junk, Wouter Janssen (Deloitte&Touche) Wouter Teepe (Un. of Groningen)

Page 2: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.
Page 3: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Contents

• Introduction

• 1. Cyberspace inhabited by Alter Egos

• 2. S&P and Work Flow

• 3. Architectural issues: S&P in Mokum versus S&P in ERP

Page 4: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Introduction

• Treatment on high application level

• For technicalities on Crypto-techniques: with symmetric and asymmetric keys see standard books: Denning&Denning: Internet besieged

Page 5: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Garfinkel&Spafford: Web Security & Commerce

Page 6: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Or Conference Proceedings

• WG11.3 S&P in Database Applications in …., Schoorl, ...

Page 7: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

I Cyberspace inhabited by Alter Egos

• Cyberspace = Space filled with objects• some passive (structured information); • some active (agents), with information and able to

communicate;• Alter-egos belong to human beings (individuals) and

represent them in Cyberspace; give and protect (private) information about the individual and get information (from other objects)

• Alter-ego = (information reachable by SSN) + email-address/URL of individual

Page 8: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

The Mokum Approach

• Simulation in the form of Mokum program

• Objects have – type: attributes: private, public;states;– script: triggers for receiving and sending messages like

FSAs or STDs

• inheritance of properties (hierarchy)

• Security is based on two principles:– epistemological (compile-time) principle– ontological (run-time) principle

Page 9: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Epistemological = Structural based on is-a inheritance and keeper-of relations

‘salary’ can be seen by employee and by account-manager; not by person, student, customer

‘account’ can be seen by customer and by account-manager, because of “coll_of customer”

typ e s tu d en th as -a fie ld

typ e accou n t-m an ag erh as -a C u s tom ers : co ll_ o f cu s tom er

typ e em p loyeep riva te

h as -a sa la ry

typ e cu s tom erp riva te

h as -a accou n t

typ e p erson h as -a n am eh as -a ad d ress

h as -a fa th er: p erson

Page 10: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Ontological principle

• Each account manager has his own collection of customers and can only access the accounts of these customers

• An employee can access his own salary; not the salary of his father, although the epistemological rule allows:

“salary of father of me”

Page 11: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.
Page 12: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Simulation in Mokum

Page 13: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

An Advanced Application• Another bank brach is introduced• Individual has accounts in both branches• likes to transfer money from one account in the

other• needs additional authentication of user• one site has had security problems: needs logging• transfer needs extra authorization from senior

bank employee

Page 14: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Script for Advanced Application

Page 15: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Implementation in the Large• How to distribute the Mokum system?• System is supposed to consist of three layers:

– Physical site layer– Logical object layer– Application Layer

• Problems:– objects may consist of sub-objects in different sites– values of attributes may be at different sites

Page 16: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.
Page 17: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Proposal

• Add to each type a keeper object type, responsible for checking messages sent and received; knowledge for this keeper is derived from:– application source– site source– policy source

• Use CORBA for interfacing the Mokum systems

Page 18: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Conclusion on I:Cyberspace inhabited by

Alter-egos

• An architecture of the world of Alter-egos in Cyberspace has been set up;

• Security & Privacy questions can be studied;

• Simulations can be carried out in the Mokum system.

Page 19: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

II S&P and Work Flow

• Modelling Alter-egos in Cyberspace using a Work Flow Management Tool: who takes care of S&P? (WebNet 97)

• Example: WorkFlow specification for dealing with thousands of claims in an Insurance Company

• Derive access rules from WF spec

• Investigate illegal access to private information

Page 20: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

A verbal specification:

Page 21: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Data structures involved

• Submitter SU

• Approver AP

• Expert EX

• Cashier CA

• Travel Agent TA

• Claim CL

• Trip TR;incident IN; amount AM

Page 22: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.
Page 23: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Work Flow Specification as a Color-X diagram

• Color-X developed by Hans Burg and is based on:– CPL (Frank Dignum) based on FG (Simon Dik)

(Hans Weigand)– linguistic tools: WordNet (++)– FSA’s for more than one objects

• Modalities:– NEC: a specification for the system– MUST: a specification for an external entity

Page 24: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.
Page 25: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.
Page 26: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Deriving Security rules from the WFD

• There are databases:– IC-claimDB for the claim information– TA-tripDB for the trip information– oblDB for the obligations

• Authorization database with authorization tuples; e.g.– AUTH<IC-claimDB,approver,create,allowed>

Page 27: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

AUTH<IC_claimDB,approver,create,

allowed>

Page 28: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

AUTH<oblDB,approver,shift,allowed> AUTH<oblDB,travel-agent,shift,not

allowed>

Page 29: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

AUTH<claimDB,cashier,read:amount,allowed>

Page 30: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Advantages

• Access automatically computed (no errors)

• Access only when necessary (need to know)

• Access just in time

• Checking privacy rules is possible (paper in WG11.3 Schoorl)– has every agent enough information?– Can agents conspire to get more information

than allowed by privacy rules?

Page 31: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Checking Workflow on maintenance of Privacy Rules

• Can someone/agent get information about an individual to which he is not authorized?

• Assuming that the Workflow defines correctly what the agents may/must know.

• But they can conspire using the send-message mechanism (possibly covertly)

• Two examples:

Page 32: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

1. Travel Agent TA cannot see the age of the submitter SU, but can ask Approver AP, who knows SU and SU.age.

Page 33: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

2. Cashier CA can only see the bank of SU, but, conspiring with AP, may know SU’s name.

Page 34: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.
Page 35: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Conclusion on II:S&P and Work Flow

• For two applications it has been shown that Workflow diagrams can be profitably used to analyse:

• giving and removing access rights just on time and only when needed;

• conspiration of agents/workers to get private information of an individual.

Page 36: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

III Architectural issues: S&P in Mokum versus S&P in ERP

• Example: Hospital + Insurance Company• How to implement in Mokum• How to implement in an ERP system (SAP)• Comparison wrt complexity of dealing with

access control with privacy rules • Conclusion: the structure-based architecture

in Mokum is far superior to the certificate-based architecture of ERP

Page 37: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

The Hospital (H)-Insurance Company (IC) example

• Hospital has – medical staff (doctors and nurses) and– administrative staff

• Patients are persons with a medical record, only accessable by their own doctors

• A nurse of a patient is not allowed to access patient’s medical record, unless patient’s doctor is absent and patient is in an emergency

Page 38: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

H-IC example continued

• Employee HA of H in the administrative department of H has access to the financial record of the patients.

• IC has a claim department with employee CE and communicates with HA about the financial records, who is allowed to answer.

Page 39: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Test Queries

• 1. Nurse wants to see medical record.

• 2. CE sends message to HA asking about financial status of patient.

• 3. CE wants to see a medical record of a patient and pretends to be a nurse and sends a request to the doctor of that patient.

Page 40: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.
Page 41: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Notation

• +: public attribute

• -: private attribute

• k_o: keeper of collection

• Following collections/databases to protect– financial patients– medical patients– clients (policies)

Page 42: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.
Page 43: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.
Page 44: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Access protection in Mokum

• In the script part of a type definition, the following attribute-names are allowed:– public attributes of any type– private attributes defined in this type, including

inherited attributes– private attributes of objects in the collections of

which this object is the keeper

Page 45: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Visiblity is defined by the following Prolog rules:

• vis(A,T):- is_a_attr(A),is_a_type(T), not private(A).

• vis(A,T:- is_a_attr(A),is_a_type(T), private(A),([1]attr(T,A,_);(attr(T,_,[3][coll,S]); [2]is_a(T,S)), vis(A,S)).

Page 46: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

• Visibility:• ?- vis(medical_record,T).

– T = doctor;– T = medical_patient;

• Test Query 1,2: “medical_record” not allowed in script of nurse; same for claim_employee

• ?-vis(financial_record, T).– T = h_administrator;– T = financial_patient;

• Test Query 3: “financial_record” not allowed in script of claim_employee

Page 47: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Ontological Principle (run-time check)

• Example: Doctors can acces only their own patientstherefore the following Prolog rule:[CO = Calling Object; O = Object, A= Attribute]

• acc(CO,O,A):- has_attr(O,A), not private(A).

• acc(CO,O,A):- has_attr(O,A), has_type(CO,T),pivate(A), vis(A),(CO=O; keeper(CO,O)).

Page 48: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Parts of scripts

Page 49: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.
Page 50: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Test Queries are OK, but for #3• Claim employee pretends to be a nurse by

performing: add_type(me, nurse) and sending the doctor of patient P a message:

• D from doctor of P,send(D, nurse_asks_for_medical_record, message)

• Indeed, nurses have to be put in a collection, protected by some boss and the script of doctor has to be changed!!

Page 51: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Certificate driven S&P systems, such as ERP

• An ERP system integrates personnel information with company information: patients, medical, financial, etc.

• Personnel has roles, to which tasks with access rights are attached: (RBAC=Role-Based-Access-Control) in the form of certificates.

• When a person P wants to perform operation F on a piece of data D, it is checked whether he has certificates for the combination (F, D).

Page 52: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Stages using certificates

• 1. Definition of certificate class;

• 2. Creation of certificates;

• 3. Assigning them to roles, persons;

• 4. Building in of checks for certificates in Application Programs;

• 5. Checking presence of certificates.

Page 53: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Stage 1. Definition of certificate classes;• For nurses:• class auth_obj_nurse

– fctn: read– data: medical_records– key: patient_id– sel: patient_id.state = emergency and not present(patient_id.doctor)

Page 54: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Stage 1. Continuation

• For doctors:• class auth_obj_doctor

– fctn: read and write– data: medical_records– key: patient_id– sel: patient_id.doctor = <USER_ID>

Page 55: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Stage 1. Continuation: Creation of a specific certificate class;

• Class auth_obj_doctor_ophthsubclass_of_auth_obj_doctor– sel: patient_id.disease = ophthalmia

Page 56: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Stage 2. Creation of certificates using the certificate classes;

• Make instance of auth_obj_nursee.g. auth_obj_nurse_25

• Make instance of auth_obj_doctor_ophth e.g. auth_obj_doctor_ophth_17

Page 57: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Stage 3. Assigning them to roles and persons

• Put auth_obj_nurse_25 in the list of certificates of the role “nurse” .

• Assign this role to nurse Florence Nightingale

• Put auth_obj_doctor_ophth_17 in the list of certificates of ophthalmologist Johnson

Page 58: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Stage 4. Building in of checks in Application Programs

• In all application programs accessing databases, checks have to be inserted to be sure that the user of that program is entitled to use them on particular pieces of data.

• For example: require(auth_obj_nurse_25, medical_records)or require(auth_obj_doctor_ophth_17,medical_records)

Page 59: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Stage 5: Checking the presence of a certificate

• Nurse N wants access medical status of P(read,medical_records,P)

• Application Program then executes an equivalent of:SELECT patient’s_statusFROM medical_recordsWHERE patient_id = P AND patient_id.state = emergency AND NOT present(patient_id.doctor)

Page 60: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Stage 5: Continuation

• Doctor D requests medical record of Patient P: (read, medical_records, P)

• Application Program then executes an equivalent of:SELECT patient’s_anamnesisFROM medical_recordsWHERE patient_id = P AND patient_id.doctor = D AND patient_id.disease = ophthalmia

Page 61: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Global Access Control• Insurance Company IC with employee CE wants

access to financial record of patient P in the hospital. In the hospital an object VCE is created as a virtual employee, with appropriate authentication class:

class auth_obj_CE– fctn: read– data: financial_records– key: patient_id– sel: patient_id.insurance_company = IC

Page 62: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Comparison of Structure-based versus certificate-based Access Control

for a typical practical situation (numbers from Deloitte&Touche)

1.Definition certificate classes 600 in SAP R/3 no2.Making Certificates 50 = # roles and persons no3.Assigning certificates 50 same as 2. no4.Defining checks in Aps 200 objects * 20 operations only as exceptions in triggers5.Checking at run time each access checking membership of collections -1.Defining collections no same as in 2. -2. Adding to collections no all patients in 50 collections

Page 63: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

Conclusion on III:Architectural issues: S&P in Mokum

versus S&P in ERP• Structure-based approach much superior to certificate-based approach of access control.

• Structure-based: can be proven correct by running a simple Prolog program.

• Specific privacy rules are translated in scripts in Mokum; in authentication classes with special selection criteria.

• Global access is no problem; so the above is also valid in CyberSpace!!

Page 64: Security and Privacy in Cyberspace Reind van de Riet Dept of Computer Science Vrije Universiteit in Amsterdam with: Radu Serban (VU), Hans Burg, Martin.

THANK YOU