Transcript Document
CS 5950 –
Computer Security and Information Assurance
Section 5: Security in Networks – Part 2
This is the short version of Section 5.
It does not includes OPTIONAL slides that you may SKIP.
OPTIONAL details can be seen in the longer version of Section 5.
Dr. Leszek Lilien
Department of Computer Science
Western Michigan University
Slides based on Security in Computing. Third Edition by Pfleeger and Pfleeger.
Using some slides courtesy of:
Prof. Aaron Striegel — course taught at U. of Notre Dame
Prof. Barbara Endicott-Popovsky and Prof. Deborah Frincke (U. Idaho) — taught at U. Washington
Prof. Jussipekka Leiwo — taught at Vrije Universiteit (Free U.), Amsterdam, The Netherlands
Slides not created by the above authors are © 2006 by Leszek T. Lilien
Requests to use original slides for non-profit purposes will be gladly granted upon a written request.
© 2006-2007 by Leszek T. Lilien
Section 5 – Computer Security and Information Assurance
Covered earlier (in Section 2):
Security in Networks – Part 1 – Outline
(1)
Outline of Part 1 of Security in Networks (covered in Section 2)
2.1. Network Concepts
a)
b)
c)
d)
e)
f)
g)
h)
i)
Introduction
The network
Media
Protocols
Types of networks
Topologies
Distributed systems
APIs
Advantages of computing networks
2.2. Threats in Networks
a)
b)
c)
d)
e)
f)
Introduction
Network vulnerabilities
Who attacks networks?
Threat precursors
Threats in transit: eavesdropping and wiretapping
Protocol flaws
2
© 2006-2007 by Leszek T. Lilien
Section 5 – Computer Security and Information Assurance
Covered earlier (in Section 2):
Security in Networks – Part 1 – Outline
(2)
2.2. Threats in Networks - ctd
g) Types of attacks
g-1) Impersonation
g-2) Spoofing
g-3) Message confidentiality threats
g-4) Message integrity threats
g-5) Web site attacks
g-6) Denial of service
g-7) Distributed denial of service
g-8) Threats to active or mobile code
g-9) Scripted and complex attacks
h) Summary of network vulnerabilities
3
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
Security in Networks – Part 2 – Outline
Outline of Part 2 of Security in Networks (covered here)
5.1. Network Security Controls
a)
b)
c)
d)
e)
f)
(1)
Introduction
Security threat analysis
Impact of network architecture/design and implementation on security
Encryption
i. Link encryption vs. end-to-end (e2e) encryption
ii. Virtual private network (VPN)
iii. PKI and certificates
iv. SSH protocol
v. SSL protocol (a.k.a. TLS protocol)
vi. IPsec protocol suite
vii. Signed code
viii. Encrypted e-mail
Message content integrity controls
i. Error correcting codes
ii. Cryptographic checksum
Strong authentication
i. One-time passwords
ii. Challenge-response systems
iii. Digital distributed authentication
iv. Kerberos authentication system
4
© 2006-2007 by Leszek T. Lilien
Security in Networks – Part 2 – Outline
(2)
5.1. Network Security Controls—ctd.
g)
Access controls
i. ACLs on routers
ii. Firewalls
h) Intrusion Detection Systems: alarms and alerts
i) Honeypots
j) Traffic flow security
k) Review of network security controls
Section 5 – Computer Security and Information Assurance
5.2. Network Security Tools
5.2.1. Firewalls
a)
b)
c)
d)
Introduction
What is a firewall
Firewall design
Types of firewalls
i. Packet filters
(i-1) Simple packet filters
(i-2) Stateful packet filters
ii. Application proxies
(ii-1) Guards
(“top model” subcategory)
iii. Personal firewalls
e) Comparison of firewall types
f) Example firewall configurations
g) What firewalls can—and can’t—block
5
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
Security in Networks – Part 2 – Outline
(3)
5.2. Network Security Tools—ctd.
5.2.2. Intrusion Detection Systems
a) Introduction
b) Types of IDSs
i. Signature-based IDSs
ii. Anomaly-based IDSs
iii. Other IDSs
c) Goals for IDSs
d) IDS strengths and limitations
5.2.3. Secure E-Mail
a)
b)
c)
d)
Introduction
Security for e-mail
Design of PEM (Privacy-enhanced Electronic Mail)
Example secure e-mail systems
i. PGP
ii. S/MIME
6
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
5. Network Security – Part 2
Part 1 of Security in Networks was covered in lecture
Section 2
Part 2 of Security in Networks is covered in this lecture
Section 5, as follows:
5.1. Network Security Controls
5.2. Network Security Tools
7
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
5.1. Networks Security Controls
Outline
a) Introduction
b) Security threat analysis
c) Impact of network architecture/design and
implementation on security
d) Encryption
e) Content integrity
f) Strong authentication
g) Access controls
h) Alarms and alerts
i) Honeypots
j) Traffic flow security
k) Controls review
8
© 2006-2007 by Leszek T. Lilien
a. Introduction
We will see many security controls:
In Section 6 on Program Security (incl. s/w engineering
issues)
(OPTIONALLY: In Section on OS Security)
Many of these strategies are useful for network security as
well
We will now look for security controls designed specifically
for computer networks
Section 5 – Computer Security and Information Assurance
9
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
b. Security threat analysis (1)
Threat analysis steps :
1) Analyze system components and their interactions
2) Analyze possible damage to C-I-A
3) Hypothesize possible kinds of attacks
Network elements to be considered:
Local elements
Nodes / comm links / data storage / processes / devices / LANs
Non-local elements
Gateways / comm links / control resources / routers / network
resources (e.g., databases)
10
© 2006-2007 by Leszek T. Lilien
Security threat analysis (2)
Network threats:
Accessing pgms or data at remote host
Modifying pgms or data at remote host
Running a pgm at a remote host
Interception of data in transit
Modifying data in transit
Insertion of data into communication traffic
Incl. replaying previous communication
Blocking selected/all traffic
Impersonation of entities
Section 5 – Computer Security and Information Assurance
Attack enablers:
Size / anonymity / ignorance / misunderstanding
Complexity / motivation / programming skills
11
© 2006-2007 by Leszek T. Lilien
c. Impact of network architecture/
design & implement. on security (1)
Section 5 – Computer Security and Information Assurance
Security principles for good analysis, design,
implementation, and maintenance (as discussed in sections on
Pgm Security and OS Security) apply to networks
Architecture can improve security by:
1) Segmentation
2) Redundancy
3) Single points of failure
4) Other means
12
© 2006-2007 by Leszek T. Lilien
Impact of network architecture/ design & implement. on security (2)
1)
Segmentation
Section 5 – Computer Security and Information Assurance
Architecture should use segmentation to limit scope of
damage caused by network penetration by:
Reducing number of threats
Limiting amount of damage caused by single exploit
Enforces least privilege and encapsulation
Example 1: component segmentation
Placing different components of e-commerce system
on different hosts
Esp. put on separate host most vulnerable system
components
E.g., separate host for web server (w/ public access)
Exploit of one host does not disable entire system
13
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
Impact of network architecture/ design & implement. on security (3)
Example 2: access separation
Separating from each other:
Production system
Testing system
Development system
E.g., no developer has access to production system
and no customer has access to development system
14
© 2006-2007 by Leszek T. Lilien
Impact of network architecture/ design & implement. on security (4)
2) Redundancy
Architecture should use redundancy to prevent losing
availability due to exploit/failure of a single network
entity
Example: having a redundant web server (WS) in a
company
Section 5 – Computer Security and Information Assurance
Types of redundancy include:
Cold spare – e.g., when WS fails, replace it manually
with spare WS
Warm spare – e.g., failover mode = redundant WSs
periodically check each other
Hot spare – e.g., 3 WSs configured to perform
majority voting
15
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
Impact of network architecture/ design & implement. on security (5)
3) Single points of failure (SPF)
Architecture should eliminate SPFs to prevent losing availability
due to exploit/failure of a single network entity
Using redundancy is a special case of avoiding SPFs
Network designers must analyze network to eliminate all
SPFs
Example of avoiding SPF (without using redundancy)
Distribute 20 pieces of database on 20 different
hosts (so called partitioned database)
Even if one host fails, 95% of database contents
(19/20=95%) still available
Elimination of SPFs (whether using redundancy or not)
adds cost
16
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
Impact of network architecture/ design & implement. on security (6)
4) Other architectural means for improving security
Will be mentioned below as we discuss more network
security controls
17
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
d. Encryption
Arguably most important/versatile tool for network security
We have seen that it can be used for:
Confidentiality/Privacy
Authentication
Integrity
Limiting data access
Kinds of encryption in networks:
i. Link encryption vs. end-to-end (e2e) encryption
ii. Virtual private network (VPN)
iii. PKI and certificates
iv. SSH protocol
v. SSL protocol (a.k.a. TLS protocol)
vi. IPsec protocol suite
vii. Signed code
viii. Encrypted e-mail
18
© 2006-2007 by Leszek T. Lilien
(i) Link vs. end-to-end encryption
1)
Link encryption = between 2 hosts
Data encrypted just before they are placed on physical
communication links
At OSI Layer 1 (or, perhaps, Layer 2)
Section 5 – Computer Security and Information Assurance
(1)
Fig. 7-21, p. 431
Properties of link encryption (cf. Fig. 7-21)
Msgs/pkts unprotected inside S’s/R’s host
I.e., unprotected at OSI layers 2-7 of S’s/R’s host
(in plaintext)
Packets protected in transit between all hosts
Pkts unprotected inside intermediate hosts
I.e., unprotected at OSI layers 2-3 of interm. hosts
=> unprotected at data link and network layers at
intermediate hosts (if link encryption at Layer 1)
Layers 2-3 provide addressing and routing
19
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
Link vs. end-to-end encryption (2)
Link encryption is transparent (invisible) to users, their
applications, and their OSs
Encryption service provided by physical (or data) layer
Can use encryption h/w (link encryption device)
Message under link encryption
Fig. 7-22, p. 432
See which portions encrypted, which exposed
Only part of data link header & trailer created after
encryption is exposed
Link encryption is useful when transmission line is most
vulnerable in a network
I.e., when S’s host, intermediate hosts, R’s host are reasonably
secure (so msgs/pkts at their Layers 2-7 can be exposed)
20
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
Link vs. end-to-end encryption (3)
2) End-to-end encryption = between 2 user applications
Data encrypted as „close” to app as possible
At OSI Layer 7 (or, perhaps, Layer 6)
Fig. 7-23, p. 433
Properties of e2e encryption (cf. Fig. 7-21)
Msgs/pkts protected all the way once they „exit” S’s
app & before they enter R’s app
Msgs/pkts protected (in ciphertext) inside S’s/R’s host
Packets protected in transit between S’s & R’s
hosts
Including protection inside intermediate hosts
I.e., protected at OSI layers 1-3 of interm. hosts
Layers 1-3 provide physical connectivity, addressing and
routing for packets
21
© 2006-2007 by Leszek T. Lilien
Link vs. end-to-end encryption (4)
Possibly provided only upon explicit user’s request => visible to
user
Section 5 – Computer Security and Information Assurance
e2e encryption is visible either to users or their apps
Encryption service provided by app or OS
Encryption by s/w
Message under e2e encryption
Fig. 7-24, p. 433
See which portions encrypted, which exposed
Only user’s msg (user’s data) encrypted
All headers & trailers exposed (all created after
encryption)
E2e encryption is useful when transmission lines and
intemediate hosts are insecure
22
© 2006-2007 by Leszek T. Lilien
Link vs. end-to-end encryption (5)
Comparison of link vs. e2e encryption
Encryption of msgs/packets (whether link or e2e
encryption) is no silver bullet
No guarantees of msg/packet security
1) Link encryption — encrypts all traffic over physical link
Typically host H has one link into network
=> link encryption encrypts all H’s traffic
Section 5 – Computer Security and Information Assurance
Every H —incl. intermediate hosts— receiving traffic
via link encryption must have decryption capabilities
Either (pairs of) hosts share symmetric key
OR
Hosts use asymmetric keys
All hosts along a path from S to R must provide link
encryption to prevent („partial”) packet exposure
=> usu. link encryption provided on all network links
23
© 2006-2007 by Leszek T. Lilien
Link vs. end-to-end encryption (6)
2) End-to-end (e2e) encryption — encrypts traffic only
between 2 apps („virtual crypto channel between 2 apps”)
Interm. hosts don’t need to decrypt-encrypt pkts
=> interm. hosts don’t need encryption facilities
Encrypts only some msgs between 2 apps
Section 5 – Computer Security and Information Assurance
All interm. hosts save time/processing
If no need to encrypt all msgs => even S’s and R’s hosts
save time/processing
If needed, can encrypt all msgs
Using asymmetric keys requires fewer keys than
using symmetric keys (n key pairs vs. n*(n-1)/2 keys)
24
© 2006-2007 by Leszek T. Lilien
Link vs. end-to-end encryption (7)
Comparison conclusions
Link encryption:
Faster
Easier to use
Uses fewer keys (1 K pair per host pair vs. 1 K pair per app pair)
Section 5 – Computer Security and Information Assurance
End-to-end (e2e) encryption:
More flexible
More selective (can select only some msgs for encryption)
User-level, can be integrated with app
Optimize whether link or e2e encryption better for you
If needed for higher security, use link and e2e encryption
together
E.g., user not trusting network link encryption can use
app with e2e encryption
25
© 2006-2007 by Leszek T. Lilien
(ii) Virtual private network (VPN)
Section 5 – Computer Security and Information Assurance
Virtual private network (VPN) = connection over public
network giving its user impression of being on private
network
It could be viewed as „logical link” encryption
Could be viewed as e2e encr. between client & server
Protecting remote user’s connection with her network
Greatest risk for remote connection via public network:
Between user’s workstation (client) and perimeter of
„home” network (with server)
User’s
Workstation
(Client)
(1)
Firewall
Internal
Server
Physically Protected Network Perimeter
Firewall protects network against external traffic (more later)
26
© 2006-2007 by Leszek T. Lilien
Virtual private network (VPN) (2)
Example VPN connection scenario
1
User’s
Workstation
(Client)
2
3
Firewall
Internal
Server
Physically Protected Network Perimeter
Section 5 – Computer Security and Information Assurance
1 – C authenticates to firewall
(firewall passes user’s authentic. data to authentic. server [not
shown], which decides whether authentication is OK)
2 – Firewall replies with encryption key
(after negotiating with C a session encryption key)
3 – C and S communicate via encrypted tunnel
VPN restricts filters access to „home” server/network
Only „private” accesses allowed
=> public network access feels like private network
27
© 2006-2007 by Leszek T. Lilien
(iii) PKI and certificates
Public key infrastructure (PKI) = enables use of public key
cryptography (asymmetric cryptography)
Usually in large & distributed environment
Elements of PKI:
1) Policies (higher level than procedures)
Define rules of operation
Section 5 – Computer Security and Information Assurance
(1)
E.g., how to handle keys and sensitive info
E.g., how to match control level to risk level
2) Procedures (lower level than policies)
Dictate how keys should be generated, managed,
used
3) Products
Implement policies and procedures
Generate, store, manage keys
28
© 2006-2007 by Leszek T. Lilien
PKI and certificates (2)
PKI services:
1) PKI creates certificates
Certificate binds entity’s identity to entity’s public key
Entity = user or system or applicationor ...
2) PKI gives out certificates from its database
3) PKI signs certificates
Adding its credibility to certificate’s authenticity
When queried about it
Section 5 – Computer Security and Information Assurance
4) PKI confirms/denies validity of a certificate
5) PKI invalidates certificates
For entities that are no longer certified by PKI
OR
For entities whose private key has been exposed
29
© 2006-2007 by Leszek T. Lilien
PKI and certificates (3)
PKI sets up:
1) Certificate authorities (CAs)
2) Registration authority
1) Certificate authority (CA)
CA can be in-house or external (commercial TTP =
trusted third party)
CA is trusted
Section 5 – Computer Security and Information Assurance
Entities delegate to CA creation, issuance, acceptance, and
revocation of their certificates
CA actions:
Managing public key certificates (whole life cycle)
Issuing certificates by binding entity’s identity to its
public key
Binding is done via CA’s digital signature
By publishing revocation lists
Determining expiration dates for certificates
Revoking certificates when necessary
30
© 2006-2007 by Leszek T. Lilien
PKI and certificates (4)
Example of CA analog: credit card company (CCC)
Certificate analog: credit card (binds identity to account)
Revocation list analog: lists of invalid credit cards
CCC is trusted
Section 5 – Computer Security and Information Assurance
Customers delegate to CCC creation, issuance, acceptance,
and revocation of their credit cards
CCC actions:
Managing credit cards (whole life cycle)
Issuing credit cards by binding customer’s identity
to customer’s account
Binding is done via CCC’s protected databases
By checking list of invalid credit cards
(before computer-verification transaction era, CCC
published booklets of invalidated credit cards)
Determining expiration dates for credit cards
Revoking credit cards when necessary
31
© 2006-2007 by Leszek T. Lilien
PKI and certificates (5)
2) Registration authority (RA) = interface between user and CA
Duties:
Capture and authenticate user’s identity
Submit certificate requests to appropriate CA
Analog: U.S. Citizen applying for passport and U.S.
Postal Service (USPS)
Passport (official U.S. authentication) <-> certificate
Section 5 – Computer Security and Information Assurance
USPS authenticates citizen
By verifies citizen’s driver license + other proofs of identity
Passport office <-> CA
USPS submits passport request forms to appropriate
passport office of the U.S. Gov’t
USPS brings passport to customer’s home
Note: Trustworthiness of USPS authentication
determines level of trust that can be placed in
passports
32
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
PKI and certificates (6)
PKI efforts stateside and overseas
Building PKI for various purposes
E.g., Federal PKI Initiative – to provide secure
communication to U.S. gov’t agencies
It also specifies how commercial s/w using PKI
should operate (so gov’t can use off-the-shelf products)
Major PKI product vendors in the U.S.:
Baltimore Technologies
Northern Telecom/Entrust
Identrus
Certificates can bind:
Identity to public key – classic, most common
Other bindings under research
E.g., binding financial status to key (credit card companies)
Draft standards: ANSI X9.45, Simple Public Key
Infrastructure (SPKI)
33
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
PKI and certificates (7)
PKI is not yet mature
Many outstanding issues
Cf. Table 7-6, p. 439
Still, many points are clear:
CA should be approved/verfied by independent body
CA’s private keys must be stored in tamper-resistant
security module (maybe with h/w support)
Access to CAs and RAs should be tightly controlled
Using strong authentication (e.g., 2FA [2-factor authentication] or
3FA [3-factor authentication] with smart cards)
34
© 2006-2007 by Leszek T. Lilien
(iv) SSH protocol
SSH protocol (newer: v.2) – provides authenticated and
encrypted communication with shell/OS command
interpreter
Originally defined for Unix
Replaced insecure utilities for remote access
Such as Telnet / rlogin / rsh
Protects against spoofing attacks (falsifying one end of
Section 5 – Computer Security and Information Assurance
(SSH = Secure SHell)
communication, incl. masquerading, sesssion hijacking, MITM) &
message modification / falsification
Involves negotiation between local and remote sites
Negotiate which encryption algorithm to use
E.g., DES? IDEA? AES?
Negotiate which authentication technique to use
E.g., public key? Kerberos?
35
© 2006-2007 by Leszek T. Lilien
(v) SSL protocol (a.k.a. TLS prot.)
(1)
SSL protocol (v3) = (approx.) TLS protocol - interfaces
betwen app (on client C) and TCP/IP protocols to provide
server S authentication, optional C authentication, and
encrypted communication channel between C and S for
session between C and S
SSL = Secure Sockets Layer / TLS = Transport Layer Security
Section 5 – Computer Security and Information Assurance
Simple but effective – most widely used secure communication protocol on Internet (incl. WWW browsers/servers)
Originally defined by Netscape to protect browser-to-server
communication
Involves negotiation between C and S
Negotiate which encryption suite to use for session
E.g., DES? RC4 w/ 128-bit/40-bit key? RC2? Fortezza? [Bishop]
Negotiate which hashing technique to use for session
E.g., SHA1 or MD5?
36
© 2006-2007 by Leszek T. Lilien
SSL protocol (a.k.a. TLS protocol) (2)
SSL use scenario (handshake protocol)
C requests an SSL session by sending: Hello-C, Rand-C
(random nr), list of cipher (encryption) algorithms & hash
algorithms known to C
S responds with msgs including: Hello-S, Rand-S,
cipher & hash algorithm selected by S (from C’s list) , S’s
certificate, KPUB-S, [SKIP: request for cert. fr. C]
Section 5 – Computer Security and Information Assurance
Hash used to checksum messages
C can use S’s certificate
(X.509v3 cert.)
to verify S’s authenticity
[SKIP: C replies with: C’s certificate]
C returns „pre-master secret” encrypted under KPUB-S
Pre-master secret - e.g., 48 random B if selected cipher is RSA [BishopCompSec-A&S, p.296]
...continued...
37
© 2006-2007 by Leszek T. Lilien
SSL protocol (a.k.a. TLS protocol) (3)
...continued...
„Pre-master secret”
Constant strings ‘A’, ‘BB’ and ‘CCC’
Rand-C and Rand-S,
SHA hashing algorithm
[ibid, p. 294]
C and S switch to encrypted communication using
„master secret” as session key
C and S exchange application data for session duration
TLS is potentially vulnerable to MITM attacks
Section 5 – Computer Security and Information Assurance
C and S calculate „master secret” using:
(i.e., for as long as they stay connected)
[Conklin eta al., p.163]
38
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
(vi) IPsec protocol suite (1)
IPsec (IP Security Protocol Suite) = standard for securing
IP communications by encrypting and/or authenticating all
IP packets
IPsec is public (published / scrutinized)
By design, protects against threats including:
spoofing (incl. session hijacking) / eavesdropping
Choice of ciphers/hash protocols
Communicating parties negotiate which ones to use
IPsec defines some ciphers/hash as required in every
IPsec implementaion
39
© 2006-2007 by Leszek T. Lilien
IPsec protocol suite (2)
IPsec provides security at IP layer in IPv6 or IPv4[Stall.p.499]
IP versions:
IPv4 = v.4 — older IP protocol version (still in use)
IPv6 = v.6 — newer IP protocol version
IPv6 — larger address space
Section 5 – Computer Security and Information Assurance
IPv6 — also other functional enhancements
Developed (1992-1998) since IPv4 runs out of address space
— IPv4 has 32-bit source/destination addresses
— IPv6 has 128-bit source/destination addresses
To accommodate faster networks
To accommodate mix of multimedia data streams
IPsec protects all layers above IP layer (where it „resides”)
In particular, protects TCP or UDP protocols
Protects „automatically”
Protects transparently (no modifications to TCP, UDP
needed)
40
© 2006-2007 by Leszek T. Lilien
IPsec protocol suite (3)
Basis of IPsec: security association (SA) = set of security
parameters for a secured 1-way communication channel
2 SAs needed for 2-way communication [St,487]
Components of SA:
1) Encryption algorithm and „mode”
Section 5 – Computer Security and Information Assurance
2)
3)
4)
5)
E.g., for DES, mode = CDC – cipher bloc chaining
Encryption key
Encryption params (e.g., initialization vector for encryption)
Authentication protocol and key
SA lifespan
Allows long-running sessions to select new crypto key
6) Address of opposite end of SA (source <---> destination)
7) Sensitivity level of protected data
(e.g., unclassified / restricted /
confidential / secret / top secret)
41
© 2006-2007 by Leszek T. Lilien
IPsec protocol suite (4)
Resides on each host H running IPsec
Used to select 1 of n SAs that exist on H
Section 5 – Computer Security and Information Assurance
Security parameter index (SPI) data structure
Different SAs for concurrent communications with different
remote Hs
Fundamental IPsec data structures / protocols
1) AH = authentication header / AH protocol
For authentication-only IPsec service:
Authenticates S (sender )
2) ESP = encapsulated security payload / ESP protocol
For encryption-only IPsec service
OR
For combined encryption/authentication
IPsec service
42
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
IPsec protocol suite (5)
IPsec can be used for various crypto sessions:
VPN
e2e (incl. app 2 app)
For network mgmt (e.g., for routing)
IPsec scenario
TCP layer passes conventional TCP Header & Data down
to IP layer
IP layer calls upon IPsec to encapsulate conventional TCP
Header & Data into ESP (encapsulated security payload)
Fig. 7-28, p. 441
IP layer adds IP Header
IP layer passes packet down to physical layer
Physical layer adds Physical Header & Physical Trailer
43
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
--SKIPped a slide--
You can see all SKIPped slides
in the LONG version of Section 5.
(The SKIPped slides are OPTIONAL,
not required for exams.)
44
© 2006-2007 by Leszek T. Lilien
IPsec protocol suite (7)
ISAKMP (Internet Security Association Key Management
Protocol) = key mgmt protocol for IPsec
In IPsec, ISAKMP implemented via IKE (ISAKMP Key
Exchange)
Section 5 – Computer Security and Information Assurance
ISAKMP is simple, flexible, scalable
Distinct key for each IPsec security association (SA)
Key mgmt is always a critical element in crypto apps
IKE properties
Provides ways to agree on protocols, cipher and
authentication algorithms, keys
E.g., agree as follows: protocol = EPS, cipher = triple DES;
authentication alg. = SHA-1; key used for session
Provides ways to manage protocols, cipher and
authentication algorithms, keys
Uses key exchange protocol based on DiffieHellman scheme
45
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
--SKIPped a slide--
You can see all SKIPped slides
in the LONG version of Section 5.
(The SKIPped slides are OPTIONAL,
not required for exams.)
46
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
vii. Signed code
Problem: malicious active code
E.g., malicious code on a web site for downloads
Partial solution: code signed by TTP (trusted third party)
TTP appends digital signature to piece of code
PKI can be used by prospective code users to validate
signature
Still code security not guaranteed
E.g., March 2001 mistake of Verisign (CA)
Erronously issued two code-signing certificates to
impostors masquerading as Microsoft employees
Verisign detected mistake after almost 2 months
Customers who didn’t validate certificate (by checking
Verisign’s certificate revocation list) could still trust bad
certificates
47
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
--SKIPped-- a few slides
You can see all SKIPped slides
in the LONG version of Section 5.
(The SKIPped slides are OPTIONAL,
not required for exams.)
48
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
f) Strong authentication
Networked environments as well as both ends of
communication need authentication
Strong authentication controls include:
i. One-time passwords
ii. Challenge-response systems
iii. Digital distributed authentication
iv. Kerberos authentication system
49
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
--SKIPped-- a few slides
You can see all SKIPped slides
in the LONG version of Section 5.
(The SKIPped slides are OPTIONAL,
not required for exams.)
50
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
iv. Kerberos authentication system (1)
Kerberos – system for authentication between intelligent
processes in distributed systems (incl. C-S authentication)
[K. = guard dog in Hades (Greek mythology)]
Developed at MIT (1988+)
Design goal:
Enable systems to withstand attacks in distributed
systems
Basic idea of Kerberos: Central server provides tickets to
requesting app
Ticket is authenticated, non-forgeable, non-replayable
token
=> Implemented as encrypted data structure naming
user U and service for which U has access permission
(also contains time value, control info)
51
Kerberos authentication system (2)
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
User’s Step 1: Establishing session w/ Kerberos — Fig. 730, p. 448
U’s workstat’n sends U’s identity to Kerberos server (KS)
KS verifies that U is authorized
KS sends 2 msgs:
U
U
1) Msg to U, which contains: E(ST-GS
+ TT-GS
, pwd)
U
ST-GS
— U’s session key for session with T-GS
U
TT-GS
— U’s ticket for T-GS
Enables U to request service from T-GS
pwd — user’s pwd (Note: used as encryption key by KS)
U
2) Msg to T-GS, which contains: ST-GS and U’s identity
(encrypted under key shared by KS and T-GS)
U
ST-GS
— T-GS’s session key for session with U (same
as U’s session key for session with T-GS)
U
U
If U’s workstation can decrypt E(ST-GS
T
+ T-GS , pwd) using
its pwd, then U’s authentication succeeds
52
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
Kerberos authentication system (3)
Note: KS stores users’ pwds => no need to pass pwds
over network between U’s workstation and KS
Security advantage!
User’s Step 2: Access services of distributed system —
e.g., access file F — Fig. 7-31, p. 448
Using U’s ticket for T-GS (received fr. KS in Step 1), U sends
to T-GS:
U
E(„request R for U’s ticket for accessing F” , ST-GS)
U
Note: ST-GS
(U’s session key for session with T-GS obtained fr. KS
in Step 1) is used to encrypt R
T-GS verifies U’s access permission
...continued...
53
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
Kerberos authentication system (4)
...continued...
If verified OK, T-GS returns to U message encrypted
U
under ST-GS
, which contains:
1) U’s session key for session with F (really: with F’s file
U
server) = SF
2) U’s ticket for accessing F
Ticket is encrypted under secret key („T-GS—F key”)
known only to T-GS and F’s file server
Ticket contains:
U is
U’s authenticated identity (T-GS knows that ST-GS
U’s key —and nobody else’s— because KS sent to T-GS
U
ST-GS
and U’s identity tied together in Step 1)
Identification of file F
Access rights (e.g., read permission)
F’s session key for F’s session with U = SFU (same
as U’s session key for session with F)
Ticket expiration date
54
© 2006-2007 by Leszek T. Lilien
Kerberos authentication system (5)
Strengths of Kerberos:
1) No pwds communicated over network
Pwd sent by user to Kerberos server only once & sent
outside the network (e.g., in a letter)
User’s pwd is not sent from user’s workstation when it
initiates a session
User’s pwd stored only at Kerberos server
Section 5 – Computer Security and Information Assurance
2) Provides crypto protection against spoofing (e.g.,
masquearding, session hijacking, MITM)
Each access request mediated by a ticket-granting
service (T-GS)
T-GS knows user’s identity based on authentication
performed initially by the server
55
© 2006-2007 by Leszek T. Lilien
Kerberos authentication system (6)
Strengths of Kerberos – cont.1
3) Limits period of ticket validity (this disables some long-term
attacks—e.g., brute force cryptanalysis)
Section 5 – Computer Security and Information Assurance
Tickets contain timestamps used by servers to
determine ticket’s validity
Ticket validity period limits duration of „window of
opportunity” for attacker
4) Prevents replay attacks
Each user’s request stamped with time of request
Servers compare timestamps of requests w/ current
time, accept requests only if they are close enough to
current time
Time-checking prevents most replay attacks
Since presentation of tickets by attackers will be delayed
more than presentation of tickets by legitimate users
56
© 2006-2007 by Leszek T. Lilien
Kerberos authentication system (7)
Strengths of Kerberos – cont.2
5) Provides mutual authentication
Service user can be assured of any server’s authenticity by requesting an authenticating response from S
Section 5 – Computer Security and Information Assurance
6) Uses public key technology for key exchange
57
© 2006-2007 by Leszek T. Lilien
Kerberos authentication system (8)
Weaknesses of Kerberos system
1) Requires continuous availability of trusted ticketgranting server (T-GS)
2) Server S’ authenticity requires trust between T-GS & S
3) Requires timely transactions (too quick ticket expiration will
result in rejecting legitimate requests)
Section 5 – Computer Security and Information Assurance
4) Subverted workstation can replay user pwds
5) Pwd guessing works (attacker can send initial —Step 1—
6)
authentication request to Kerberos server, receive response, try to
decrypt response by guessing at pwd)
Kerberos does not scale well (due to system size might need
> 1 KS and/or T-GS server; coordination and security problems if
more than one KS and/or more than one T-GS is needed; cf. Fig.
7-32, p.450)
7) Use of Kerberos requires compatibility of all apps in a
given computing environment (to date few apps are
compatible with Kerberos; modifying apps to make them
compatible is not feasible)
58
© 2006-2007 by Leszek T. Lilien
g) Access controls (1)
Section 5 – Computer Security and Information Assurance
Before user is allowed access to network resources, must
know:
Who needs access => authentication
What and how will be accessed => access controls
Access controls include:
1) ACLs (Access Control Lists) on router
2) Firewalls
59
© 2006-2007 by Leszek T. Lilien
Access controls (2)
1) ACLs on routers (ACL = Access Control List)
Router directs traffic:
To subnetworks it controls
OR
To other routers (for delivery to other subnetworks)
Routers convert external (network-wide)IP address to
internal (subnetwork-wide) MAC address
Section 5 – Computer Security and Information Assurance
Recall that MAC address is unique physical address of device’s
NIC—network interface card
Can put ACL on a router to deny access to particular
host D from particular host S
E.g., to prevent spam (flooding) of D with packets from
S, router can delete all packets from S to D
It’s OK if router uses ACLs in a limiteded way
Use sparingly: only for specific & known threats
BUT...
60
© 2006-2007 by Leszek T. Lilien
Access controls (3)
... Problems with putting too many ACLs on routers:
(i) Packet-checking overhead for router
Router must check each packet against each ACL –
a lot of work
=> degraded performance
Section 5 – Computer Security and Information Assurance
More ACLs on router => more work
Routers are already busy just routing all packets
ingoing/outgoing to/from their subnets
(ii) Logging overhead for router
To be able to detect spam, router must log source
addresses of packets
Then can analyze to see which source addresses produce
floods
Routers are designed to do only essential work —
anything else is inefficient => logging on router is
inefficient => adds workload
61
© 2006-2007 by Leszek T. Lilien
Access controls (4)
... Problems with putting too many ACLs on routers-CONT.
(iii) Inability of router to detect all spams
Because source addresses in datagrams (UDP
packets) can be easily forged (by attacker using UDP
protocol)
Section 5 – Computer Security and Information Assurance
If attacker sends many datagrams with the same
(repeated) forged address, router with ACL can
detect & block them
Otherwise (i.e., if attacker sends datagrams with few
repeated forged addresses), router with ACL will not
even detect being flooded
=> can not block flooding datagrams
62
© 2006-2007 by Leszek T. Lilien
Access controls (5)
2) Firewalls
Designed to do screening that routers can’t do efficiently
Because routers designed for routing (of course!)
Firewalls designed for access filtering
AND auditing
AND examining whole packets (not only source/destination
Section 5 – Computer Security and Information Assurance
IP/ MAC addresses—which is what routers do)
Firewalls will be discussed in detail later (but very soon)
63
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
h) Intrusion Detection Systems: Alarms & Alerts
Example of 2-layer network protection
Provided by router (Layer 1) AND firewall (Layer 2)
Fig. 7-33, p. 452
We can add one more layer of protection:
intrusion detection systems (IDS) = device placed within
protected network for monitoring for illegitimate actions in
order to detect attacks in progress (beginning, advanced) or
after they have occurred
OR
Can detect that attack has already occurred & raise alarm,
starting system recovery actions
IDS is a.k.a. IPS = intrusion protection system
E.g.: Can detect reconaissance & alert sysadmin or secadmin,
raise alarm, thus preventing „real” attack
A marketing gimmick?
IDS can be Layer 3 of layered network protection
To be discussed in detail soon
64
© 2006-2007 by Leszek T. Lilien
i) Honeypots
Honeypot – system built as a bait attracting attackers
Once attackers take the bait:
They are observed to learn how they behave/operate
They are traced to catch them or scare them off
Section 5 – Computer Security and Information Assurance
Or at least trace enough to be able to threaten them with
identifying them if they don’t stop
They are diverted from really valuable attack targets
New attacks / Prefered targets / ...
E.g., diverted to phony credit card database while real credit
card database remains obscure to them
User lessons learned (thanks to honeypots) to build better
countermeasures
65
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
j) Traffic flow security (1)
Threat: attacker infering occurrence/location of some event
/ structure from intensity of encrypted network traffic
(If not encrypted, no need to infer – attacker can simply read all)
Example 1: Inference that traffic between Thinges Corp. and
bankruptcy lawyer precedes declaration of bankruptcy by Thinges
Example 2 (old): Battlefield network: Busiest network node is at
enemy’s HQs
Solution 1: Masking by steady traffic volume
X and Y always send the same volume of encrypted
traffic between them
If X has nothing to communicate to Y, X sends
meaningless padding packets to Y (Y behaves analogously)
66
© 2006-2007 by Leszek T. Lilien
Traffic flow security (2)
Solution 2: Masking by onion routing
Example: W wants to send packet to Z in a hidden way
W wraps „real” packet to Z into packet addressed to
Y, which asks Y to send it toZ
W wraps packet to Y into packet addressed to X,
which asks X to send it to Y
Section 5 – Computer Security and Information Assurance
Onion-like packet sent by W to X
Send packet to Y
Send packet to Z
Full route: W X Y Z
W sends green packet to X
X unwraps it, gets red packet
X sends red packet to Y
Y unwraps it, gets blue packet
Y sends blue packet to z
Z unwraps it, gets blue packet
67
© 2006-2007 by Leszek T. Lilien
Traffic flow security (3)
Why „onion” routing? Layers of wraps around „real”
packet to Y– like layers of an onion
Note: (Recall the full route: W X Y Z )
X knows that packet came from W & should be
forwarded to Y
Section 5 – Computer Security and Information Assurance
Y knows that packet came from X & should be
forwarded to Z
But X does not know if W is source or intermediate host,
does not know if Y is destination or intermediate host
But Y does not know if X is source or intermediate host,
does not know if Z is destination or intermediate host
Z knows that packet came directly from Y & knows
that W is its source
Z knows that Y is just an intermediate host
=> Intermediate nodes do not know source/destination
They only know host that forwarded packet to them &
know host to which they should forward packet
68
© 2006-2007 by Leszek T. Lilien
k) Review of network security controls
Table 7-4, p. 426 provided classification of network
vulnerabilities (during our earlier discussion of threats)
Table 7-7, p. 454 lists controls for each of these classes of
network vulnerabilities — it shows that:
There are many great network security controls
Most are used also in environments other than networks
(including applications and OSs)
Section 5 – Computer Security and Information Assurance
Three of these controls are specific to networks:
Firewalls / IDSs / encrypted e-mail
We shall discuss them in some detail next
Table 7-7 is a great reference for network security controls!
Use it often
If you can get copyright permission from publisher, I’d advise
you to copy it and post above your desk
Otherwise, make your own notes based on it
69
© 2006-2007 by Leszek T. Lilien
5.2. Network Security Tools
Section 5 – Computer Security and Information Assurance
[Fig: B. Endicott-Popovsky]
Network security tools
5.2.1. Firewalls
5.2.2. Intrusion Detection Systems
5.2.3. Secure E-Mail
70
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
5.2.1. Firewalls
--SKIP-- Outline
a) Introduction
b) What is a firewall
c) Firewall design
d) Types of firewalls
i. Packet filters
(i-1) Simple packet filters
(i-2) Stateful packet filters
ii. Application proxies
(ii-1) Guards
(“top model” subcategory)
iii. Personal firewalls
e) Comparison of firewall types
f) Example firewall configurations
g) What firewalls can—and can’t—block
71
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
--SKIPped a slide--
You can see all SKIPped slides
in the LONG version of Section 5.
(The SKIPped slides are OPTIONAL,
not required for exams.)
72
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
b. What is a firewall (1a)
Firewall = device (h/w), or software, or combination of
both designed:
1) to prevent unauthorized outside users from accessing
network and/or single workstation
2) to prevent inside users from xmitting sensitive
information or accessing insecure resources
It is a wall between protected local (sub)net & outside
global net
Inspect each individual inbound or outbound packet of
data sent to / from protected system
Check if it should be blocked or allowed to enter
73
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
--SKIPped a slide--
You can see all SKIPped slides
in the LONG version of Section 5.
(The SKIPped slides are OPTIONAL,
not required for exams.)
74
© 2006-2007 by Leszek T. Lilien
What is a firewall (2)
Examples of security policy requirements w.r.t. firewalls:
Block any access from the outside, allow all accesses to
the outside
Allow”from” accesses only for certain activities OR only
to/from certain subnets/hosts/apps/users
Section 5 – Computer Security and Information Assurance
E.g., prevent outside access to subnet hosts except for mail
server accesses
Choice of default firewall behavior
1) Default permit
„That which is not expressly forbidden is allowed”
2) Default deny
„That which is not expressly allowed is forbidden”
Users prefer default permit, security experts prefer
default deny
Sysadmin must make the choice
75
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
--SKIPped-- a few slides
You can see all SKIPped slides
in the LONG version of Section 5.
(The SKIPped slides are OPTIONAL,
not required for exams.)
76
© 2006-2007 by Leszek T. Lilien
d. Types of firewalls (1)
Types of firewalls
i. Packet filters / packet filtering firewalls
Control packets based on packet’s IP adresses and port #s
(i-1) Simple packet filters / (simple, stateless) packet filtering
gateways / screening routers
(i-2) Stateful packet filters / stateful inspection firewalls
ii.
Section 5 – Computer Security and Information Assurance
(stateless = ignore history)
Application proxies / proxy firewalls / application-level
gateways
More sophisticated than packet filters.
Control packets based on any data within a packet (not only based
on packet’s IP adresses and port # as packet filetres do) =>
=> can detect/derail more sophisticated attacks (e.g., can filter
out harmful commands in pkt stream)
(ii-1) Guards (a special case of app proxies)
iii. Personal firewalls
(not subnetworks R like regular firewalls do)
For small business / home office / home
Protect single hosts
77
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
--SKIPped-- a few slides
You can see all SKIPped slides
in the LONG version of Section 5.
(The SKIPped slides are OPTIONAL,
not required for exams.)
78
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
f. Example firewall configurations
Example firewall configurations
Subnet with screening router (simple packet filtering)
— Fig. 7-39, p. 466
Subnet with proxy gateway (app proxy)
— Fig. 7-40, p. 467
Subnet with simple PF & app proxy
— Fig. 7-41, p. 467
Note:
The LAN between outer firewall (“screening router” in the
fig) and the inner firewall (“proxy firewall” in the fig)
constitutes DMZ (demilitarized zone)
79
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
g. What firewalls can—and can’t—block
Firewalls are not a panacea - only a perimeter protection
Points 2 remember about firewalls — see text, p.466-467
Can protect environment only if control its whole perimeter
Do not protect data outside the perimeter
Are most visible subnet component – attractive attack targets
Must be correctly configured, & config must be periodically updated
Firewall platforms should not have any s/w that could help attacker
who penetrates firewall in subsequent exploits
Firewalls exercise very limited control over content they let in
Other means of verifying/enforcing accuracy/correctness must
be used inside perimeter
80
© 2006-2007 by Leszek T. Lilien
5.2.2. Intrusion Detection Systems
--SKIP-- Outline
a) Introduction
b) Types of IDSs
Section 5 – Computer Security and Information Assurance
i. Signature-based IDSs
ii. Anomaly-based IDSs
iii. Other IDSs
c) Goals for IDSs
d) IDS strengths and limitations
81
© 2006-2007 by Leszek T. Lilien
a. Introduction
Section 5 – Computer Security and Information Assurance
It is better to prevent attack than to detect it after it
succeeds
Unfortunately, not all attacks can be prevented
(1)
Some attackers become intruders — succeed in breaking defenses
Intrusion prevention — first line of defense
Intrusion detection — second line of defense
Intrusion detection system (IDS) - a device
(typically a seprate
computer) monitoring system activities to detect malicious /
suspicious events
IDSs attempt to detect
Outsiders breaking into a system
OR
Insiders (legitimate users) attempting illegitimate
actions
Accidentally OR deliberately
82
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
--SKIPped a slide--
You can see all SKIPped slides
in the LONG version of Section 5.
(The SKIPped slides are OPTIONAL,
not required for exams.)
83
© 2006-2007 by Leszek T. Lilien
Introduction (3)
IDS terminology
Anomaly — abnormal behavior
— activity that violates the security policy
(subset of “anomaly” – anomaly that is illegitimate)
Section 5 – Computer Security and Information Assurance
Misuse
Might either be still legitimate OR illegitimate
Intrusion — misuse by outsiders and insiders
Audit
— activity of looking at user/system behavior,
Profiling
its effects, or collected data
— looking at users or systems to determine
what they usually do
84
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
--SKIPped a slide--
You can see all SKIPped slides
in the LONG version of Section 5.
(The SKIPped slides are OPTIONAL,
not required for exams.)
85
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
b. Types of IDSs
(1a)
IDS types w.r.t. scope:
Host-based
Runs on a host
Monitors activities on this host only
Network-based
Stand–alone device
Monitors entire (sub)network
86
© 2006-2007 by Leszek T. Lilien
b. Types of IDSs (1b)
IDS types w.r.t. their operation
i. Signature-based IDSs
(“block only ‘blacklisted’ behavior”)
Models & looks for unacceptable system activities (= an attack)
Each known attack characterized by its „signature” (pattern)
To detect attack, matches current activities to known attack
signatures
Problem: Unable to detect new attacks (unknown signatures!)
Section 5 – Computer Security and Information Assurance
ii. Anomaly-based (heuristic) IDSs
Solves the above problem (but might generate more false alarms)
Uses model of acceptable user activities
(“allow only permitted behavior”)
Not models (signatures) of unacceptable system activities
Raises alarm upon detection of deviation form model behavior
iii. Other IDS types
E.g., hybrid IDSs (combining signature- and anomaly-based
IDSs), immune-system-based IDSs
87
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
--SKIPped-- a few slides
You can see all SKIPped slides
in the LONG version of Section 5.
(The SKIPped slides are OPTIONAL,
not required for exams.)
88
© 2006-2007 by Leszek T. Lilien
c. Goals for IDSs
(1)
IDS goals
1) Detect all attacks correctly
Avoid false positives (false alarms)
False alarms annoy sysadmins, users, ...
Avoid false negatives (not recognizing attacks)
2) Little overhead / performance impacts
Section 5 – Computer Security and Information Assurance
--SKIP-- Range of IDS alarms
Write a record to audit log Urgency
...
Page security administrator
89
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
--SKIPped-- a few slides
You can see all SKIPped slides
in the LONG version of Section 5.
(The SKIPped slides are OPTIONAL,
not required for exams.)
90
© 2006-2007 by Leszek T. Lilien
5.2.3. Secure E-Mail
--SKIP-- Outline
a) Introduction
b) Security for e-mail
c) Design of PEM (Privacy-enhanced Electronic Mail)
d) Example secure e-mail systems
Section 5 – Computer Security and Information Assurance
i. PGP
ii. S/MIME
91
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
a. Introduction
E-mail is the most heavily used network-based application
Yet, ordinary email is very public, exposed
It has no C / I (confid./integ)
Unencrypted message contents can be peeked at either in transit or
by privileged users at destination host
92
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
--SKIPped-- a few slides
You can see all SKIPped slides
in the LONG version of Section 5.
(The SKIPped slides are OPTIONAL,
not required for exams.)
93
© 2006-2007 by Leszek T. Lilien
Security for e-mail (2)
Section 5 – Computer Security and Information Assurance
Secure e-mail requirements:
Msg confidentiality (protection from disclosure)
Msg integrity (protection from modification)
Sender authentication
Non-repudiation (preventing denial by sender)
Not every msg requires all 4 capabilities
but all 4 needed to cover requirements of all kinds of msgs
94
© 2006-2007 by Leszek T. Lilien
c. Design of PEM
Section 5 – Computer Security and Information Assurance
Standard for encrypted e-mail:
Privacy-enhanced Electronic Mail (PEM)
(1)
[Bishop-CS-A&S, p.286]
Developed by Internet Society (1985-1993)
A design goal:
Allowing PEM msgs travel as ordinary mail msgs
For legacy reasons
Protection occurs within msg body
We’ll look in turn at:
1) Confidentiality in PEM
2) Other security features in PEM
95
© 2006-2007 by Leszek T. Lilien
Design of PEM (2)
1) Confidentiality in PEM
Scenario: S sends msg M to R (using PEM)
S picks random symm.encr. key K (corr. to session key)
S creates new cleartext header [a]
S encrypts K with KPUB-R: E(K, KPUB-R) [b]
Additionally, unprintable characters are converted into
„regular” characters
Section 5 – Computer Security and Information Assurance
Since unprintable characters used as control signals by e-mail
handlers
S encrypts M with K: E(M, K) [c]
Entire M, with original header is encrypted
=> Summarizing, „enveloping” msg sent by S to R is:
[a] = new „external” header (plaintext)
[b] = encrypted symm. key K
[c] = encrypted msg M
(cf. Fig. 7-44, p. 475)
96
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
--SKIPped-- a few slides
You can see all SKIPped slides
in the LONG version of Section 5.
(The SKIPped slides are OPTIONAL,
not required for exams.)
97
© 2006-2007 by Leszek T. Lilien
Design of PEM (5)
Problems with PEM
Problem 1: key mgmt (as always with public key exchange)
Solution 1a: Using certificate scheme
Solution 1b: Using PGP (to be discussed next)
Section 5 – Computer Security and Information Assurance
Problem 2: endpoint vulnerability (S and R ends)
Attacker penetrating S’s or R’s host can subvert PEM
code or install Trojan for leaking keys
98
Section 5 – Computer Security and Information Assurance
© 2006-2007 by Leszek T. Lilien
--SKIPped-- a few slides
You can see all SKIPped slides
in the LONG version of Section 5.
(The SKIPped slides are OPTIONAL,
not required for exams.)
99
© 2006-2007 by Leszek T. Lilien
Example secure e-mail systems (3)
PGP in practice
The application must be integrated into existing email
Each user exchanging keys with all potential
recipients
Establishing a keyring - a ring of trusted recipients
User’s keyring of known keys
Containing public and private keys (protected by a
Section 5 – Computer Security and Information Assurance
password)
Public keys given to you directly by a friend
Public keys signed by trusted introducers
Keys used for signing or encrypting messages to be
sent and validate messages received
100
The End of Section 5 (Ch.7 – Part 2):
Network Security
OPTIONAL details can be seen in the longer
version of Section 5
(it includes slides that you may SKIP)