Computer Science 425 Distributed Systems Fall 2009 Lecture 26 Security in Distributed Systems Klara Nahrstedt.

Slides:



Advertisements
Similar presentations
Chapter 14 – Authentication Applications
Advertisements

Last Class: The Problem BobAlice Eve Private Message Eavesdropping.
Cryptography and Network Security 2 nd Edition by William Stallings Note: Lecture slides by Lawrie Brown and Henric Johnson, Modified by Andrew Yang.
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
CSE 486/586, Spring 2014 CSE 486/586 Distributed Systems Security Steve Ko Computer Sciences and Engineering University at Buffalo.
Chapter 14 From Cryptography and Network Security Fourth Edition written by William Stallings, and Lecture slides by Lawrie Brown, the Australian Defence.
1 Digital Signatures & Authentication Protocols. 2 Digital Signatures have looked at message authentication –but does not address issues of lack of trust.
Lecture 5: security: PGP Anish Arora CIS694K Introduction to Network Security.
CS 425 / ECE 428 Distributed Systems Fall 2014 Indranil Gupta (Indy) Lecture 24B: Security All slides © IG.
Department of Information Engineering1 Major Concerns in Electronic Commerce Authentication –there must be proof of identity of the parties in an electronic.
Lecture III : Communication Security, Services & Mechanisms Internet Security: Principles & Practices John K. Zao, PhD SMIEEE National Chiao-Tung University.
Security Chapters 14,15. The Security Environment Threats Security goals and threats.
8.1 Learning Objectives To become familiar with the range of security threats faced by networked and distributed systems (DSs); To examine various cryptographic.
بسم الله الرحمن الرحيم NETWORK SECURITY Done By: Saad Al-Shahrani Saeed Al-Smazarkah May 2006.
CS425/CSE424/ECE428 – Distributed Systems Nikita Borisov - UIUC1 Some material derived from slides by I. Gupta, M. Harandi, J. Hou, S. Mitra,
CS542: Topics in Distributed Systems Security. Why are Distributed Systems insecure?  Distributed component rely on messages sent and received from network.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
Network Security – Part 2 V.T. Raja, Ph.D., Oregon State University.
1 CS 194: Distributed Systems Security Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer Sciences.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Alexander Potapov.  Authentication definition  Protocol architectures  Cryptographic properties  Freshness  Types of attack on protocols  Two-way.
Digital Signature Xiaoyan Guo/ Xiaohang Luo/
CSCI 6962: Server-side Design and Programming
Chapter 31 Network Security
Public Key Cryptography July Topics  Symmetric and Asymmetric Cryptography  Public Key Cryptography  Digital Signatures  Digital Certificates.
Computer Security Tran, Van Hoai Department of Systems & Networking Faculty of Computer Science & Engineering HCMC University of Technology.
Security. Cryptography Why Cryptography Symmetric Encryption – Key exchange Public-Key Cryptography – Key exchange – Certification.
Lecture 25-1 Computer Science 425 Distributed Systems CS 425 / CSE 424 / ECE 428 Fall 2010 Indranil Gupta (Indy) November 27, 2012 Lecture 25 Security.
Part Two Network Security Applications Chapter 4 Key Distribution and User Authentication.
Secure r How do you do it? m Need to worry about sniffing, modifying, end- user masquerading, replaying. m If sender and receiver have shared secret.
Security Source: George Colouris, Jean Dollimore, Tim Kinderberg & Gordon Blair (2012). Distributed Systems: Concepts & Design (5th Ed.). Essex: Addison-Wesley.
Cryptography and Network Security
Cryptography and Network Security Chapter 14 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
Network Security – Part 2 (Continued) Lecture Notes for May 8, 2006 V.T. Raja, Ph.D., Oregon State University.
Cryptography  Why Cryptography  Symmetric Encryption  Key exchange  Public-Key Cryptography  Key exchange  Certification.
Cryptography, Authentication and Digital Signatures
Slides for Chapter 7: Security From Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 3, © Addison-Wesley 2001.
Security Chapter 8.
© Oxford University Press 2011 DISTRIBUTED COMPUTING Sunita Mahajan Sunita Mahajan, Principal, Institute of Computer Science, MET League of Colleges, Mumbai.
10. Key Management. Contents Key Management  Public-key distribution  Secret-key distribution via public-key cryptography.
Chapter 21 Distributed System Security Copyright © 2008.
From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, © Addison-Wesley 2012 Slides for Chapter 11: Security.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Chapter 3 (B) – Key Management; Other Public Key Cryptosystems.
Advanced Database Course (ESED5204) Eng. Hanan Alyazji University of Palestine Software Engineering Department.
IM NTU Distributed Information Systems 2004 Security -- 1 Security Yih-Kuen Tsay Dept. of Information Management National Taiwan University.
Lecture 16: Security CDK4: Chapter 7 CDK5: Chapter 11 TvS: Chapter 9.
Security Many secure IT systems are like a house with a locked front door but with a side window open -somebody.
31.1 Chapter 31 Network Security Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
1 Chapter 10: Key Management in Public key cryptosystems Fourth Edition by William Stallings Lecture slides by Lawrie Brown (Modified by Prof. M. Singhal,
Network Security Continued. Digital Signature You want to sign a document. Three conditions. – 1. The receiver can verify the identity of the sender.
Computer Science Lecture 23, page 1 CS677: Distributed OS Security: Focus of Control Three approaches for protection against security threats a)Protection.
Lecture 11 Overview. Digital Signature Properties CS 450/650 Lecture 11: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
Network Security Celia Li Computer Science and Engineering York University.
Lecture 9 Overview. Digital Signature Properties CS 450/650 Lecture 9: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
Fall 2006CS 395: Computer Security1 Key Management.
1 Chapter 3-3 Key Distribution. 2 Key Management public-key encryption helps address key distribution problems have two aspects of this: –distribution.
9.2 SECURE CHANNELS JEJI RAMCHAND VEDULLAPALLI. Content Introduction Authentication Message Integrity and Confidentiality Secure Group Communications.
SECURITY. Security Threats, Policies, and Mechanisms There are four types of security threats to consider 1. Interception 2 Interruption 3. Modification.
Pertemuan #8 Key Management Kuliah Pengaman Jaringan.
Slides for Chapter 7: Security From Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 4 © Pearson Education
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
CDK4: Chapter 7 CDK5: Chapter 11 TvS: Chapter 9
CS 425 / ECE 428 Distributed Systems Fall 2018 Indranil Gupta (Indy)
CDK: Chapter 7 TvS: Chapter 9
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Presentation transcript:

Computer Science 425 Distributed Systems Fall 2009 Lecture 26 Security in Distributed Systems Klara Nahrstedt

Acknowledgement The slides during this semester are based on ideas and material from the following sources: –Slides prepared by Professors M. Harandi, J. Hou, I. Gupta, N. Vaidya, Y-Ch. Hu, S. Mitra. –Slides from Professor S. Gosh’s course at University o Iowa.

Administrative MP3 posted –Deadline December 7 (Monday) – pre-competition »Top five groups will be selected for final demonstration on Tuuesday, December 8 –Demonstration Signup Sheets for Monday, 12/7, will be made available –Main Demonstration in front of the Qualcomm Representative will be on Tuesday, December 8 afternoon - details will be announced. HW4 posted –Deadline December 1, 2009 (Tuesday)

Administrative MP3 –Readme file must include: »Bootstraping routine – how one install your system – developers manuscript »How one use your system – usage prescription for users »Known bugs, what are the issues with your system/application –Tar or zip your source code and upload it to agora wiki »URL Information will be provided on the web/in class/on newsgroup –Fill out project template as specified »Template Information will be provided on the web/in class/on newsgroup

ISIS algorithm for total ordering Message 2 Proposed Seq P 2 P 3 P 1 P 4 3 Agreed Seq 3 3

Napster S S S P P PP P P Peers napster.com Servers Store their own files Store peer pointers for all files 3. Response 1. Query 2. All servers search their lists (ternary tree algo.) 4. ping candidates 5. download from best host

Chord: client to client N80 0 Say m=7 N32 N45 File bad.mp3 with key K42 stored here At node n, send query for key k to largest successor/finger entry < k if none exist, return successor(n) to requestor All “arrows” are RPCs N112 N96 N16 Who has bad.mp3? (hashes to K42)

Security Threats  Leakage: An unauthorized party gains access to a service or data (eavesdropping).  Attacker obtains knowledge of a withdrawal or account balance  Tampering: Unauthorized change of data, tampering with a service  Attacker changes the variable holding your personal checking $$ total  Vandalism: Interference with proper operation, without gain to the attacker  Attacker does not allow any transactions to your account  E.g., DOS=denial of service

More Concerns Attacks on Communication Channel / Network  Eavesdropping – Obtaining copies of messages without authority.  Masquerading – Sending or receiving messages with the identity of another principal (user or corporation).  Message tampering – Intercepting messages and altering their contents before passing them onto the intended recipient.  Replaying – Intercepting messages and sending them at a later time.  Denial of Service Attack – flooding a channel or other resources (e.g., port) with messages.

Addressing the Challenges: Security  Leakage: An unauthorized party gains access to a service or data (eavesdropping). –Confidentiality : protection against disclosure to unauthorized individuals.  Tampering: Unauthorized change of data, tampering with a service –Integrity : protection against alteration or corruption.  Vandalism: Interference with proper operation, without gain to the attacker –Availability : protection against interference with the means to access the resources.

Security Policies & Mechanisms  A Security Policy indicates which actions each entity (user, data, service) is allowed or prohibited to take.  E.g., Only an owner is allowed to make transactions to his account. CIA properties.  A Security Mechanism enforces the policy  Encryption and decryption: transform data to a form only understandable by authorized users, and vice-versa.  Authentication: verify the claimed identity of a user, client, service, process, etc.  Authorization: verify access rights for an authenticated entity.  Auditing: make record of and check access to data and resources. Mainly an analysis tool to measure the success of security policies and mechanisms.

Designing Secure Systems Make worst-case assumptions about attackers: –exposed interfaces, insecure networks, algorithms and program code available to attackers, attackers may be computationally very powerful –Tradeoff between security and performance impact/difficulty –Typically design system to withstand a known set of attacks Designing Secure Systems –Traditionally done as a layer on top of existing protocols. Three phases: –Specification of Protocols for Security to satisfy a policy –Analysis of Protocol Behavior when under attacks –Effect on overall performance if there were no attacks

Familiar Names for Principals in Security Protocols AliceFirst participant BobSecond participant CarolParticipant in three- and four-party protocols DaveParticipant in four-party protocols EveEavesdropper MalloryMalicious attacker SaraA server

Two-party Communication, Pair-wise Key Pairwise keys secure two-party communications –Data confidentiality –Data integrity –Source authentication Key distribution center (Sara) Alice Bob Eve or Mallory Eavesdrop /modify/Inject

Cryptography Notations KAKA Alice’s secret key KBKB Bob’s secret key K AB Secret key shared between Alice and Bob K Apriv Alice’s private key (known only to Alice) K Apub Alice’s public key (published by Alice for all to read) {M} K (Typical) Message M encrypted with key [M]K]K MessageM signed with key K (Typical)

Encryption Plain Text (M) Encryption K, E Cryptography  Encoding (encryption) of a message that can only be read (decryption) by a key.  In shared key cryptography (symmetric cryptography) the sender and the recipient know the key, but no one else does.  E.g., DES (Data Encryption Standard) – 56 bit key operates on 64 bit blocks of data. Notation: K AB (M).  How do Alice and Bob get the shared key K AB to begin with?  In public/private key pairs messages are encrypted with a published public key, and can only be decrypted by a secret private decryption key.  E.g., RSA / PGP keys – at least 512 b long Plain Text (M) Decryption K, D Decryption Alice Bob E(K,M)={M} K D(K, {M} K )=M {M} K Code for E,D is “open-source” (hence known to attacker)

Authentication  Use of cryptography to have two principals verify each others’ identities.  Direct authentication: the server uses a shared secret key to authenticate the client.  Indirect authentication: a trusted authentication server (third party) authenticates and provides a ticket to an authenticated client.  The authentication server knows keys of principals and generates temporary shared keys.  E.g., Verisign servers  Shared versus public/private:  Shared reveals information to too many principles; may need key distribution and repudiation mechanisms  In electronic commerce or wide area applications, public/private key pairs are used rather than shared keys.  Public/private key encrypt/decrypt ops are costly  May use hybrid: pub/pri generates a shared key.  Presentation of next few protocols independent of which keying scheme, viz., shared or pub/priv

Direct Authentication Authentication based on a shared secret key. Bob calculates K A,B (R B ) and matches with reply. Alice is the only one who could have replied correctly. “Nonce”=random num,

“Optimized” Direct Authentication Authentication based on a shared secret key, but using three instead of five messages.

Authentication Using a Key Distribution Center Using a ticket and letting Alice set up a connection to Bob. Alice and Bob are the only ones who can decrypt parts of this message Ticket {{Ticket}K B, K AB }K A {Ticket}K B, Alice, Request Alternative Protocol Using Sara (KDC)

Needham-Schroeder Authentication KBKB KAKB…KAKB… System A System B Authentication System 1 KBKB 3 K AB 4 5 K AB KAKA 6 K AB 2 KAKA KBKB Ticket A asks for a key to communicate with B A demonstrates that it is the sender of the previous message “Nonce”=random num,

Why Do We Need Nonce N A in Message 1? KBKB KAKB…KAKB… System A System C Authentication System 1 KAKA 2 KBKB KAKA KBKB KAKA Because we need to relate message 2 to message 1 Chuck has stolen K B and intercepted message 2. It can masquerade as the authentication system. 1’ KBKB KAKA 2’

Digital Signatures  Signatures need to be authentic, unforgeable, and non- repudiable. K A- K B+ A’s Priv. Key, K A- B’s Pub Key, K B+ m m,{m} K A- B’s Priv. Key, K B- A’s Pub Key, K A+ m m,{m} K A- A B K A- Digest Function A’s Priv. Key, K A- m m,D(m) Compare A’s Pub Key, K A+ m A B Digest Function m,D(m) D(m) Digital Signature Using Public-Private Keys D()=Digital Signature Using Message Digest, e.g., SHA-1 or MD-5

Digital Certificates  A digital certificate is a statement signed by a third party principal,  e.g., Verisign Certification Authority (CA)  To be useful, certificates must have:  A standard format, for construction and interpretation  A protocol for constructing chains of certificates  A trusted authority at the end of the chain Alice Bob Service (S) Request with digital signature 1 {Certificate} 2 K S- K S+ Transaction + {Certificate} K S- 3 Certificate=She is Alice

Alice’s Bank Account Certificate 1.Certificate type:Account number 2.Name:Alice 3.Account: Certifying authority:Bob’s Bank 5.Signature: {Digest(field 2 + field 3)} K Bpriv

Public-Key Certificate for Bob’s Bank 1.Certificate type:Public key 2.Name:Bob’s Bank 3.Public key:K Bpub 4.Certifying authority:Fred – The Bankers Federation 5.Signature: {Digest(field 2 + field 3)} K Fpriv Eventually K F -, K F + have to be obtained reliably.

Access Control: Protection Domain A computer system is a set of processes and objects Processes and objects have unique names Objects are abstract data types with well-defined operations A process operates within a protection domain A protection domain specifies the resources a process may access and the types of operations that may be invoked on the objects. The Principle of Least Privilege Need to know: The protection domain of a process should be as small as possible consistent with the need of that process to accomplish its assigned task.

Access Matrix Protection Domains Objects Access Lists Capability

 Control of access to resources of a remote server.  A basic form of remote access control checks requests for:  Authenticity of the principal or its credentials.  Access rights for the requested resource & op.  Access control matrix M (e.g., maintained at server)  Each principal is represented by a row, and each resource object is represented by a column.  M[s,o] lists precisely what operations principal s can request to be carried out on resource o.  May be sparse.  Access control list (ACL)  Each object maintains a list of access rights of principals, i.e., an ACL is some column in M with the empty entries left out.  Capability List = row in access control matrix, i.e., per-principal list. Authorization: Access Control

Focus of Access Control Three approaches for protection against security threats a)Protection against invalid operations b)Protection against unauthorized invocations c)Protection against unauthorized users

Access Control Matrix Comparison between ACLs and capabilities for protecting objects. a)Using an ACL b)Using capabilities.

Summary Variety of attacks – C. I. A. Policy vs. Mechanism Cryptography – symmetric or public-private Authentication, Authorization, Auditing. Needham-Schroeder Authentication Protocol Access Control

Needham–Schroeder Secret-key Authentication Protocol HeaderMessageNotes 1. A->S: A, B, N A A requests S to supply a key for communication with B. 2. S->A:{N A, B, K AB, {K AB, A} K B } K A S returns a message encrypted in A’s secret key, containing a newly generated key K AB and a ‘ticket’ encrypted in B’s secret key. The nonce N A demonstrates that the message was sent in response to the preceding one. A believes that S sent the message because only S knows A’s secret key. 3. A->B: A sends the ‘ticket’ to B. 4. B->A: B decrypts the ticket and uses the new key K AB to encrypt another nonce N B. 5. A->B: A demonstrates to B that it was the sender of the previous message by returning an agreed transformation of N B. {K AB, A} K B {N B } K AB {N B - 1} K AB Variant used for authentication in Windows 2K (slightly modified – nonce added to msg 3)

Protection Mechanisms Examples of three protection domains

Access Control Lists (Example) Use of access control lists to manage file access

Capabilities (Example) Each process has a capability list

 The server may issue to each principal a list of capabilities.  A capability list is a row in the Access Control Matrix.  Notion of protection domain for a collection of processes:  A protection domain is a set of (object, access rights) pairs kept by a server.  A protection domain is created for each principal when it starts  Unix: each (uid,gid) pair spans a protection domain, e.g., user parts of two processes with same (uid, gid) pair have identical access rights.  Whenever a principal requests an operation to be carried out on an object, the access control monitor checks if the principal belongs to the object’s domain, and then if the request is allowed for that object.  Each principal can carry a certificate listing the groups it belongs to.  The certificate should be protected by a digital signature. Access Control