information security. the protection of information and ...€¦ · information security. the...

27
Information security. The protection of information and information systems against unauthorized access or modification of information, whether in storage, processing, or transit, and against denial of service to authorized users. Information Operations . Joint Chiefs of Staff of the United States Armed Forces, Joint Publication 3-13 (13 February 2006). Principles of Computer System Design © Saltzer & Kaashoek 2009

Upload: others

Post on 26-Feb-2021

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Information security. The protection of information and information systems against unauthorized access or modification of information, whether in storage, processing, or transit, and against denial of service to authorized users.

Information Operations. Joint Chiefs of Staff of the United States Armed Forces, Joint Publication 3-13 (13 February 2006).

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 2: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Complete mediation

For every requested action, check authenticity, integrity, and authorization.

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 3: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

... ...

... Current ... Bad

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 4: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Open design principle

Let anyone comment on the design. You need all the help you can get.

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 5: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Minimize secrets

Because they probably won’t remain secret for long.

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 6: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Economy of mechanism

The less there is, the more likely you will get it right.

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 7: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Minimize common mechanism

Shared mechanisms provide unwanted communication paths.

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 8: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Fail-safe defaults

Most users won’t change them, so make sure that defaults do something safe.

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 9: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Least privilege principle

Don’t store lunch in the safe with the jewels.

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 10: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Computer system

principal

request

perform action

guard object audit trail

module authorizationauthentication

module

yes/no

log

performaction

OK

yes/no

authentic?

authorized?

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 11: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Request

To: service From: Alice

Buy GenericMoneymaking, Inc.

ServicePrincipal

tradingAlice’s

account guard

Alice

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 12: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

SIGN

M

VERIFY

ACCEPT or REJECTTag

M

secure areasecure area

Alice Bob

M

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 13: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

SIGN

M

VERIFY

ACCEPT or REJECTTag

M

secure areasecure area

Alice Bob

M

K2K1

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 14: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

ENCRYPT

K1

M

secure area

ENCRYPT (M, K1) DECRYPT

K2

DECRYPT (ENCRYPT (M, K1),K2)

secure areainsecure area

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 15: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 16: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Compartment

Object

Principal program

UntrustedGuard

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 17: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Quiz

File service

Workstation

Interface 5Interface 14

Alice To: service From: Alice

Send me the quiz

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 18: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Rule 1: Delegating authority:

If A says (B speaks for A) then B speaks for A

Rule 2: Use of delegated authority.

If A speaks for B and A says (B says X) then B says X

Rule 3: Chaining of delegation.

If A speaks for Band B speaks for Cthen A speaks for C

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 19: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

procedure RC4_GENERATE () i ← (i + 1) modulo 256 j ← (j + S[i]) modulo 256 SWAP (S[i], S[j]) t ← (S[i] + S[j]) modulo 256 k ← S[t] return k

procedure RC4_INIT (seed) for i from 0 to 255 doS[i] ← iK[i] ← seed[i]

j ← 0 for i from 0 to 255 do j ← (j + S[i] + K[i]) modulo 256 SWAP(S[i], S[j])

i ← j ← 0

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 20: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

input state output

i0

i1

i2

i3 i7

i6

i5

i4

i11

i10

i9

i8 i12

i13

i14

i15

s0,0

s1,0

s2,0

s3,0 s3,1

s2,1

s1,1

s0,1

s3,2

s2,2

s1.2

s0,2 s0,3

s1,3

s2.3

s3,3

o0

o1

o2

o3 o7

o6

o5

o4

o11

o10

o9

o8 o12

o13

o14

o15

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 21: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

procedure AES (in, out, key) state ← in // copy in into state ADDROUNDKEY (state, key) // mix key into state for r from 1 to 9 do

SUBBYTES (state) // substitute some bytes in state SHIFTROWS (state) // shift rows of state cyclically MIXCOLUMNS (state) // mix the columns up ADDROUNDKEY (state, key[r×4, (r+1)×4 – 1]) // expand key, mix in

SUBBYTES (state)SHIFTROWS (state)ADDROUNDKEY (state, key[10×4, 11×4 – 1])out ← state // copy state into out

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 22: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

IV

M1 M2 M3 C1 C2 C3

⊕⊕ ⊕

D DE DE E

IV ⊕⊕ ⊕

C1 C2 C3 M1 M2 M3

(a) Encipher (b) Decipher

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 23: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Client Service

1. {ClientHello, client_version, randomclient, session_id, cipher_suites, compression_f}

2. {ServerHello, server_version, randomserver, session_id, cipher_suite, compression_f}

3. {ServerCertificate, certificate_list}

4. {ServerHelloDone}

5. {ClientKeyExchange, ENCRYPT (pre_master_secret, ServerPubKey)}

6. {ChangeCipherSpec, cipher_suite}

client_write_key7. {Finished, MAC (master_secret, messages 1, 2, 3, 4, 5)} client_write_MAC_secret

8. {ChangeCipherSpec, cipher_suite}

server_write_key 9. {Finished, mac (master_secret, messages 1, 2, 3, 4, 5, 7)}server_write_MAC_secret

client_write_key10. {Data, plaintext}client_write_MAC_secret

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 24: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

structure X_509_v3_certificate version serial_number signature_cipher_identifier issuer_signature issuer_name subject_name subject_public_key_cipher_identifier subject_public_key validity_period

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 25: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

procedure DELETE_FILE (file_name) auth ← CHECK_DELETE_PERMISSION (file_name, this_user_id) if auth = PERMITTED

then DESTROY (file_name) else signal (“You do not have permission to delete file_name”)

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 26: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

Enigma Rotor with eight contacts

. Side view, showing contacts. Edge view, showing some connections.

Principles of Computer System Design © Saltzer & Kaashoek 2009

Page 27: Information security. The protection of information and ...€¦ · Information security. The protection of information and information systems against unauthorized access or modification

In

Out

Principles of Computer System Design © Saltzer & Kaashoek 2009