information security & privacy

92
1 Information Security & Privacy HIM-1460 CLINICAL EDUCATION 2 James Joshi Associate Professor, SIS May 21, 2010

Upload: hija

Post on 19-Jan-2016

31 views

Category:

Documents


0 download

DESCRIPTION

Information Security & Privacy. HIM-1460 CLINICAL EDUCATION 2 James Joshi Associate Professor, SIS May 21, 2010. Topics overview. Security basics Secure design principles Access control model overview Overview of cryptography and Network security Privacy - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Information Security & Privacy

1

Information Security & Privacy

HIM-1460 CLINICAL EDUCATION 2

James JoshiAssociate Professor, SIS

May 21, 2010

Page 2: Information Security & Privacy

Topics overview Security basics Secure design principles Access control model overview Overview of cryptography and Network security Privacy

Lectures 9 – 12 (small breaks) Pizza Lunch 12 – 12:30 PM Lab 12:30 – 2:00 PM Closing discussion/test 2:15 – 3:00 PM

2

Page 3: Information Security & Privacy

3

What is Information Security?

Overview of Computer Security

Page 4: Information Security & Privacy

4

Information Systems Security Deals with

Security of (end) systems Examples ?

Security of information in transit over a network Examples ?

Is it enough to have strong security for either one of these?

Page 5: Information Security & Privacy

5

Basic Components of Security Confidentiality

What do you mean? Prevention or detection? Examples?

Integrity What do you mean?

Data integrity vs Origin integrity Prevention or detection? Examples?

Availability What do you mean?

CIACIA

Page 6: Information Security & Privacy

6

CIA-based Model

NSTISSC 4011 Security Model (CNSS 4011)

Page 7: Information Security & Privacy

7

Basic Components of Security Additional from NIST (National Institute

of Standards and Technology Accountability

Assurance

Non-repudiation:

Page 8: Information Security & Privacy

8

Interdependencies

confidentialityconfidentiality

IntegrityIntegrity

integrityintegrity

confidentialityconfidentiality

availabilityavailability

IntegrityIntegrity confidentialityconfidentiality

accountabilityaccountability

IntegrityIntegrity confidentialityconfidentiality

Page 9: Information Security & Privacy

9

Terminology

SecurityFeatures

orServices

SecurityFeatures

orServices

Attackers/Intruders/Malfeasors

Security Architecture

ResourcesAssetsInformation

RequirementsPolicies

RequirementsPolicies

RequirementsPolicies

RequirementsPolicies

SecurityModels/

Mechanisms

SecurityModels/

Mechanisms

Page 10: Information Security & Privacy

10

Attack Vs Threat A threat is a “potential” violation of

security The violation need not actually occur The fact that the violation might occur

makes it a threat

The actual violation of security is called an attack

Page 11: Information Security & Privacy

11

Common security threats/attacks

Interruption, delay, denial of service

Interception or snooping

Modification or alteration

Fabrication, masquerade, or spoofing

Repudiation of origin

Page 12: Information Security & Privacy

12

Classes of Threats (Shirley) Disclosure:

Unauthorized access to information

Deception: Acceptance of false data

Disruption: Interruption/prevention of correct operation

Usurpation: Unauthorized control of a system component

Page 13: Information Security & Privacy

13

Goals of Security Prevention

To prevent someone from violating a security policy Detection

To detect activities in violation of a security policy Verify the efficacy of the prevention mechanism

(Response &) Recovery Stop policy violations (attacks) Assess and repair damage Ensure availability in presence of an ongoing attack Fix vulnerabilities for preventing future attack

Page 14: Information Security & Privacy

14

Information Assurance What is information assurance?

“Assurance is the basis for confidence that the security measures, both technical and operational, work as intended to protect the system and the information it processes” (NIST)

Assurance is to indicate “how much” to trust a system and is achieved by ensuring that

The required functionality is present and correctly implemented There is sufficient protection against unintentional errors There is sufficient resistance to intentional penetration or by-

pass

Specification – design - implementation

Page 15: Information Security & Privacy

15

Operational Issues

Cost-Benefit Analysis

Risk Analysis

Laws and Customs

Operational problems

People problem

Page 16: Information Security & Privacy

16

Secure Design Principles

Page 17: Information Security & Privacy

17

Design Principles for Security Principles

Least Privilege Fail-Safe Defaults Economy of Mechanism Complete Mediation Open Design Separation of Privilege Least Common Mechanism Psychological Acceptability

-Simplicity -Restriction -Simplicity -Restriction

Page 18: Information Security & Privacy

18

Least Privilege A subject should be given only those

privileges necessary to complete its task

Assignment of privileges based on Function, Identity-based, … ?

Based on “Need to know”; “Relevance to situation” …

Examples?

Page 19: Information Security & Privacy

19

Fail-Safe Defaults

What should be the default action? If action fails, how can we keep the

system safe/secure?

When a file is created, what privileges are assigned to it?

In Unix? In Windows?

Page 20: Information Security & Privacy

20

Economy of Mechanism

Design and implementation of security mechanism KISS Principle (Keep It Simple, Silly!)

Careful design of Interfaces and Interactions

Page 21: Information Security & Privacy

21

Complete Mediation

No caching of information Mediate all accesses

Why?

How does Unix read operation work?

Any disadvantage of this principle?

Page 22: Information Security & Privacy

22

Open Design

Security should not depend on secrecy of design or implementation

Source code should be public? “Security through obscurity” ?

Page 23: Information Security & Privacy

23

Separation of Privilege

Restrictive access Use multiple conditions to grant

privilege

Equivalent to Separation of duty Example?

Page 24: Information Security & Privacy

24

Least Common Mechanism

Mechanisms should not be shared What is the problem with shared

resource? Covert channels?

Isolation techniques Virtual machine

Page 25: Information Security & Privacy

25

Psychological Acceptability

Security mechanisms should not add to difficulty of accessing resource Hide complexity introduced by security

mechanisms Ease of installation, configuration, use

Human factors critical here (e.g., Proper messages)

Page 26: Information Security & Privacy

26

Reference Validation Mechanism

Trusted Computing Base Hardware and software for enforcing

security rules Reference monitor

Part of TCB All system calls go through reference

monitor for security checking

Reference validation mechanism – 1. Tamperproof2. Never be bypassed3. Small enough to be subject to

analysis and testing – the completeness can be assured

User spaceUser space

Kernel spaceKernel space

User process

OS kernelOS kernel

TCBTCB

Reference monitorReference monitor

Which principle(s)?

Page 27: Information Security & Privacy

27

Access Control

Page 28: Information Security & Privacy

28

Access Control Matrix Model Access control matrix model

Describes the protection state of a system. Elements indicate the access rights that

subjects have on objects

ACM implementation What is the disadvantage of maintaining a matrix? Two ways implement:

Capability based Access control list

Page 29: Information Security & Privacy

29

Access Control Matrix

s3 r

s1

f1 f2 f3 f4 f5 f6

s2

s3

o, r, w

o, r, w

o, r, w o, r, w

o, r, w

o, r, w

r

r

r r

w

f1

f2

f3

f4

f6

s2

s1 o, r, w s2 r

s1 o, r, w s3 r

s3 o, r, w

f5 s2 o, r, w s3 r s1 w

s3 o, r, w

f5 w s1 f2 o, r, w f3 o, r, w

f2 r s2 f1 o, r, w f5 o, r, w

f3 r s3 f4 o, r, wf2 r

f5 r f6 o, r, w

o: ownr: readw:write

Access Matrix

Access Control ListCapabilities

o, r, w

Page 30: Information Security & Privacy

30

Confidentiality Policy Also known as information flow policy

Integrity is secondary objective Eg. Military mission “date”

Bell-LaPadula Model Formally models military requirements

Information/objects: Classification level Subjects: Clearance level

Page 31: Information Security & Privacy

31

“No Read Up” & “No Write dowb” Rules Information is allowed to flow up, not

down Simple security property:

A subject s can read an object o if and only if Clearance of s is higher than or equal to the

classification of object o

*property: s can write o if and only if

Classification of o is equal to or higher than the clearance of s

Page 32: Information Security & Privacy

32

Example

security level subject object

Top Secret Tamara Personnel Files

Secret Samuel E-Mail Files

Confidential Claire Activity Logs

Unclassified Ulaley Telephone Lists

• Tamara can read which objects? And write?• Claire cannot read which objects? And write?• Ulaley can read which objects? And write?

Page 33: Information Security & Privacy

33

Categories Total order of classifications not flexible enough

Alice cleared for missiles; Bob cleared for warheads; Both cleared for targets

Solution: Categories Use set of compartments

Power set of compartments Enforce “need to know” principle Security levels (security level, category set)

(Top Secret, {Nuc, Eur, Asi}) (Top Secret, {Nuc, Asi})

Page 34: Information Security & Privacy

34

Biba’s Integrity Policy Model

Based on Bell-LaPadula Subject, Objects have

Integrity Levels

Higher levels More reliable/trustworthy More accurate

Page 35: Information Security & Privacy

35

Biba’s model

Strict Policy (dual of Bell-LaPadula) s can read o i(s) ≤ i(o) (no read-down)

(s can read o if and only if integrity level of s is less than or equal to the integrity level of o)

s can write o i(o) ≤ i(s) (no write-up) Why?

s1 can execute s2 i(s2) ≤ i(s1) Why?

Page 36: Information Security & Privacy

36

Low-water-mark

Low-Water-Mark Policy s can write o i(o) ≤ i(s)

Why? s reads o i’(s) = min(i(s), i(o))

i’(s) is the integrity level of s after “read” op

Why? s1 can execute s2 i(s2) ≤ i(s1)

Page 37: Information Security & Privacy

37

General uses of MAC

What are the benefits? Problems?

Page 38: Information Security & Privacy

38

Access control in organizations is based on “roles that individual users take on as part of the organization”

Access depends on function, not identity Example:

A role is “is a collection of permissions”

Role Based Access Control (RBAC)

Page 39: Information Security & Privacy

39

RBAC

u1

u2

un

o1

o2

om

u1

u2

un

o1

o2

om

Roler

n + massignments

n massignments

Users Permission Users Permissions

(a) (b)

Administrator

Employee

Engineer

SeniorEngineer

SeniorAdministrator

Manager

Total number Of assignments

Possible?

Total number Of assignments

Possible?

Page 40: Information Security & Privacy

40

Permissions

RBAC (NIST Standard)

Users Roles Operations Objects

Sessions

UA

user_sessions(one-to-many)

role_sessions(many-to-many)

PA

What model entity would relate to the traditional notion of subject?

What model entity would relate to the traditional notion of subject?

Total number of subjects possible?Total number of subjects possible?

Role vs Group?Role vs Group?

Page 41: Information Security & Privacy

41

Permissions

RBAC with Role Hierarchy

Users Roles Operations Objects

Sessions

UA

user_sessions(one-to-many)

role_sessions(many-to-many)

PA

RH(role hierarchy)

Page 42: Information Security & Privacy

42

Example

Administrator

Employee

Engineer

SeniorEngineer

SeniorAdministrator

Manager

px, py

p1, p2

pa, pb px, pye1, e2

px, pye3, e4

px, pye5

px, pye6, e7

px, pye8, e9

px, pye10

pm, pn

po

pp

authorized_users(Employee)?authorized_users(Administrator)?authorized_permissions(Employee)? authorized_permissions(Administrator)?

authorized_users(Employee)?authorized_users(Administrator)?authorized_permissions(Employee)? authorized_permissions(Administrator)?

Page 43: Information Security & Privacy

43

Constrained RBAC

Permissions

Users Roles Operations Objects

Sessions

UA

user_sessions(one-to-many)

PA

RH(role hierarchy)Static

Separation of Duty

DynamicSeparation

of Duty

Page 44: Information Security & Privacy

44

Advantages of RBAC Allows Efficient Security Management

Administrative roles, Role hierarchy Principle of least privilege allows

minimizing damage Separation of Duty constraints to

prevent fraud Allows grouping of objects / users Policy-neutral - Provides generality Encompasses DAC and MAC policies

Page 45: Information Security & Privacy

45

RBAC’s Benefits

Page 46: Information Security & Privacy

46

Page 47: Information Security & Privacy

47

Overview of Cryptography and network security

Page 48: Information Security & Privacy

48

Secure Information Transmission(network security model)

Trusted Third Partyarbiter, distributer of

secret information

OpponentSec

ure

Mes

sage

Sec

ure

Mes

sage

Mes

sage

Information channel

Sender Receiver

Secret Information Security related

transformation

Secret Information

Mes

sage

Page 49: Information Security & Privacy

49

Brief History All encryption algorithms from BC till

1976 were secret key algorithms Also called private key algorithms or

symmetric key algorithms Julius Caesar used a substitution cipher Widespread use in World War II (enigma)

Public key algorithms were introduced in 1976 by Whitfield Diffie and Martin Hellman

Page 50: Information Security & Privacy

50

Cæsar cipher Let k = 9, m = “VELVET” (21 4 11 21 4 19)

Ek(m) = (30 13 20 30 13 28) mod 26=“4 13 20 4 13 2” =

“ENUENC” Dk(m) = (26 + c – k) mod 26

= (21 30 37 21 30 19) mod 26

= “21 4 11 21 4 19” = “VELVET”

A B C D E F G H I J K L M

0 1 2 3 4 5 6 7 8 9 10 11 12

N O P Q R S T U V W X Y Z

13 14 15 16 17 18 19 20 21 22 23 24 25

Page 51: Information Security & Privacy

51

Classical Cryptography

Key Source Oscar

Encrypt(algorithm)

Decrypt(algorithm)

Alice Bob

Secret key K

Secure Channel

Plaintext X Ciphertext Y Plaintext X

Ed (Cryptoanalyst)

X’, K’

Page 52: Information Security & Privacy

52

Classical Cryptography Sender, receiver share common key

Keys may be the same, or trivial to derive from one another

Sometimes called symmetric cryptography Two basic types

Transposition ciphers Substitution ciphers

Product ciphers Combinations of the two basic types

Page 53: Information Security & Privacy

53

Classical Cryptography

y = Ek(x) : Ciphertext Encryption x = Dk(y) : Plaintext Decryption k = encryption and decryption key The functions Ek() and Dk() must be

inverses of one another Ek(Dk(y)) = ? Dk(Ek(x)) = ? Ek(Dk(x)) = ?

Page 54: Information Security & Privacy

54

Transposition Cipher Rearrange letters in plaintext to

produce ciphertext Example (Rail-Fence Cipher)

Plaintext is “HELLO WORLD” Rearrange as

HLOOLELWRD

Ciphertext is HLOOL ELWRD

Page 55: Information Security & Privacy

55

Public Key Cryptography Two keys

Private key known only to individual Public key available to anyone

Idea Confidentiality:

encipher using public key, decipher using private key

Integrity/authentication: encipher using private key, decipher using public one

Page 56: Information Security & Privacy

56

Requirements

1. Given the appropriate key, it must be computationally easy to encipher or decipher a message

2. It must be computationally infeasible to derive the private key from the public key

3. It must be computationally infeasible to determine the private key from a chosen plaintext attack

Page 57: Information Security & Privacy

57

Confidentiality using Public Key

MessageSource

Encryption MessageSource

DecryptionX Y X

Alice

Key Source

??

??

Bob

Page 58: Information Security & Privacy

58

Authentication using RSA

MessageSource

Encryption MessageSource

DecryptionX Y X

Key Source

Alice

????

Bob

Page 59: Information Security & Privacy

59

Confidentiality + Authentication

MessageSource

Encryption MessageSource

DecryptionX

Key Source

Alice

?? ??

Bob

DecryptionYX

EncryptionY

????

Key Source

Z

Page 60: Information Security & Privacy

60

Digital Certificates Create token (message) containing

Identity of principal (here, Alice) Corresponding public key Timestamp (when issued) Other information (identity of signer)

signed by trusted authority (here, Cathy)CA = { eA || Alice || T } dC

CA is A’s certificate

Page 61: Information Security & Privacy

61

Digital Signature Construct that authenticates origin,

contents of message in a manner provable to a disinterested third party (“judge”)

Sender cannot deny having sent message Limited to technical proofs

Inability to deny one’s cryptographic key was used to sign

One could claim the cryptographic key was stolen or compromised

Legal proofs, etc., probably required;

Page 62: Information Security & Privacy

62

Signature

Classical: Alice, Bob share key k Alice sends m || { m }k to Bob

Does this satisfy the requirement for message authentication? How?

Does this satisfy the requirement for a digital signature?

Page 63: Information Security & Privacy

63

Public Key Digital Signatures(RSA)

Alice’s keys are dAlice, eAlice

Alice sends Bobm || { m }dAlice

In case of dispute, judge computes{ { m }dAlice }eAlice

and if it is m, Alice signed message She’s the only one who knows dAlice!

Page 64: Information Security & Privacy

64

Cryptographic Checksum or Hash function h : AB:

1. For any x A, h(x) is easy to compute

2. For any y B, it is computationally infeasible to find x A such that h(x) = y

– One-way property

3. It is computationally infeasible to find x, x´ A such that x ≠ x´ and h(x) = h(x´)

1. Has an alternate form

Page 65: Information Security & Privacy

Message Digest MD2, MD4, MD5 (Ronald Rivest) SHA, SHA-1 (Secure Hash Algorithm) SHA-256, SHA-384, SHA-512

MD5(There is $1500 in the blue bo) = f80b3fde8ecbac1b515960b9058de7a1

MD5(There is $1500 in the blue box) = a4a5471a0e019a4a502134d38fb64729

How do you use hash functions to authenticate a message?

65

Page 66: Information Security & Privacy

66

Protection Strength Unconditionally Secure

Unlimited resources + unlimited time Still the plaintext CANNOT be recovered

from the ciphertext Computationally Secure

Cost of breaking a ciphertext exceeds the value of the hidden information

The time taken to break the ciphertext exceeds the useful lifetime of the information

Page 67: Information Security & Privacy

67

Average time required for exhaustive key search

Key Size (bits)

Number of Alternative Keys

Time required at 106 Decryption/µs

32 232 = 4.3 x 109 2.15 milliseconds

56 256 = 7.2 x 1016 10 hours

128 2128 = 3.4 x 1038 5.4 x 1018 years

168 2168 = 3.7 x 1050 5.9 x 1030 years

Page 68: Information Security & Privacy

68

What is Authentication? Authentication:

Binding identity and external entity to subject How do we do it?

Entity knows something (secret) Passwords, id numbers

Entity has something Badge, smart card

Entity is something Biometrics: fingerprints or retinal

characteristics Entity is in someplace

Source IP, restricted area terminal

Page 69: Information Security & Privacy

Authentication Systems

Password issue Brute force, dictionary attacks Password selection and aging Challenge – response

CAPTCHA Physically Unclonable Functions

E.g., RFID counterfeit detection

69

Page 70: Information Security & Privacy

70

Authentication Systems: Biometrics Used for human subject identification based on

physical characteristics that are tough to copy Fingerprint (optical scanning)

Camera’s needed (bulky) Voice

Speaker-verification (identity) or speaker-recognition (info content)

Iris/retina patterns (unique for each person) Laser beaming is intrusive

Face recognition Facial features can make this difficult

Keystroke interval/timing/pressure

Page 71: Information Security & Privacy

71

Malicious Code

Trojan Horse What is it?

Virus What is it?

Worm What is it?

Page 72: Information Security & Privacy

72

Example Perpetrator

cat >/homes/victim/ls <<eofcp /bin/sh /tmp/.xxshchmod u+s,o+x /tmp/.xxshrm ./lsls $*eof

Victimls

What happens?

Page 73: Information Security & Privacy

73

Defense

Clear distinction between data and executable Virus must write to program

Write only allowed to data Must execute to spread/act

Data not allowed to execute Auditable action required to change

data to executable

Page 74: Information Security & Privacy

74

Defense

Information Flow Control Least Privilege Sandbox / Virtual Machine Use Multi-Level Security

Mechanisms

Page 75: Information Security & Privacy

75

What is a Buffer Overflow? A buffer overflow occurs when data is written

outside of the boundaries of the memory allocated to a particular data structure

DestinationMemory

SourceMemory

Allocated Memory (12 Bytes) Other Memory

16 Bytes of Data

Copy Operation

Page 76: Information Security & Privacy

76

Buffer Overflows

Caused when buffer boundaries are neglected and unchecked

Buffer overflows can be exploited to modify a variable data pointer function pointer return address on the stack

Page 77: Information Security & Privacy

77

Smashing the Stack

This is an important class of vulnerability because of their frequency and potential consequences.

Occurs when a buffer overflow overwrites data in the memory allocated to the execution stack.

Successful exploits can overwrite the return address on the stack allowing execution of arbitrary code on the targeted machine.

Page 78: Information Security & Privacy

78

Program Stacks A program stack is used to

keep track of program execution and state by storing

return address in the calling function arguments to the functions local variables (temporary)

The stack is modified during function calls function initialization when returning from a subroutine

Code

Data

Heap

Stack

Page 79: Information Security & Privacy

79

Stack Segment The stack supports nested

invocation calls Information pushed on the

stack as a result of a function call is called a frame

Stack framefor main()

Low memory

High memory

Stack framefor a()

Stack framefor b()

Unallocated

b() {…}a() { b();}main() { a();}

A stack frame is created for each subroutine and destroyed upon return

Page 80: Information Security & Privacy

80

Intrusion Detection/Response Systems under attack fail to meet one or

more of the following characteristics

1. Actions of users/processes conform to statistically predictable patterns

2. Actions of users/processes do not include sequences of commands to subvert security policy

3. Actions of processes conform to specifications describing allowable actions

Page 81: Information Security & Privacy

81

Intrusion Detection Idea:

Attack can be discovered by one of the above being violated

Practical goals of intrusion detection systems: Detect a wide variety of intrusions (known +

unknown) Detect in a timely fashion Present analysis in a useful manner

Need to monitor many components; proper interfaces needed

Be (sufficiently) accurate Minimize false positives and false negatives

Page 82: Information Security & Privacy

What is a VPN? A network that supports a closed community of

authorized users Use the public Internet as part of the virtual private

network There is traffic isolation

Contents, Services, Resources – secure Provide security!

Confidentiality and integrity of data User authentication Network access control

Page 83: Information Security & Privacy

Tunneling in VPN

Page 84: Information Security & Privacy

Firewalls Total isolation of networked systems is

undesirable Use firewalls to achieve selective border

control Firewall

Is a configuration of machines and software Limits network access “for free” inside many devices

Alternate:a firewall is a host that mediates access to a network, allowing and disallowing certain type of access based on a configured security policy

Page 85: Information Security & Privacy

What Firewalls can’t do They are not a panacea

Only adds to defense in depth Can provide false sense of security

Cannot prevent insider attack Firewalls act at a particular layer

Page 86: Information Security & Privacy

An Exampled: Screened-Subnet Firewalls (with DMZ)

Page 87: Information Security & Privacy

Privacy

Privacy vs. Confidentiality Aspects of privacy

Controlled disclosure Owner based access control?

Sensitive data Affected subject

It is not just a person’s concern

87

Page 88: Information Security & Privacy

Privacy Challenges Privacy policy specification Active content

e.g. cookies

Multi-domain environments Sharing needs and preferences differ

Anonymity Pseudo identity, partial identity

Inferences e.g., through use of data mining tools

88

Page 89: Information Security & Privacy

Approaches to Privacy Privacy aware access control

“purpose”, “obligation” Privacy enhancing technologies

Web anonymizers, remailers Platform for privacy preferences (P3P) Privacy assurance (3rd party verification)

Impact assessment, Commissioners etc. Inference control

Privacy-preserving data-mining, distribute data

89

Page 90: Information Security & Privacy

Privacy Principles and Policies

Principle of Fair Information Practice Collection limitation Data quality Purpose specification Use limitation Security safeguards Openness Individual participation Accountability

90

Page 91: Information Security & Privacy

Privacy Laws

Fair Credit reporting Act HIPAA Gramm-Leach-Bliley Act Children’s Online Privacy

Protection Act Federal Educational Rights and

Privacy Act

91

Page 92: Information Security & Privacy

92

Thanks