Network Security Tutorial
Network Security Tutorial
Contact: training@apnic.net
TSEC01_v1.0
Overview
Network Security Fundamentals
Security on Different Layers and Attack Mitigation
Cryptography and PKI
Resource Registration (Whois Database)
Virtual Private Networks and IPsec
Network Security
Fundamentals
Network Security Workshop
Overview
Why We Need Security
Definitions and Concepts
Access Control
Risk vs. Vulnerability
Threats and Attack Types
Why Security?
The Internet was initially designed for connectivity
Trust assumed
We do more with the Internet nowadays
Security protocols are added on top of the TCP/IP
Confidential data
Employee information
Business models
Protect identity and resources
Internet Evolution
LAN connectivity
Application-specific
More online content
Cloud computing
Application/data hosted
in the cloud environment
Why Security?
Key findings:
Breach Sources
Aggregation
Infiltration
Exfiltration
Types of Security
Computer Security
generic name for the collection of tools designed to protect data and
to thwart hackers
Network Security
measures to protect data during their transmission
Internet Security
measures to protect data during their transmission over a collection
of interconnected networks
Confidentiality
Integrity
prevents
unauthorized
use or
disclosure of
information
safeguards the
accuracy and
completeness
of information
Availability
authorized
users have
reliable and
timely access
to information
SECURITY
Access Control
The ability to permit or deny the use of an object by a
subject.
It provides 3 essential services:
Authentication (who can login)
Authorization (what authorized users can do)
Accountability (identifies what a user did)
Authentication
A means to verify or prove a users identity
The term user may refer to:
Person
Application or process
Machine or device
Examples of Tokens
RFID cards
eToken
Smart Cards
Fingerprint scanner
Trusted Network
Standard defensive-oriented technologies
Firewall
Intrusion Detection
Strong Authentication
An absolute requirement
Two-factor authentication
Passwords (something you know)
Tokens (something you have)
Examples:
Passwords
Tokens
Tickets
Restricted access
PINs
Biometrics
Certificates
Two-factor Authentication
Requires a user to provide at least two authentication
factors to prove his identity
something you know
Username/userID and password
something you have
Token using a one-time password (OTP)
Authorization
Defines the users rights and permissions on a system
Typically done after user has been authenticated
Grants a user access to a particular resource and what
actions he is permitted to perform on that resource
Access criteria based on the level of trust:
Roles
Groups
Location
Time
Transaction type
Authentication
Mechanism
Authorization
Mechanism
Client
Authorization Concepts
Authorization creep
When users may possess unnecessarily high access privileges within
an organization
Default to Zero
Start with zero access and build on top of that
Single Sign On
Property of access control where a user logs in only once
and gains access to all authorized resources within a
system.
Benefits:
Ease of use
Reduces logon cycle (time spent re-entering passwords for the same
identity)
Accountability
The security goal that generates the requirement for actions
of an entity to be traced uniquely to that entity
Senders cannot deny sending information
Receivers cannot deny receiving it
Users cannot deny performing a certain action
Integrity
Security goal that generates the requirement for protection
against either intentional or accidental attempts to violate
data integrity
Data integrity
The property that data has when it has not been altered in an
unauthorized manner
System integrity
The quality that a system has when it performs its intended function
in an unimpaired manner, free from unauthorized manipulation
Vulnerability
A weakness in security procedures, network design, or
implementation that can be exploited to violate a corporate
security policy
Software bugs
Configuration mistakes
Network design flaw
Lack of encryption
Exploit
Taking advantage of a vulnerability
Threat
Any circumstance or event with the potential to cause harm
to a networked system.
These are some example of threats:
Denial of service
Attacks make computer resources (e.g., bandwidth, disk space, or CPU time)
unavailable to its intended users
Unauthorised access
Access without permission issues by a rightful owner of devices or networks
Impersonation
Worms
Viruses
Risk
The possibility that a particular vulnerability will be exploited
IT-related risks arise from:
Unauthorized (malicious or accidental) disclosure, modification, or
destruction of information
Unintentional errors or omissions
IT disruptions due to natural or man-made disasters
Failure to exercise due care and diligence in implementation and
operation of the IT system
Risk Analysis
Identification, assessment and reduction of risks to an
acceptable level
the process of identifying security risks and probability of
occurrence, determining their impact, and identifying areas
that require protection
Three parts:
Risk assessment determine the possible risks
Risk management evaluating alternatives for mitigating the risk
Risk communication presenting this material in an understanble
way to decision makers and/or the public
Attack Sources
Active vs. passive
Active involves writing data to the network. It is common to disguise
ones address and conceal the identity of the traffic sender
Passive involves only reading data on the network. Its purpose is breach
of confidentiality. This is possible if:
Attacker has gained control of a host in the communication path between two victim
machines
Attacker has compromised the routing infrastructure to arrange the traffic pass through a
compromised machine
Active Attacks
Denial of Service attacks
Spoofing
Man in the Middle
ARP poisoning
Smurf attacks
Buffer overflow
SQL Injection
Passive Attacks
Reconnaissance
Eavesdropping
Port scanning
Attack Sources
On-path vs. Off-path
On-path routers (transmitting datagrams) can read, modify, or remove
any datagram transmitted along the path
Off-path hosts can transmit datagrams that appear to come from any
hosts but cannot necessarily receive datagrams intended for other
hosts
If attackers want to receive data, they have to put themselves on-path
General Threats
Masquerade
An entity claims to be another entity
Eavesdropping
An entity reads information it is not intended to read
Authorization violation
An entity uses a service or resource it is not intended to use
Forgery of information
An entity creates new information in the name of another entity
Sabotage
Any action that aims to reduce the availability and/or correct functioning of services or
systems
Reconnaissance Attack
Unauthorised users to gather information about the network
or system before launching other more serious types of
attacks
Also called eavesdropping
Information gained from this attack is used in subsequent
attacks (DoS or DDoS type)
Examples of relevant information:
Names, email address
Common practice to use a persons first initial and last name for accounts
Practically anything
Man-in-the-Middle Attack
Active eavesdropping
Attacker makes independent connections with victims and
relays messages between them, making them believe that
they are talking directly to each other overa private
connection, when in fact the entire conversation is
controlled by the attacker
Usually a result of lack of end-to-end authentication
Masquerading - an entity claims to be another entity
Session Hijacking
Exploitation of a valid computer session, to gain
unauthorized access to information or services in a
computer system.
Theft of a magic cookie used to authenticate a user to a
remote server (for web developers)
Four methods:
Session fixation attacker sets a users session id to one known to
him, for example by sending the user an email with a link that
contains a particular session id.
Session sidejacking attacker uses packet sniffing to read network
traffic between two parties to steal the session cookie.
Questions?
Overview
Attacks in Different Layers
Security Technologies
Link-Layer Security
Network Layer Security
Transport Layer Security
Application Layer Security
Transport
TCP/IP Model
Layer 2 Attacks
ARP Spoofing
MAC attacks
DHCP attacks
VLAN hopping
1 Spoofing
ARP
I want to connect to
10.0.0.3. I dont know the
MAC address
Wait, I am 10.0.0.3!
10.0.0.2
BB-BB-BB-BB-BB-BB
ARP Request
10.0.0.1
AA-AA-AA-AA-AA-AA
ARP Reply
10.0.0.3
CC-CC-CC-CC-CC-CC
10.0.0.4
DD-DD-DD-DD-DDDD
I am 10.0.0.3. This is
my MAC address
MAC Flooding
Exploits the limitation of all switches fixed CAM table size
CAM = Content Addressable memory = stores info on the
mapping of individual MAC addresses to physical ports on
the switch.
Port 1
00:01:23:45:67:A1
00:01:23:45:67:B2
00:01:23:45:67:C3
00:01:23:45:67:D4
Port
2
Port
3
Port
4
x
x
x
x
DHCP Attacks
DHCP Starvation Attack
Broadcasting vast number of DHCP requests with spoofed MAC
address simultaneously.
DoS attack using DHCP leases
Layer 3 Attacks
ICMP Ping Flood
ICMP Smurf
Ping of death
1 Flood
Ping
Internet
Attacker
Broadcas
t Enabled
Network
Routing Attacks
Attempt to poison the routing information
Distance Vector Routing
Announce 0 distance to all other nodes
Blackhole traffic
Eavesdrop
BGP attacks
ASes can announce arbitrary prefix
ASes can alter path
TCP Attacks
SYN Flood occurs when an attacker sends SYN requests
in succession to a target.
Causes a host to retain enough state for bogus halfconnections such that there are no resources left to
establish new legitimate connections.
TCP Attacks
Exploits the TCP 3-way handshake
Attacker sends a series of SYN packets without replying
with the ACK packet
Finite queue size for incomplete connections
SYN
SYN+ACK
Attacker
Server
(Victim)
ACK?
OPEN CONNECTIONS
1
Application
Layer Attacks
Applications dont authenticate properly
Authentication information in clear
FTP, Telnet, POP
DNS insecurity
DNS poisoning
DNS zone transfer
1
Application
Layer Attacks
Scripting vulnerabilities
Cookie poisoning
Buffer overflow
Hidden field manipulation
Parameter tampering
Cross-site scripting
SQL injection
Application-Layer Attacks
Low bandwidth
Keep sockets alive
Only affects certain web servers
Doesnt work through load balancers
Managed to work around accf_http
DNS Changer
Criminals have learned that if they can control a users
DNS servers, they can control what sites the user connects
to the Internet.
How: infect computers with a malicious software (malware)
This malware changes the users DNS settings with that of
the attackers DNS servers
Points the DNS configuration to DNS resolvers in specific
address blocks and use it for their criminal enterprise
For more: see the NANOG presentation by Merike
USA - 69517
IT 26494
IN 21302
GB 19589
DE 18427
By ASNs
DNS Vulnerabilities
Corrupting data"
Zone administrator
Zone file
Impersonating master"
1"
Cache impersonation"
4"
master
Caching forwarder
2"
3"
Dynamic
updates
5"
slaves
Unauthorized updates"
Server protection!
resolver
Data protection!
www.example.com 192.168.1.99
I want to access
www.example.com
QID=64569
QID=64570
QID=64571 match!
(pretending to be
the authoritative
zone)
Client
DNS Caching
Server
QID=6457
1
Root/GTLD
QID=64571
www.example.com 192.168.1.1
Webserver
(192.168.1.1)
ns.example.com
DNS Amplification
Root/GTLD
Queries for
www.example.com
DNS Recursive server
ns.example.com
www.example.com 192.168.1.1
Compromised
Machines
(spoofed IP)
Victim Server
Attacker
Wireless Attacks
WEP first security mechanism for 802.11 wireless
networks
Weaknesses in this protocol were discovered by Fluhrer,
Mantin and Shamir, whose attacks became known as FMS
attacks
Tools were developed to automate WEP cracking
Chopping attack were released to crack WEP more
effectively and faster
Cloud-based WPA cracker
https://www.wpacracker.com/
Botnet
Collection of compromised computers (or bot)
Computers are targeted by malware (malicious software)
Once controlled, an attacker can use the compromised
computer via standards-based network protocol such as
IRC and HTTP
How to become a bot:
Drive-by downloads (malware)
Go to malicious websites (exploits web browser vulnerabilities)
Run malicious programs (Trojan) from websites or as email
attachment
Password Cracking
Dictionary attacks
Guessing passwords using a file of 1M possible password values
Ordinary words and peoples names
Offline dictionary attack when the entire password file has been
attacked
Use random characters as password with varying upper and lower
case, numbers, and symbols
Brute-force attacks
Checking all possible values until it has been found
The resource needed to perform this attack grows exponentially while
increasing the key size
Social engineering
Link-Layer Security
Layer 2 Forwarding (L2F)
Point-to-Point Tunneling Protocol (PPTP)
Layer 2 Tunneling Protocol (L2TP)
IP/UDP
Carrier
Protocol
L2F
Encapsulator
Protocol
PPP (Data)
Passenger
Protocol
PPPoE
PPP over Ethernet
Defined in RFC 2516
A means to encapsulate PPP packets over the Ethernet link
layer
Mostly used in ADSL environments to provide access
control, billing, and type of service on a per-user rather than
a per-site basis
SSL/TLS
TLS and SSL encrypts the segments of network
connections above the Transport Layer.
Versions:
SSLv1 designed by Netscape
SSLv2 publicly released in 1994; has a number of security flaws;
uses RC4 for encryption and MD5 for authentication
SSLv3 added support for DSS for authentication and DH for key
agreement
TLS based on SSLv3; uses DSS for authentication, DH for key
agreement, and 3DES for encryption
SSL Handshake
SSL Client
SSL Server
Advantages of SSL
The connection is private
Encryption is used after initial handshake to define a secret key
Encryption uses symmetric cryptography (DES or RC4)
HTTP
80
443
NNTP
119
563
LDAP
389
636
FTP-data
20
989
FTP-control
21
990
Telnet
23
992
IMAP
143
993
POP3
110
994
SMTP
25
995
HTTPS
Hypertext Transfer Protocol Secure
Widely-used, message-oriented communications protocol
Connectionless oriented protocol
Technically not a protocol in itself, but simply layering HTTP
on top of the SSL/TLS protocol
Encapsulates data after security properties of the session
Not to be confused with S-HTTP
Note: A website must use HTTPS everywhere, otherwise it is still
vulnerable to some attacks
Assumptions:
All users are using public key cryptography and have generated
private/public key pairs (using RSA or El Gamal)
All users also use symmetric key system (DES or Rijndael)
S/MIME
Secure Multipurpose Internet Mail Extensions
Uses public key certificates conforming to standard X.509
Very similar to PGP
Hide version
Restrict queries
Allow-query { acl_match_list; };
DNSSEC
DNSSEC Domain Name Security Extensions
A set of extensions to DNS that provides
Origin authentication of DNS data
Data integrity
Authenticated denial of existence
Questions?
Cryptography
Network Security Workshop
Overview
What is Cryptography?
Symmetric Key Cryptography
Asymmetric Key Cryptography
Block and Stream Cipher
Digital Signature and Message Digest
Cryptography
Cryptography is everywhere
Cryptography
Cryptography deals with creating documents that can be
shared secretly over public communication channels
Other terms closely associated
Cryptanalysis = code breaking
Cryptology
Kryptos (hidden or secret) and Logos (description) = secret speech / communication
combination of cryptography and cryptanalysis
C = F(P, k)
Notation:
Plaintext (P)
Ciphertext (C)
Cryptographic Key (k)
Typical Scenario
Alice wants to send a secret message to Bob
What are the possible problems?
Data can be intercepted
Crypto Core
Secure key establishment
Secure communication
mm
m
Bob
Source: Dan Boneh, Stanford
History: Ciphers
Substitution cipher
involves replacing an alphabet with another character of the same
alphabet set
Can be mono-alphabetic (single set for substitution) or polyalphabetic system (multiple alphabetic sets)
Example:
Caesar cipher, a mono-alphabetic system in which each character is
replaced by the third character in succession
Vigenere cipher, a poly-alphabetic cipher that uses a 26x26 table of
characters
In the example,
B appeared 36 times, U 33 times, and P 32 times
NC appeared 11 times, PU 10 times
UKB appeared 6 times
Source: Dan Boneh, Stanford
Transposition Cipher
No letters are replaced, they are just rearranged.
Rail Fence Cipher another kind of transposition cipher in
which the words are spelled out as if they were a rail fence.
Encryption
process of transforming plaintext to ciphertext using a
cryptographic key
Used all around us
In Application Layer used in secure email, database sessions, and
messaging
In session layer using Secure Socket Layer (SSL) or Transport Layer
Security (TLS)
In the Network Layer using protocols such as IPSec
DECRYPTION
ALGORITHM
ENCRYPTION
ALGORITHM
Plaintext
Ciphertext
Encryption Key
Plaintext
Decryption Key
Symmetric Encryption
DECRYPTION
ALGORITHM
ENCRYPTION
ALGORITHM
Plaintext
Ciphertext
Encryption Key
Shared Key
Plaintext
Decryption Key
Shared Key
Symmetric Key
Cryptography
Key Size
DES
56-bit keys
AES
IDEA
128-bit keys
RC2
RC4
1 to 256-bit keys
RC5
0 to 2040-bit keys
RC6
Blowfish
32 to 448-bit keys
Note:
Longer keys are more difficult to crack, but more computationally expensive.
Stream cipher
encrypts bits of the message at a time
typically bit-wise.
They either have a very long key (that eventually repeats) or a
reusable key that generates a repeatable but seemingly random
string of bits.
They perform some operation (typically an exclusive OR) with one of
these key bits and one of the message bits.
Block Cipher
Transforms a fixed-length block of plain text into a block of
ciphertext
Works with data per block
Common block ciphers:
Stream Cipher
Use smaller units of plaintext than what are used with block
ciphers.
Typically work with bits
Common stream ciphers:
RC4
DES and 3DES (running OFB or CFB mode)
Software encryption algorithm (SEAL)
DES: Illustration
64-bit blocks of input text
DECRYPTION
ALGORITHM
ENCRYPTION
ALGORITHM
Plaintext
Ciphertext
Encryption Key
56-bit keys +
8 bits parity
Plaintext
Decryption Key
Triple DES
3DES (Triple DES) a block cipher that applies DES three
times to each data block
Uses a key bundle comprising of three DES keys (K1, K2,
K3), each with 56 bits excluding parity.
DES encrypts with K1, decrypts with K2, then encrypts with
K3
3DES: Illustration
ENCRYPT
DECRYPT
ENCRYPT
Ciphertext
Plaintext
Key 1
Key 2
Note:
If Key1 = Key2 = Key3, this is similar to DES
Usually, Key1 = Key3
Key 3
Rivest Cipher
RC Algorithm
Description
RC2
RC4
RC5
RC6
RC4
Most widely used stream cipher
Popularly used in Secure Socket Layer (SSL) and Wired
Equivalent Privacy (WEP) protocols
Although simple and fast, it is vulnerable and can lead to
insecure systems
Ci = Ek (Pi Ci1 ), C0 = IV
Pi = Dk (Ci ) Ci1, C0 = IV
Asymmetric Encryption
DECRYPTION
ALGORITHM
ENCRYPTION
ALGORITHM
Plaintext
Ciphertext
Plaintext
Encryption Key
Decryption Key
Public Key
Private Key
Different keys
Asymmetric Key
Cryptography
Asymmetric
generally fast
Same key for both encryption and
decryption
Hash Functions
produces a condensed representation of a message (hashing)
The fixed-length output is called the hash or message digest
A hash function takes an input message of arbitrary length and
outputs fixed-length code. The fixed-length output is called the
hash, or the message digest, of the original input message.
A form of signature that uniquely represents the data
Uses:
Verifying file integrity - if the hash changes, it means the data is either
compromised or altered in transit.
Digitally signing documents
Hashing passwords
Hash Functions
Message Digest (MD) Algorithm
Outputs a 128-bit fingerprint of an arbitrary-length input
RIPEMD
Digital Signature
A digital signature is a message appended to a packet
The sender encrypts message with own private key instead
of encrypting with intended receivers public key
The receiver of the packet uses the senders public key to
verify the signature.
Used to prove the identity of the sender and the integrity of
the packet
Digital Signature
Two common public-key digital signature techniques:
RSA (Rivest, Shamir, Adelman)
DSS (Digital Signature Standard)
PRIVATE KEY
HASH
(DATA)
DIGITAL
SIGNATURE
HASH
(DATA)
MATCH?
HASH
(DIGITAL SIG)
Questions?
Overview
Public Key Infrastructure
Digital Certificates
Certificate Authority
RPKI Introduction
Functions of a PKI
Registration
Initialization
Certification
Key pair recovery
Key generation
Key update
Cross-certification
Revocation
Source: http://commons.wikimedia.org
Components of a PKI
Certificate authority
The trusted third party
Trusted by both the owner of the certificate and the party relying upon
the certificate.
Validation authority
Registration authority
For big CAs, a separate RA might be necessary to take some work
off the CA
Identity verification and registration of the entity applying for a
certificate
Central directory
Certificates
Public key certificates bind public key values to subjects
A trusted certificate authority (CA) verifies the subjects identity
and digitally sign each certificate
Validates
Digital Certificate
Digital certificate basic element
of PKI; secure credential that
identifies the owner
Also called public key certificate
Digital Certificate
deals with the problem of
Binding a public key to an entity
A major legal issue related to eCommerce
Certificate examples:
X509 (standard)
PGP (Pretty Good Privacy)
Certificate Authority (CA) creates and digitally signs certificates
Digital Certificate
To obtain a digital certificate, Alice must:
Make a certificate signing request to the CA
Alice sends to CA:
Her identifier IdA
Her public key KA_PUB
Additional information
X.509
An ITU-T standard for a public key infrastructure (PKI) and
Privilege Management Infrastructure (PMI)
Assumes a strict hierarchical system of Certificate
Authorities (CAs)
RFC 1422 basis of X.509-based PKI
Current version X.509v3 provides a common baseline for
the Internet
Structure of a Certificate, certificate revocation (CRLs)
Certificate
Check
Signature
Check
CRL
Signature algorithm
Used by the CA to sign the certificate
Signature
Created by applying the certificate body as input to a one-way hash
function. The output value is encrypted with the CAs private key to
form the signature value
Certificate Authority
Issuer and signer of the certificate
Trusted (Third) Party
Based on trust model
Who to trust?
Types:
Enterprise CA
Individual CA (PGP)
Global CA (such as VeriSign)
Functions:
Questions?
Resource Registration
Network Security Workshop
Resource Registration
As part of your membership agreement with APNIC, all
Members are required to register their resources in the
APNIC database.
First allocation/assignment, APNIC will create:
Object Types
OBJECT
PURPOSE
person
contact persons
role
contact groups/roles
inetnum
IPv4 addresses
Inet6num
IPv6 addresses
aut-num
domain
reverse domains
route
mntner
mnt-irt
Database Object
An object is a set of attributes and values
Each attribute of an object
Has a value
Has a specific syntax
Is mandatory or optional
Is single or multi-valued
Inter-Related Objects
person/role:
inetnum:
202.64.10.0 202.64.10.255
mntner:
MAINT-WF-EX
Data protection
admin-c: EC196-AP
tech-c: ZU3-AP
mnt-by: MAINT-WF-EX
IPv4 addresses
nic-hdl: EC196AP
Contact info
person/role:
nic-hdl: ZU3AP
Contact info
New Members
If you are receiving your first allocation or assignment,
APNIC will create the following objects for you:
role object
inetnum or inet6num object
maintainer object (to protect your data)
aut-num object (if you received an ASN)
Person Object
Represents a contact person for an organization
Every Member must have at least one contact person registered
Large organizations often have several contacts for different
purposes
What is a nic-hdl?
Unique identifier for a person or role
Represents a person or role object
Referenced in objects for contact details
(inetnum, aut-num, domain)
format: <XXXX-AP>
Eg: EC196-AP
nic-hdl: EC196-AP
mnt-by:
changed:
source:
MAINT-WF-EX
echu@example.com 20020731
APNIC
Role Object
Represents a group of contact persons for an organization
Eases administration
Can be referenced in other objects instead of the person objects for
individuals
Admin Role
person:
EC196-AP
person:
AN3-AP
inetnum:
202.0.10.0
AN3-AP
inetnum:
202.0.12.127
AN3-AP
inetnum:
202.0.15.192
AN3-AP
EC196-AP AN3-AP
EIPA91-AP
role:
AN3-AP
KX17-AP
AB1-AP
CD2-AP
EIPA-91-AP
inetnum:
202.0.12.127
EIPA91-AP
inetnum:
202.0.15.192
EIPA91-AP
IRT Object
Incident Response Team (IRT)
Dedicated abuse handling teams (not netops)
IRT Object
Why provide abuse contact
Dedicated contacts or team that specifically resolve computer
security incidents
Efficient and accurate response
Stops the tech-c and admin-c from getting abuse reports
Shared response to address abuse
Database Protection
Authorisation
mnt-by references as maintainer object
Can be found in all database objects
mnt-by should be used with every object
Authentication
Updates to an object must pass the authentication rule specified by
its maintainer
Authentication methods (using auth attribute)
Crypt-PW
PGP GNUPG
MD5
Database Protection
Maintainer Object
Allocated to Member
Maint-by can only be changed by
APNIC
Sub-allocated to Customer
Maint-by can only be changed by
Members
Customer Privacy
Privacy issues
Concerns about publication of customer information
Increasing government concern
RPKI
Resource Public Key Infrastructure
verify the authenticity of data that has been digitally signed
by the originator of the data
Based on the X.509 certificate format (RFC5280) and
extended by RFC3779
RPKI is in the process of standardization through the
Secure Inter-Domain Routing (SIDR) working group.
Resource Certification
RIRs have been developing a new service for their
members
APNIC has now launched Resource Certification for the AP
region
The goal is to improves the security of inter-domain routing
and augmenting the information published in the APNIC
Whois Database
Terminologies
Resource holders include:
Regional Internet Registries (RIRs)
Local Internet Registries (LIRs)
Internet Service Providers (ISPs)
End-user organizations
Main components:
Trust anchors
ROAs
validators
Questions?
IP Security (IPSec)
Network Security Workshop
Overview
Introduction to VPN
IPSec Fundamentals
Tunnel and Transport Mode IPSec
Architecture and Components of IPSec
Internet Key Exchange
Configuring IPSec for IPv4 and IPv6
Two types:
Remote access
Site-to-site VPN
VPN Implementations
Hardware
Usually a VPN-type router
Pros: highest network throughput, plug and play, dual purpose
Cons: cost and lack of flexibility
Software
Ideal for two end-points in different organisations
Pros: flexible, and low relative cost
Cons: lack of efficiency, more labor training required, lower
productivity; higher labor costs
Firewall
Pros: cost effective, tri-purpose, hardens the operating system
Cons: still relatively costly
VPN Protocols
PPTP (Point-to-Point tunneling Protocol)
Developed by Microsoft to secure dial-up connections
Operates in the data-link layer
Advantages of VPN
Cheaper connection
Use the Internet connection instead of a private lease line
Scalability
Flexibility of growth
Efficiency with broadband technology
Availability
Available everywhere there is an Internet connection
Disadvantages of VPN
VPNs require an in-depth understanding of public network
security issues and proper deployment precautions
Availability and performance depends on factors largely
outside of their control
VPNs need to accommodate protocols other than IP and
existing internal network technology
IPsec
Provides Layer 3 security (RFC 2401)
Transparent to applications (no need for integrated IPSec support)
IPsec Standards
RFC 4301 The IP Security Architecture
Defines the original IPsec architecture and elements common to both AH
and ESP
RFC 4302
Defines authentication headers (AH)
RFC 4303
Defines the Encapsulating Security Payload (ESP)
RFC 2408
ISAKMP
RFC 5996
IKE v2 (Sept 2010)
RFC 4835
Cryptographic algorithm implementation for ESP and AH
Benefits of IPsec
Confidentiality
By encrypting data
Integrity
Routers at each end of a tunnel calculates the checksum or hash
value of the data
Authentication
Signatures and certificates
All these while still maintaining the ability to route through existing IP
networks
IPsec is designed to provide interoperable, high quality, cryptographicallybased security for IPv4 and IPv6 - (RFC 2401)
Benefits of IPsec
Data integrity and source authentication
Data signed by sender and signature is verified by the recipient
Modification of data can be detected by signature verification
Because signature is based on a shared secret, it gives source
authentication
Anti-replay protection
Optional; the sender must provide it but the recipient may ignore
Key management
Destination
Source
Network Layer - IPSec
IPsec Modes
Tunnel Mode
Entire IP packet is encrypted and becomes the data component of a
new (and larger) IP packet.
Frequently used in an IPsec site-to-site VPN
Transport Mode
IPSec header is inserted into the IP packet
No new packet is created
Works well in networks where increasing a packets size could cause
an issue
Frequently used for remote-access VPNs
Without IPSec
Payload
IP
TCP
IP
IPsec
Header Header Header
IP
TCP
New IP IPsec
Header Header Header Header
Transport Mode
IPSec
Payload
Payload
Tunnel Mode
IPSec
IPsec Architecture
AH
Authentication Header
ESP
Encapsulating Security
Payload
IKE
The Internet Key Exchange
An SA is unidirectional
Two SAs required for a bidirectional communication
Security Associations
INTERNET
How to Set Up SA
Manually
Sometimes referred to as manual keying
You configure on each node:
Participating nodes (I.e. traffic selectors)
AH and/or ESP [tunnel or transport]
Cryptographic algorithm and key
Automatically
Using IKE (Internet Key Exchange)
ISAKMP
Internet Security Association and Key Management
Protocol
Used for establishing Security Associations (SA) and
cryptographic keys
Only provides the framework for authentication and key
exchange, but key exchange is independent
Key exchange protocols
Internet Key Exchange (IKE) and Kerberized Internet Negotiation of
Keys (KINK)
Selectors
Defines when to create an SA and what the SA will be used
for
Classifies the type of traffic requiring IPsec protection and
the kind of protection to be applied.
Elements of a selector:
Source IP address
Destination IP address
Protocol (TCP or UDP)
Upper layer protocol
Example: use ESP with NULL encryption and HMAC-SHA1 for routing updates, but
use ESP with 3DES and SHA-1 for telnet and TFTP access for a router
AH Header Format
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Next Header
Payload Length
Reserved
Next Header (8 bits): indicates which upper layer protocol is protected (UDP, TCP, ESP)
Payload Length (8 bits): size of AH in 32-bit longwords, minus 2
Reserved (16 bits): for future use; must be set to all zeroes for now
SPI (32 bits): arbitrary 32-bit number that specifies to the receiving device which security association is being
used (security protocols, algorithms, keys, times, addresses, etc)
Sequence Number (32 bits): start at 1 and must never repeat. It is always set but receiver may choose to
ignore this field
Authentication Data: ICV is a digital signature over the packet and it varies in length depending on the
algorithm used (SHA-1, MD5)
ENCRYPTED
Sequence Number
Initialization Vector (IV)
Payload Data (Variable)
Padding (0-255 bytes)
Padding Length
Next Header
Without AH
With AH
Original
IP Header
TCP/UDP
Original
IP Header
AH
Header
Data
TCP/UDP
ToS
TTL
Header Checksum
Offset
Flags
Data
Before applying
ESP:
Original
IP Header
TCP/UDP
After applying
ESP:
Original
IP Header
ESP
Header
Data
TCP/UDP
Data
Encrypted
Authenticated
ESP
Trailer
ESP
Authentication
Before applying
AH:
Original
IP Header
TCP/UDP
After applying
AH:
New
IP Header
AH
Header
Data
Original
IP Header
ToS
TTL
Header Checksum
Offset
Flags
Data
Before applying
ESP:
Original
IP Header
TCP/UDP
After applying
ESP:
New
IP Header
ESP
Header
Data
Original
IP Header
TCP/UDP
Encrypted
Authenticated
Data
ESP
Trailer
ESP
Authentication
IKE Modes
Mode
Description
Main mode
Aggressive Mode
Quick Mode
Phase II
Establishes a secure channel between computers intended for the
transmission of data (IPsec SA)
Using quick mode
Overview of IKE
1
IPsec Peer
IPsec Peer
2
IKE Phase 1
IKE Phase 2
IPsec Tunnel
Secured traffic exchange
Major
Version
Minor
Version
Exchange Type
Message ID
Flags
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
ISAKMP HEADER
Next Payload
Reserved
Payload Length
Payload
Next Payload
Reserved
Payload Length
Payload
Next Payload: 1byte; identifier for next payload in message. If it is the last payload
It will be set to 0
Reserved: 1byte; set to 0
Payload Length: 2 bytes; length of payload (in bytes) including the header
Payload: The actual payload data
Initiator
Responder
Internet
Negotiate
IKE Policy
Authenticated
DH Exchange
Protect IKE
Peer Identity
(Encrypted)
4
Validate
message 2
Validate
message 1
Responder
Internet
6
Validate
message 3
Configuring IPSec
Step 1: Configure the IKE Phase 1 Policy (ISAKMP Policy)
crypto isakmp policy [priority]
Configuring IPSec
Step 5: Creating map with name
IPSec Layout
Encrypted session
Public Network
R1
R2
Router Configuration
crypto isakmp policy 1
authentication pre-share
Phase 1 SA
encryption aes
hash sha
Encryption and
authentication
group 5
crypto isakmp key Training123 address 172.16.11.66
!
Phase 2 SA
Router Configuration
int fa 0/1
crypto map LAB-VPN
Apply to an
outbound interface
Exit
!
access-list 101 permit ip 172.16.16.0
0.0.0.255 172.16.20.0 0.0.0.255
Define interesting
VPN traffic
Questions?
Thank You!
End of Workshop