0% found this document useful (0 votes)
11 views38 pages

L4-SecurityInDistributedSystems

Uploaded by

Abdelrahman Azab
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views38 pages

L4-SecurityInDistributedSystems

Uploaded by

Abdelrahman Azab
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 38

COMM 527: Distributed Systems

Security Models in Distributed Systems


Learning Objectives

 Security model
 Types of threat
 Basic techniques
 Cryptographic techniques

Secrecy

Authentication

Certificates and credentials

Access control
 Audit trails
 Symmetric and asymmetric encryption algorithms
 Digital signatures
 Secure Socket Layer (SSL)

2
Why Security is so Important in DS?
 There is a pervasive need for measures to guarantee the
privacy, integrity, and availability of resources in distributed
systems.
 Security attacks take various forms: Eavesdropping,
masquerading, tampering, and denial of service.
 Designers of secure distributed systems must cope with the
exposed interfaces and insecure network in an environment
where attackers are likely to have knowledge of the
algorithms used to deploy computing resources.
 Cryptography provides the basis for the authentication of
messages as well as their secrecy and integrity.

3
How is Security in Real World?

 In the physical world, organizations adopt security policies


that provide the sharing of resources within specified limits.
 Company may permit entry to its building for its employees and for accredited
visitors.
 A security policy for documents may specify groups of employees who can
access classes of documents or it may be defined for individual documents
and users.
 Security policies are enforced with security mechanisms.
 Access to building may be controlled by a reception clerk, who issues badges
to accredited visitors, and enforced by security guard or by electronic door
locks.
 In electronic world, the distinction between security policy
and mechanisms is equally important.

4
Objects and Principals
Access rights Object
invocation

Client
result Server

Principal (user) Network Principal (server)

 Object (or resource)



Mailbox, system file, part of a commercial web site
 Principal

User or process that has authority (rights) to perform actions

Identity of principal is important

5
The Enemy
Copy of m

The enemy
m’
Process p Process q
m
Communication channel

 Attacks
 On applications that handle financial transactions or other

information whose secrecy or integrity is crucial


 Enemy (or adversary)
 Threats
 To processes, to communication channels, denial of

service
6
Secure Channels
Cryptography
Principal A The enemy Principal B

Processp Secure channel Processq

 Properties
Ownership of secrets:

Each process is sure of the identity of the other
Conventional shared crypto keys

Data is private and protected against tampering
Public/private key pair
Protection against repetition and reordering of data
 Employs cryptography

Secrecy based on cryptographic concealment

Authentication based on proof of ownership of secrets
7
Threats and Forms of Attack

 Security Threats - Three broad Classes:



Leakage: Acquisition of information by unauthorized recipients

Tampering: Unauthorized alteration of information

Vandalism: Interference with the proper operation of systems
 Method of Attacks:
 Eavesdropping - A form of leakage

obtaining private or secret information or copies of messages without authority.
 Masquerading – A form of impersonating

assuming the identity of another user/principal – i.e, sending or receiving messages using the identity of
another principal without their authority.
 Message tampering

altering the content of messages in transit

man in the middle attack (tampers with the secure channel mechanism)
 Replaying

storing secure messages and sending them at a later date
 Denial of service - Vandalism

flooding a channel or other resource, denying access to others

8
Threats not Defeated by Secure Channels or
Other Cryptographic Techniques
 Denial of service (DoS) attacks
 Deliberately excessive use of resources to the extent that they are

not available to legitimate users



E.g. the Internet 'IP spoofing' attack
 Trojan horses and viruses
 Viruses can only enter computers when program code is imported.

 But users often require new programs, for example:


New software installation

Mobile code downloaded dynamically by existing software (e.g. Java
applets)

Accidental execution of programs

9
The February 2000 IP Spoofing DDoS Attack

Campus intranets
Firewall

IP = n.n.n.i amazon.com
IP = x.x.x.x
Internet

yahoo.com
IP = y.y.y.y

Untrue!
Compromised host on each local network
sends repeatedly (for all i): Echo request | source = x.x.x.x | destination = n.n.n.i

resulting in: Echo reply | source = n.n.n.i | destination = x.x.x.x


10
Securing Electronic Transactions
 Email
 Traditionally no support for security.
 But it is important to Keep messages secret.
 Modern mail clients incorporate cryptography.
 Purchase of goods and services
 Banking transactions

11
Overview of Security Techniques
 Digital cryptography provides the basis for most
computer security mechanisms.
 Cryptography is an art of encoding information in a
format that only intended recipient can access.
 Cryptography can be used to provide a proof of
authenticity of information in a manner analogous to
the use of signature in conventional transactions.

12
Classes of Cryptography Algorithms

 There are two main classes:


 Shared Secret Keys:


The sender and recipient share a knowledge of the key and it
must not be revealed to anyone.
 Public/Private Key Pair:


The sender of a message uses a recipient’s public key to encrypt
the message.

The recipient uses a corresponding private key to decrypt the
message.
 Uses of Cryptography:
 Secrecy and integrity (to stop eavesdropping and tampering) + also

use redundant information (checksums) for maintaining integrity.


 Authentication

 Digital Signatures

13
Security Notations –
Familiar Names and Notations in Security Literature

KA Alice’s secret key


KB Bob’s secret key
KAB Secret key shared between Alice and Bob
KApriv Alice’s private key (known only to Alice)
KApub Alice’s public key (published by Alice for all to read)
{M} Message M encrypted with key K
K
[M]K Message M signed with key K

Alice First participant


Bob Second participant
Carol Participant in three- and four-party protocols
Dave Participant in four-party protocols
Eve Eavesdropper
Mallory Malicious attacker
Sara A server
14
Cryptographic Algorithms
Message M, key K, published encryption and decryption functions E, D
 Symmetric (secret key)
E(K, M) = {M}K D(K, E(K, M)) = M
Same key for E and D
M must be hard (infeasible) to compute if K is not known.
Usual form of attack is brute-force: try all possible key values for a known pair M, {M} K.
Resisted by making K sufficiently large ~ 128 bits
 Asymmetric (public key)
Separate encryption and decryption keys: Ke, Kd

E(Ke, M) = {M} Ke D(Kd. E(Ke, M)) = M


depends on the use of a trap-door function to make the keys. E has high computational cost.
Very large keys > 512 bits
 Hybrid protocols - used in SSL (now called TLS)
Uses asymmetric crypto to transmit the symmetric key that is then used to encrypt a session.

15
Secret Communication with a Shared Secret Key

Alice wishes to send some information secretly. Alice and Bob share a
secret key KAB.
1. Alice uses KAB and an agreed encryption function E(KAB, M) to
encrypt and send any number of messages {Mi}KAB to Bob.
2. Bob reads the encrypted messages using the corresponding
decryption function D(KAB, M).
Alice and Bob can go on using KAB as long as it is safe to assume that KAB has not been
compromised.
Issues:
 Key distribution: How can Alice send a shared key KAB to Bob securely?
 Freshness of communication: How does Bob know that any {Mi} isn’t a copy of an
earlier encrypted message from Alice that was captured by Mallory and replayed
later? Problem: if the message is a request to pay some money to someone. Mallory
might trick Bob into paying twice?

16
The Secret-Key Encryption Model

17
Authenticated Communication with Public Keys

Bob has a public/private key pair <KBpub, KBpriv> & establishes KAB as
follows:
1.Alice obtains Bob's public key KBpub
2.Alice creates a new shared key KAB , encrypts it using KBpub using a
public-key algorithm and sends the result to Bob.
3. Bob uses the corresponding private key KBpriv to decrypt it.
(If they want to be sure that the message hasn't been tampered with, Alice can add an
agreed value to it and Bob can check it.)

 Mallory might intercept Alice’s initial request to a key


distribution service for Bob’s public-key certificate and send a
response containing his own public key. He can then intercept
all the subsequent messages.
18
The Public-Key Encryption Model

19
The Public-Key Authentication Model

20
Digital Signatures

22
Certificates

 Similar to passport or driver’s license

Name Rajkumar Buyya


Issuer 111, Barry Street State of
Victoria
Public Key Carlton Seal
Signature BD 01-0X-197X
Male 165cms, 65Kg
B&W Eyes

23
Your New Certificate

Certificate: Validity Start


Data:
Version: 3 (0x2)
Serial Number: 28 (0x1c)
Signature Algorithm: md5WithRSAEncryption
Issuer: C=US, O=VeriSign, CN=VeriSign Certification Authority
Validity
Not Before: Apr 22 19:21:50 2003 GMT
Not After : Apr 22 19:21:50 2004 GMT
Subject: /O=Grid/O=Globus/OU=cs.mu.oz.au/CN=Rajkumar Buyya
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (1024 bit)
Modulus (1024 bit):
00:bf:4c:9b:ae:51:e5:ad:ac:54:4f:12:52:3a:69:
<snip>
b4:e1:54:e7:87:57:b7:d0:61
Exponent: 65537 (0x10001)
Signature Algorithm: md5WithRSAEncryption
59:86:6e:df:dd:94:5d:26:f5:23:c1:89:83:8e:3c:97:fc:d8:
<snip>
8d:cd:7c:7e:49:68:15:7e:5f:24:23:54:ca:a2:27:f1:35:17:
24
Certification Authorities (CAs)
 A small set of trusted entities
known as Certification Authorities
(CAs) are established to sign
certificates
 A Certification Authority is an
entity that exists only to sign user Name: CA
Issuer: CA
certificates
CA’s Public Key
 The CA signs its own certificate CA’s Signature
which is distributed in a trusted
manner

25
Access Control
 Protection domain
 A set of <resource, rights> pairs

 Two main approaches to implementation:

 Access Control List (ACL) associated with each object


E.g. UNIX file access permissions

For more complex object types and user communities,
ACLs can become very complex
 Capabilities associated with principals
drwxr-xr-x gfc22 staff 264 Oct 30 16:57 Acrobat User Data
-rw-r--r--

Like a key
gfc22 unknown 0 Nov 1 09:34 Eudora Folder
-rw-r--r-- gfc22 staff 163945 Oct 24 00:16 Preview of xx.pdf
drwxr-xr-xFormat:

gfc22 <resource
staff id,
264permitted operations,
Oct 31 13:09 iTunes
-rw-r--r-- gfc22 staff 325 Oct 22 22:59 list of broken apps.rtf
authentication code>

26
Kerberos Authentication and Key Distribution
Service
 Secures communication with servers on a local network
 Developed at MIT in the 1980s to provide security
across a large campus network > 5000 users
 Standardized and now included in many operating systems
 Internet RFC 1510, OSF DCE
 BSD UNIX, Linux, Windows 2000, NT, XP, etc.
 Available from MIT
 Kerberos server creates a shared secret key for any required
server and sends it (encrypted) to the user's computer
 User's password is the initial secret shared with Kerberos

27
System Architecture of Kerberos
Needham - Schroeder
TGS: Ticket-
Kerberos Key Distribution Centre S protocol
granting
service Authentication 1. A->S: A, B, NA
database
Step A Authen- Ticket-
Granting
2. S->A: {NA , B, KAB,
tication
1. Request for service A Service T
TGS ticket {KAB, A}KB}KA
2. TGS 3. A->B: {KAB, A}KB
ticket
Step B 4. B->A: {N }K
B AB
3. Request for
server ticket 5. A->B: {NB - 1}KAB
Login Step C
session setup
4. Server ticket
5. Service N is a random number caller
Server request nonce to prevent replay attack
session setup Service
function
Request encrypted with session key
DoOperation
Reply encrypted with session key Step A once per login session

Step B once per server session

Client Server Step C once per server transaction


A B

28
What are Intrusions?

 Intrusions are actions that attempt


to bypass security mechanisms of
computer systems. They are
caused by:
– Attackers accessing the system from
Internet
– Insider attackers - authorized users
attempting to gain and misuse non-
authorized privileges
Compute
 Typical intrusion scenario
r
Scanning Network
activity

Attacker Machine with


vulnerability
29
What are Intrusions?

 Intrusions are actions that attempt


to bypass security mechanisms of
computer systems. They are
caused by:
– Attackers accessing the system from
Internet
– Insider attackers - authorized users
attempting to gain and misuse non-
authorized privileges
Compute
 Typical intrusion scenario
r
Scanning Network
activity

Attacker Compromised
Machine
30
Intrusion Detection Systems
 Intrusion Detection System
– Combination of software and hardware that attempts to perform intrusion detection
– Raises the alarm when possible intrusion happens Example of SNORT
 Traditional intrusion detection system IDS tools are based on rule
signatures of known attacks (MS-SQL “Slammer” worm)
 Limitations any -> udp port 1434
– Signature database has to be manually revised
for each new type of discovered intrusion
(content:"|81 F1 03 01 04
– Substantial latency in deployment of newly created signatures across the computer 9B 81 F1 01|";
system content:"sock";
– They cannot detect emerging cyber threats content:"send")
– Not suitable for detecting policy violations and insider abuse
– Do not provide understanding of network traffic
– Generate too many false alarms
– Not suited for detecting multi-step attacks www.sno
rt.org

31
Data Mining for Intrusion Detection

Increased interest in data mining based intrusion detection


• Attacks for which it is difficult to build signatures
• Unforeseen/Unknown/Emerging attacks
Misuse detection
 Building predictive models from labeled data sets (instances are labeled as
“normal” or “intrusive”) to identify known intrusions
 High accuracy in detecting many kinds of known attacks
 Cannot detect unknown and emerging attacks
Anomaly detection
 Detect novel attacks as deviations from “normal” behavior
 Potential high false alarm rate - previously unseen (yet legitimate) system
behaviors may also be recognized as anomalies

32
Secure Socket Layer (SSL)

 Key distribution and secure channels for internet commerce



Hybrid protocol; depends on public-key cryptography

Originally developed by Netscape Corporation (1994) and supported by most
browsers and is widely used in Internet commerce.

Extended and adopted as an Internet standard with the name Transport Level
Security (TLS) – and several software libraries and toolkits are available to support
it [www.openssl.org]

Provides the security in all web servers and browsers and in secure versions of
Telnet, FTP and other network applications
 Key Feature

Negotiable encryption and authentication algorithms. In an open network we
should NOT assume that all parties use the same client software or all client/server
software includes a particular encryption algorithms.
 Design requirements

Secure communication without prior negotiation or help from third parties

Free choice of crypto algorithms by client and server

communication in each direction can be authenticated, encrypted or both 33
Secure Socket Layer (SSL)

 The secure channel is fully configurable.


 TLS consists of two layers:
 TLS Record Protocol Layer: implements a secure channel,
encrypting and authenticating messages transmitted through
any connection oriented protocol. It is realized at session layer.
 Handshake Layer: Containing Handshake protocol and two
other related protocols that establish and maintain a TLS
session (i.e., secure channel) between client and server.

Both layers are implemented by software libraries at application


level in the client and the server.

34
SSL Protocol Stack
changes the
secure channel
to a new spec

negotiates cipher
suite, exchanges SSL
Handshake SSL Change SSL Alert
certificates and key HTTP Telnet
masters Cipher Spec Protocol
protocol

implements the
secure channel SSL Record Protocol

Transport layer (usually TCP)

Network layer (usually IP)

SSL protocols: Other protocols:

35
TLS/SSL Handshake Protocol
(Handshake is Performed over an Existing Connection)

ClientHello Establish protocol version, session ID,


cipher suite, compression method,
ServerHello exchange random start values

Certificate
Certificate Request Optionally send server certificate and
request client certificate
ServerHelloDone

Client Certificate Server Send client certificate response if


A Certificate Verify B requested

Change Cipher Spec


Change cipher suite and finish
Finished
handshake
Change Cipher Spec
Finished

36
SSL Handshake Configuration Options

Component Description Example


Key exchange the method to be used for RSA with public-key
method exchange of a session key certificates
Cipher for data the block or stream cipher to be IDEA (International Data
transfer used for data Encryption Algorithm)
Message digest for creating message SHA (Secure Hash Algorithm)
function authentication codes (MACs)

37
SSL Record Protocol Operation: A Pipeline for
Data Transformation
abcdefghi
Application data
Fragment/combine

Record protocol units abc def ghi

Compress
Compressed units

Hash
MAC
Encrypt

Encrypted
Transmit

TCP packet

38
Summary

 Threats for the security in distributed systems are pervasive.


 It is essential to protect the resources, communication
channels and interfaces of distributed systems and applications
against attacks.
 Public-key and secret-key (shared-key) cryptography provide
the basis for authentication and for secure communication.
 Kerberos and SSL are widely used system components that
support secure and authenticated communication.
 Intrusions must be detected and dealt with to prevent thieves
from breaking your security.

39

You might also like