L-25 Security II 1. Today's Lecture Effective secure channels Access control Privacy and Tor 2.

Slides:



Advertisements
Similar presentations
Chapter 10 Encryption: A Matter of Trust. Awad –Electronic Commerce 1/e © 2002 Prentice Hall 2 OBJECTIVES What is Encryption? Basic Cryptographic Algorithm.
Advertisements

Key Management. Shared Key Exchange Problem How do Alice and Bob exchange a shared secret? Offline – Doesnt scale Using public key cryptography (possible)
CIS 725 Key Exchange Protocols. Alice ( PB Bob (M, PR Alice (hash(M))) PB Alice Confidentiality, Integrity and Authenication PR Bob M, hash(M) M, PR Alice.
Internet and Intranet Protocols and Applications Lecture 9a: Secure Sockets Layer (SSL) March, 2004 Arthur Goldberg Computer Science Department New York.
Cryptography and Network Security
SSL CS772 Fall Secure Socket layer Design Goals: SSLv2) SSL should work well with the main web protocols such as HTTP. Confidentiality is the top.
Topic 8: Secure communication in mobile devices. Choice of secure communication protocols, leveraging SSL for remote authentication and using HTTPS for.
Grid Security Infrastructure Tutorial Von Welch Distributed Systems Laboratory U. Of Chicago and Argonne National Laboratory.
15-1 Last time Internet Application Security and Privacy Public-key encryption Integrity.
Apr 2, 2002Mårten Trolin1 Previous lecture On the assignment Certificates and key management –Obtaining a certificate –Verifying a certificate –Certificate.
Mar 12, 2002Mårten Trolin1 This lecture Diffie-Hellman key agreement Authentication Certificates Certificate Authorities SSL/TLS.
CSCI283 Fall 2005 GWU All slides from Bishop’s slide set Public Key Infrastructure (PKI)
An Introduction to Security Concepts and Public Key Infrastructure (PKI) Mary Thompson.
 Authorization via symmetric crypto  Key exchange o Using asymmetric crypto o Using symmetric crypto with KDC  KDC shares a key with every participant.
8-1 What is network security? Confidentiality: only sender, intended receiver should “understand” message contents m sender encrypts message m receiver.
بسم الله الرحمن الرحيم NETWORK SECURITY Done By: Saad Al-Shahrani Saeed Al-Smazarkah May 2006.
L-13 Security 1. Schedule up to Midterm 2/26 No class (work on project 1, hw3) Review 3/2 Monday 4:30 pm NSH 3002 HW 3 due Midterm 3/3 Tuesday in class.
Topic 11: Key Distribution and Agreement 1 Information Security CS 526 Topic 11: Key Distribution & Agreement, Secure Communication.
Security Management.
0x1A Great Papers in Computer Security Vitaly Shmatikov CS 380S
Secure Communication with an Insecure Internet Infrastructure.
Computer Science Public Key Management Lecture 5.
Cryptography 101 Frank Hecker
Secure Communication with an Insecure Internet Infrastructure Lecture Nov. 21 st 2006 Dan Wendlandt.
CSCI 6962: Server-side Design and Programming
Chapter 31 Network Security
How HTTPS Works J. David Giese. Hyper Text Transfer Protocol BrowserHTTP Server GET / HTTP/1.1 HOST: edge-effect.github.io HEADERS BODY HTTP/ OK.
Chapter 14 Encryption: A Matter Of Trust. Awad –Electronic Commerce 2/e © 2004 Pearson Prentice Hall 2 OBJECTIVES What is Encryption? Basic Cryptographic.
SYSTEM ADMINISTRATION Chapter 13 Security Protocols.
SSL and https for Secure Web Communication CSCI 5857: Encoding and Encryption.
Secure Socket Layer (SSL)
Security Protocols and E-commerce University of Palestine Eng. Wisam Zaqoot April 2010 ITSS 4201 Internet Insurance and Information Hiding.
Cryptography and Network Security (CS435) Part Fourteen (Web Security)
Certificate-Based Operations. Module Objectives By the end of this module participants will be able to: Define how cryptography is used to secure information.
Web Security : Secure Socket Layer Secure Electronic Transaction.
Digital Envelopes, Secure Socket Layer and Digital Certificates By: Anthony and James.
23-1 Last time □ P2P □ Security ♦ Intro ♦ Principles of cryptography.
Network Security7-1 CIS3360: Chapter 8: Cryptography Application of Public Cryptography Cliff Zou Spring 2012 TexPoint fonts used in EMF. Read the TexPoint.
Internet-security.ppt-1 ( ) 2000 © Maximilian Riegel Maximilian Riegel Kommunikationsnetz Franken e.V. Internet Security Putting together the.
Fall 2010/Lecture 321 CS 426 (Fall 2010) Key Distribution & Agreement.
Chapter 3 (B) – Key Management; Other Public Key Cryptosystems.
31.1 Chapter 31 Network Security Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Topic 14: Secure Communication1 Information Security CS 526 Topic 14: Key Distribution & Agreement, Secure Communication.
1 Chapter 10: Key Management in Public key cryptosystems Fourth Edition by William Stallings Lecture slides by Lawrie Brown (Modified by Prof. M. Singhal,
Security fundamentals Topic 5 Using a Public Key Infrastructure.
Computer and Network Security - Message Digests, Kerberos, PKI –
Key Management Network Systems Security Mort Anvari.
1 Authenticated Key Exchange Rocky K. C. Chang 20 March 2007.
Lecture 9 Overview. Digital Signature Properties CS 450/650 Lecture 9: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
@Yuan Xue CS 285 Network Security Secure Socket Layer Yuan Xue Fall 2013.
Cryptography CSS 329 Lecture 13:SSL.
1 Anonymity. 2 Overview  What is anonymity?  Why should anyone care about anonymity?  Relationship with security and in particular identification 
Key management issues in PGP
Distributed Systems Fall 2016
Distributed Systems Fall 2016
Digital Signatures Cryptographic technique analogous to hand-written signatures. sender (Bob) digitally signs document, establishing he is document owner/creator.
Distributed Systems Final Review (part 2) Fall 2017
Digital Signatures Cryptographic technique analogous to hand-written signatures. sender (Bob) digitally signs document, establishing he is document owner/creator.
0x1A Great Papers in Computer Security
24 – Security Protocols - II
The Secure Sockets Layer (SSL) Protocol
Protocol ap1.0: Alice says “I am Alice”
Digital Signatures Cryptographic technique analogous to hand-written signatures. sender (Bob) digitally signs document, establishing he is document owner/creator.
Digital Signatures Cryptographic technique analogous to hand-written signatures. sender (Bob) digitally signs document, establishing he is document owner/creator.
Digital Signatures Cryptographic technique analogous to hand-written signatures. sender (Bob) digitally signs document, establishing he is document owner/creator.
Digital Signatures Cryptographic technique analogous to hand-written signatures. sender (Bob) digitally signs document, establishing he is document owner/creator.
Presentation transcript:

L-25 Security II 1

Today's Lecture Effective secure channels Access control Privacy and Tor 2

The Great Divide Symmetric Crypto: (Private key) Example: AES Asymmetric Crypto: (Public key) Example: RSA Requires a pre- shared secret between communicating parties? Yes Overall speed of cryptographic operations Slow No Fast 3

Certification Authorities Certification authority (CA): binds public key to particular entity, E. An entity E registers its public key with CA.  E provides “proof of identity” to CA.  CA creates certificate binding E to its public key.  Certificate contains E’s public key AND the CA’s signature of E’s public key. Bob’s public key Bob’s identifying information CA private key certificate = Bob’s public key and signature by CA KBKB K -1 CA KBKB CA generates S = Sign(K B ) 4

Certification Authorities When Alice wants Bob’s public key:  Gets Bob’s certificate (Bob or elsewhere).  Use CA’s public key to verify the signature within Bob’s certificate, then accepts public key Verify(S, K B ) CA public key K CA KBKB If signature is valid, use K B 5

Certificate Contents info algorithm and key value itself (not shown) Cert owner Cert issuer Valid dates Fingerprint of signature 6

Transport Layer Security (TLS) aka Secure Socket Layer (SSL) Used for protocols like HTTPS Special TLS socket layer between application and TCP (small changes to application). Handles confidentiality, integrity, and authentication. Uses “hybrid” cryptography. 7

Setup Channel with TLS “Handshake” Handshake Steps: 1)Clients and servers negotiate exact cryptographic protocols 2)Client’s validate public key certificate with CA public key. 3)Client encrypt secret random value with servers key, and send it as a challenge. 4)Server decrypts, proving it has the corresponding private key. 5)This value is used to derive symmetric session keys for encryption & MACs. 8

How TLS Handles Data 1) Data arrives as a stream from the application via the TLS Socket 2) The data is segmented by TLS into chunks 3) A session key is used to encrypt and MAC each chunk to form a TLS “record”, which includes a short header and data that is encrypted, as well as a MAC. 4) Records form a byte stream that is fed to a TCP socket for transmission. 9

Analysis Public key lets us take the trusted third party offline: –If it’s down, we can still talk! –But we trade-off ability for fast revocation  If server’s key is compromised, we can’t revoke it immediately...  Usual trick: –Certificate expires in, e.g., a year. –Have an on-line revocation authority that distributes a revocation list. Kinda clunky but mostly works, iff revocation is rare. Clients fetch list periodically. Better scaling: CA must only sign once... no matter how many connections the server handles. If CA is compromised, attacker can trick clients into thinking they’re the real server. 10

Important Lessons Symmetric (pre-shared key, fast) and asymmetric (key pairs, slow) primitives provide:  Confidentiality  Integrity  Authentication “Hybrid Encryption” leverages strengths of both. Great complexity exists in securely acquiring keys. Crypto is hard to get right, so use tools from others, don’t design your own (e.g. TLS). 11

Forward secrecy In KDC design, if key K server-KDC is compromised a year later, –from the traffic log, attacker can extract session key (encrypted with auth server keys). –attacker can decode all traffic retroactively. In SSL, if CA key is compromised a year later, –Only new traffic can be compromised. Cool… But in SSL, if server’s key is compromised... –Old logged traffic can still be compromised... 12

Diffie-Hellman Key Exchange Different model of the world: How to generate keys between two people, securely, no trusted party, even if someone is listening in. This is cool. But: Vulnerable to man-in-the- middle attack. Attacker pair-wise negotiates keys with each of A and B and decrypts traffic in the middle. No authentication... image from wikipedia 13

Authentication? But we already have protocols that give us authentication! –They just happen to be vulnerable to disclosure if long-lasting keys are compromised later... Hybrid solution: –Use diffie-hellman key exchange with the protocols we’ve discussed so far. –Auth protocols prevent M-it-M attack if keys aren’t yet compromised. –D-H means that an attacker can’t recover the real session key from a traffic log, even if they can decrypt that log. –Client and server discard the D-H parameters and session key after use, so can’t be recovered later. This is called “perfect forward secrecy”. Nice property. 14

One more note… public key infrastructures (PKI)s are great, but have some challenges… –Yesterday, we discussed how your browser trusts many, many different CAs. –If any one of those is compromised, an attacker can convince your browser to trust their key for a website... like your bank. –Often require payment, etc. Alternative: the “ssh” model, which we call “trust on first use” (TOFU). Sometimes called “prayer.” 15

Today's Lecture Effective secure channels Access control Privacy and Tor 16

Access Control Once secure communication between a client and server has been established, we now have to worry about access control – when the client issues a request, how do we know that the client has authorization? 17

18 The Access Control Matrix (ACM) A model of protection systems Describes who (subject) can do what (rights) to what/whom (object/subject) Example  An instructor can assign and grade homework and exams  A TA can grade homework  A Student can evaluate the instructor and TA 18

An Access Control Matrix Allowed Operations (Rights): r,x,w File1File2File3 Annrxrrwx Bobrwxr-- Charlierxrww 19

ACMs and ACLs; Capabilities Real systems have to be fast and not use excessive space 20

What’s Wrong with an ACM? If we have 1k ‘users’ and 100k ‘files’ and a user should only read/write his or her own files  The ACM will have 100k columns and 1k rows  Most of the 100M elements are either empty or identical Good for theoretical study but bad for implementation  Remove the empty elements? 21

Two ways to cut a table (ACM) Order by columns (ACL) or rows (Capability Lists)? ACLs Capability File1File2File3 Annrxrrwx Bobrwxr-- Charlierxrww 22

Access Control Lists An ACL stores (non-empty elements of) each column with its object Columns of access control matrix ACLs: file1: { (Andy, rx) (Betty, rwx) (Charlie, rx) } file2: { (Andy, r) (Betty, r) (Charlie, rw) } file3: { (Andy, rw) (Charlie, w) } 23 File1File2File3 Andyrxrrwx Bettyrwxr-- Charlierxrww 23

Capability Lists Rows of access control matrix C-Lists:  Andy: { (file1, rx) (file2, r) (file3, rw) }  Betty: { (file1, rwx) (file2, r) }  Charlie: { (file1, rx) (file2, rw) (file3, w) } 24 File1File2File3 Andyrxrrwx Bettyrwxr-- Charlierxrww 24

ACL:Default Permission and Abbreviation Example: UNIX   Three classes of users: owner, group, all others 25

Capability Like a bus ticket  Mere possession indicates rights that subject has over object  Object identified by capability (as part of the token)  Name may be a reference, location, or something else  The key challenge is to prevent process/user from altering capabilities  Otherwise a subject can augment its capabilities at will Cryptography  Associate with each capability a cryptographic checksum enciphered using a key known to OS  When process presents capability, OS validates checksum 26

Delegation (1) The general structure of a proxy as used for delegation. 27

Delegation (2) Using a proxy to delegate and prove ownership of access rights. 28

ACLs vs. Capabilities They are equivalent: 1.Given a subject, what objects can it access, and how? 2.Given an object, what subjects can access it, and how?  ACLs answer second easily; C-Lists, answer the first easily. The second question in the past was most used; thus ACL-based systems are more common But today some operations need to answer the first question 29

Today's Lecture Effective secure channels Access control Privacy and Tor 30

Randomized Routing Hide message source by routing it randomly  Popular technique: Crowds, Freenet, Onion routing Routers don’t know for sure if the apparent source of a message is the true sender or another router 31

Onion Routing Sender chooses a random sequence of routers  Some routers are honest, some controlled by attacker  Sender controls the length of the path R R4R4 R1R1 R2R2 R R R3R3 Bob R R R Alice 32

Route Establishment R4R4 R1R1 R2R2 R3R3 Bob Alice {R 2,k 1 } pk(R 1 ),{ } k 1 {R 3,k 2 } pk(R 2 ),{ } k 2 {R 4,k 3 } pk(R 3 ),{ } k 3 {B,k 4 } pk(R 4 ),{ } k 4 {M} pk(B) Routing info for each link encrypted with router’s public key Each router learns only the identity of the next router 33

How does Tor work? 34

How does Tor work? 35

Tor Circuit Setup (1) Client proxy establish a symmetric session key and circuit with Onion Router #1 36

Tor Circuit Setup (2) Client proxy extends the circuit by establishing a symmetric session key with Onion Router #2  Tunnel through Onion Router #1 37

Tor Circuit Setup (3) Client proxy extends the circuit by establishing a symmetric session key with Onion Router #3  Tunnel through Onion Routers #1 and #2 38

Using a Tor Circuit Client applications connect and communicate over the established Tor circuit 39

Location Hidden Servers Goal: deploy a server on the Internet that anyone can connect to without knowing where it is or who runs it Accessible from anywhere Resistant to censorship Can survive full-blown DoS attack Resistant to physical attack  Can’t find the physical server! 40

Creating a Location Hidden Server Server creates onion routes to “introduction points” Server gives intro points’ descriptors and addresses to service lookup directory Client obtains service descriptor and intro point address from directory 41

Using a Location Hidden Server Client creates onion route to a “rendezvous point” Client sends address of the rendezvous point and any authorization, if needed, to server through intro point If server chooses to talk to client, connect to rendezvous point Rendezvous point mates the circuits from client & server 42

Tor Second-generation onion routing network   Developed by Roger Dingledine, Nick Mathewson and Paul Syverson  Specifically designed for low-latency anonymous Internet communications Running since October s nodes on four continents, thousands of users “Easy-to-use” client proxy  Freely available, can use it for anonymous browsing 43

ACL Abbreviations Augment abbreviated lists with ACLs  Intent is to shorten ACL without losing the granularity Example  IBM AIX  ACL overrides base permission  Denial takes precedence 44

Permissions in IBM AIX attributes: base (traditional UNIX) permissions owner(bishop):rw- group(sys):r-- others:--- extended permissions enabled permit-w-u:heidi, g=sys[Add] permitrw-u:matt deny-w-u:holly, g=faculty[Remove right] 45

Capabilities and Attribute Certificates (1) Owner capability in Amoeba. 46

Capabilities and Attribute Certificates (2) Generation of a restricted capability from an owner capability. 47