• No results found

Network Security Protocols and

N/A
N/A
Protected

Academic year: 2021

Share "Network Security Protocols and"

Copied!
60
0
0

Loading.... (view fulltext now)

Full text

(1)

CS 155 Spring 2009

Network Security Protocols and

Defensive Mechanisms

Defensive Mechanisms

(2)

Plan for today

Plan for today

Network protocol security

Network protocol security

 IPSEC

 BGP instability and S-BGPy  DNS rebinding and DNSSEC

 Wireless security – 802.11i/WPA2

Standard network perimeter defenses

 Firewall

 Packet filter (stateless stateful) Application layer proxies  Packet filter (stateless, stateful), Application layer proxies

 Traffic shaping

 Intrusion detection

(3)

Dan’s lecture last Thursday

Dan s lecture last Thursday

Basic network protocols

Basic network protocols

 IP, TCP, UDP, BGP, DNS

Problems with them

Problems with them

 TCP/IP

 No SRC authentication: can’t tell where packet from  Packet sniffing

 Connection spoofing, sequence numbers

 BGP: advertise bad routes or close good ones  BGP: advertise bad routes or close good ones  DNS: cache poisoning, rebinding

(4)

IPSEC

IPSEC

Security extensions for IPv4 and IPv6

Security extensions for IPv4 and IPv6

IP Authentication Header (AH)

 Authentication and integrity of payload and header  Authentication and integrity of payload and header

IP Encapsulating Security Protocol (ESP)

 Confidentiality of payloadCo de a y o pay oad

ESP with optional ICV (integrity check value)

 Confidentiality, authentication and integrity of y, g y

(5)

Recall packet formats and layers

Recall packet formats and layers

Application Application message - data TCP Header

message

Transport (TCP, UDP) segment TCP data TCP data TCP data k t Network (IP) Link Layer data TCP IP data TCP IP ETH ETF packet frame y

IP Header Link (Ethernet) Header

Link (Ethernet) Trailer

(6)

IPSec Transport Mode: IPSEC instead of IP header

(7)

IPSEC Tunnel Mode

IPSEC Tunnel Mode

(8)
(9)

VPN

VPN

Three different modes of use:

Three different modes of use:

 Remote access client connections  LAN-to-LAN internetworking g

 Controlled access within an intranet

Several different protocols

 PPTP – Point-to-point tunneling protocol  L2TP – Layer-2 tunneling protocol

Data layer

(10)

BGP example

BGP example

3 2 7 3 4 1 2 7 2 7 3 2 7 2 6 5 2 6 5 3 2 6 5 5 5 8 2 7 7 2 7 6 2 7 2 6 5 7 2 6 5 6 5 6 5 7 7 2 6 5 5

Transit: 2 provides transit for 7

Algorithm seems to work OK in practice

 BGP is does not respond well to frequent node outages  BGP is does not respond well to frequent node outages

(11)

BGP Security Issues

BGP Security Issues

BGP is the basis for all inter-ISP routingg

Benign configuration errors affect about 1% of all routing table entries at any time

The current system is highly vulnerable to human errors, and a wide range of malicious attacks

 links  links  routers

 management stations

MD5 MAC i l d h d t l k f

MD5 MAC is rarely used, perhaps due to lack of

automated key management, and it addresses only one class of attacks

(12)

S-BGP Design Overview

S BGP Design Overview

IPsec: secure point-to-point router communicationp p Public Key Infrastructure: authorization framework for all S-BGP entities

Attestations: digitally-signed authorizations

 Address: authorization to advertise specified address blocks  Route: Validation of UPDATEs based on a new path

 Route: Validation of UPDATEs based on a new path

attribute, using PKI certificates and attestations

Repositories for distribution of certificates, CRLs, and address attestations

address attestations

Tools for ISPs to manage address attestations, process certificates & CRLs, etc.

p ,

(13)

Address Attestation

Address Attestation

Indicates that the final AS listed in the UPDATE is authorized by the owner of those address blocks to advertise the address blocks in the UPDATE

I l d id tifi ti f

Includes identification of:  owner’s certificate

 AS to be advertising the address blocks  address blocks

 expiration date

Digitally signed by owner of the address blocks Digitally signed by owner of the address blocks, traceable up to the IANA via certificate chain

Used to protect BGP from erroneous UPDATEs p

(14)

Route Attestation

Route Attestation

Indicates that the speaker or its AS authorizes the p listener’s AS to use the route in the UPDATE

Includes identification of:

f f

 AS’s or BGP speaker’s certificate issued by owner of the AS  the address blocks and the list of ASes in the UPDATE

 the neighbor  expiration date

Digitally signed by owner of the AS (or BGP speaker) distributing the UPDATE traceable to the IANA

distributing the UPDATE, traceable to the IANA ... Used to protect BGP from erroneous UPDATEs

(15)

Validating a Route

Validating a Route

To validate a route from AS

n

, AS

n+1

needs:

To validate a route from AS

n

, AS

n+1

needs:

 address attestation from each organization owning an

address block(s) in the NLRI

address allocation certificate from each organization owning

 address allocation certificate from each organization owning

address blocks in the NLRI

 route attestation from every AS along the path (AS1 to ASn),

where the route attestation for AS specifies the NLRI and where the route attestation for ASk specifies the NLRI and the path up to that point (AS1 through ASk+1)

 certificate for each AS or router along path (AS1 to ASn) to

check signatures on the route attestations check signatures on the route attestations

 and, of course, all the relevant CRLs must have been

checked

(16)

Recall: DNS Lookup

Recall: DNS Lookup

Query: "www.example.com A?"

Reply Resource Records in Reply "com NS a gtld net" 3 "a.gtld.net A 192.5.6.30"com. NS a.gtld.net

5 "example.com. NS a.iana.net" "a.iana.net A 192.0.34.43" 7 8 "www.example.com A 1.2.3.4" "www.example.com A 1.2.3.4"

Local recursive resolver caches these for TTL specified by RR

(17)

DNS is Insecure

DNS is Insecure

Packets over UDP, < 512 bytes

Packets over UDP, < 512 bytes

16-bit TXID, UDP Src port only “security”

Resolver accepts packet if above match

Resolver accepts packet if above match

Packet from whom? Was it manipulated?

Cache poisoning

 Attacker forges record at resolver  Attacker forges record at resolver

 Forged record cached, attacks future lookups  Kaminsky (BH USA08)

 Attacks delegations with “birthday problem”  Attacks delegations with birthday problem

(18)

DNSSEC Goal

“The Domain Name System (DNS) security extensions

DNSSEC Goal

y ( ) y

provide origin authentication and integrity assurance services for DNS data, including mechanisms for

authenticated denial of existence of DNS data.” authenticated denial of existence of DNS data.

(19)

DNSSEC

DNSSEC

Basically no change to packet formaty g p

 Object security of DNS data, not channel security New Resource Records (RRs)

f

 RRSIG : signature of RR by private zone key  DNSKEY : public zone key

 DS : crypto digest of child zone key

 NSEC / NSEC3 :authenticated denial of existence Lookup referral chain (unsigned)

O i i tt t ti h i (PKI) ( i d)

Origin attestation chain (PKI) (signed)  Start at pre-configured trust anchors

 DS/DNSKEY of zone (should include root)

(20)

DNSSEC Lookup

Query: "www.example.com A?"

DNSSEC Lookup

3 Reply

"com. NS a.gtld.net"

RRs in DNS Reply Added by DNSSEC "com. DS"

3

"a.gtld.net A 192.5.6.30" "example com NS a iana net"

"RRSIG(DS) by ."

"com. DNSKEY"

"RRSIG(DNSKEY) by com " 5 example.com. NS a.iana.net"a.iana.net A 192.0.34.43" RRSIG(DNSKEY) by com."example.com. DS"

"RRSIG(DS) by com."

7 "www.example.com A 1.2.3.4" "RRSIG(DNSKEY) by example.com.""example.com DNSKEY" "RRSIG(A) by example.com." 8 "www.example.com A 1.2.3.4" Last Hop?

(21)

Authenticated Denial-of-Existence

Authenticated Denial of Existence

Most DNS lookups result in denial-of-existence p Understood mandate of offline-technique

NSEC (Next SECure)

 Lists all extant RRs associated with an owner name  Points to next owner name with extant RR

 Easy zone enumeration  Easy zone enumeration NSEC3

 Hashes owner names

 Public salt to prevent pre-computed dictionaries

 NSEC3 chain in hashed order

 Opt-out bit for TLDs to support incremental adoption

 For TLD type zones to support incremental adoption  Non-DNSSEC children not in NSEC3 chain

(22)

DNS Rebinding Attack

[DWF’96, R’01]

g

<iframe src="http://www.evil.com"> DNSSEC cannot

h k

ns.evil.com

www.evil.com? 171 64 7 115 TTL = 0

stop this attack

Fire w DNS server 171.64.7.115 TTL = 0 192.168.0.100 w all www.evil.com web server corporate

Read permitted: it’s the “same origin”

171.64.7.115

corporate web server

192.168.0.100

(23)

DNS Rebinding Defenses

DNS Rebinding Defenses

Browser mitigation: DNS Pinning

Browser mitigation: DNS Pinning

 Refuse to switch to a new IP

 Interacts poorly with proxies, VPN, dynamic DNS, …p y p , , y ,  Not consistently implemented in any browser

Server-side defenses

 Check Host header for unrecognized domains  Authenticate users with something other than IP

Firewall defenses

 External names can’t resolve to internal addresses  Protects browsers inside the organization

(24)

Mobile IPv6 Architecture

Mobile IPv6 Architecture

Mobile Node (MN)

IPv6

Mobile Node (MN)

Direct connection via binding updateg p

Corresponding Node (CN)

Home Agent (HA)

Authentication is a requirement

(25)

802.11i Protocol

Authentic a-tion Server (RADIUS) Authenticator UnAuth/UnAssoc 802.1X Blocked No Key Supplicant UnAuth/UnAssoc 802.1X Blocked No Key Supplicant Auth/Assoc 802.1X Blocked No Key Authenticator Auth/Assoc 802.1X Blocked No Key Authentic a-tion Server (RADIUS) Supplicant Auth/Assoc 802.1X Blocked MSK Authenticator Auth/Assoc 802.1X Blocked No Key Authentic a-tion Server (RADIUS) Supplicant Auth/Assoc 802.1X Blocked PMK Authenticator Auth/Assoc 802.1X Blocked PMK Authentic a-tion Server (RADIUS) Supplicant Auth/Assoc 802.1X UnBlocked PTK/GTK Authenticator Auth/Assoc 802.1X UnBlocked PTK/GTK Authentic a-tion Server (RADIUS) Supplicant Auth/Assoc 802.1X UnBlocked New GTK Authenticator Auth/Assoc 802.1X UnBlocked New GTK Authentic a-tion Server (RADIUS) Supplicant Auth/Assoc 802.1X UnBlocked PTK/GTK Authenticator Auth/Assoc 802.1X UnBlocked PTK/GTK Authentic a-tion Server (RADIUS) (RADIUS) No Key No Key No Key

No Key No Key (RADIUS)

No Key 802.11 Association MSK No Key (RADIUS) MSK PMK PMK (RADIUS) No Key PTK/GTK PTK/GTK (RADIUS) No Key

New GTK New GTK (RADIUS)

No Key PTK/GTK PTK/GTK (RADIUS) No Key EAP/802.1X/RADIUS Authentication MSK MSK 4-Way Handshake

Group Key Handshake

(26)

Announcements

Announcements

Homework 2 will be out by Thurs

Homework 2 will be out by Thurs

(27)

Perimeter and Internal Defenses

Perimeter and Internal Defenses

Commonly deployed defenses

Co

o y dep oyed de e ses

 Perimeter defenses – Firewall, IDS

 Protect local area network and hosts

 Keep external threats from internal network

Rest of this lecture

 Keep external threats from internal network

 Internal defenses – Virus scanning

 Protect hosts from threats that get through the

i t d f

perimeter defenses

(28)

Basic Firewall Concept

Basic Firewall Concept

Separate local area net from internet

Separate local area net from internet

Firewall

Local network Internet

Router

(29)

Packet Filtering

Packet Filtering

Uses transport-layer information only  IP Source Address, Destination Address  Protocol (TCP, UDP, ICMP, etc)

 TCP or UDP source & destination ports  TCP Flags (SYN, ACK, FIN, RST, PSH, etc)  ICMP message type

Examplesa p es

 DNS uses port 53

 Block incoming port 53 packets except known trusted servers

Issues Issues

 Stateful filtering

 Encapsulation: address translation, other complications  Fragmentation

(30)

Source/Destination Address Forgery

Source/Destination Address Forgery

(31)

More about networking: port numbering

More about networking: port numbering

TCP connection

 Server port uses number less than 1024

 Client port uses number between 1024 and 16383 Permanent assignment

Permanent assignment

 Ports <1024 assigned permanently

 20,21 for FTP 23 for Telnet  25 for server SMTP25 for server SMTP 80 for HTTP80 for HTTP

Variable use

 Ports >1024 must be available for client to make connection

Limitation for stateless packet filtering

 Limitation for stateless packet filtering

 If client wants port 2048, firewall must allow incoming traffic

 Better: stateful filtering knows outgoing requests

 Only allow incoming traffic on high port to a machine that has  Only allow incoming traffic on high port to a machine that has

(32)

Filtering Example: Inbound SMTP

Filtering Example: Inbound SMTP

(33)

Filtering Example: Outbound SMTP

Filtering Example: Outbound SMTP

Known low port out, arbitrary high port in

(34)

Stateful or Dynamic Packet Filtering

Stateful or Dynamic Packet Filtering

(35)

Telnet

Telnet

Telnet Client Telnet Server23 1234

 Client opens channel to server; tells server its port number The ACK bit is

number. The ACK bit is not set while establishing the connection but will be set on the remaining

packets packets

 Server acknowledges

(36)

FTP

FTP Client FTP Server

FTP

20 Data 21 Command 5150 5151  Client opens  Data Command 5150 5151  Client opens command channel to server; tells server second port number

 

 Server acknowledges

 Server opens data

 p channel to client’s second port  Client  Client acknowledges

(37)

Normal IP Fragmentation

Complication for firewalls

Normal IP Fragmentation

(38)

Abnormal Fragmentation

Abnormal Fragmentation

Low offset allows second packet to overwrite TCP header at receiving host

(39)

Packet Fragmentation Attack

Packet Fragmentation Attack

Firewall configuration

TCP port 23 is blocked but SMTP port 25 is allowed

 TCP port 23 is blocked but SMTP port 25 is allowed

First packet

 Fragmentation Offset = 0.  DF bit = 0 : "May Fragment"

MF bit 1 "M F t "

 MF bit = 1 : "More Fragments"

 Destination Port = 25. TCP port 25 is allowed, so firewall allows packet

Second packet

 Fragmentation Offset = 1: second packet overwrites all but first 8 bits of

th fi t k t the first packet

 DF bit = 0 : "May Fragment"  MF bit = 0 : "Last Fragment."

 Destination Port = 23. Normally be blocked, but sneaks by!

Wh t h

What happens

 Firewall ignores second packet “TCP header” because it is fragment of first  At host, packet reassembled and received at port 23

(40)

Proxying Firewall

Beyond packet filtering

Proxying Firewall

Application-level proxiespp p

 Tailored to http, ftp, smtp, etc.

 Some protocols easier to proxy than others Policy embedded in proxy programs Policy embedded in proxy programs

 Proxies filter incoming, outgoing packets  Reconstruct application-layer messages

 Can filter specific application-layer commands etc  Can filter specific application-layer commands, etc.

 Example: only allow specific ftp commands  Other examples: ?

Several network locations – see next slides Several network locations – see next slides

(41)

Firewall with application proxies

Firewall with application proxies

Telnet FTP proxy SMTP proxy proxy Telnet daemon SMTP daemon FTP daemon h d d Network Connection

(42)

Screened Host Architecture

Screened Host Architecture

(43)

Screened Subnet Using Two Routers

Screened Subnet Using Two Routers

(44)

Dual Homed Host Architecture

Dual Homed Host Architecture

(45)

Application-level proxies

Application level proxies

Enforce policy for specific protocolsp y p p  E.g., Virus scanning for SMTP

 Need to understand MIME, encoding, Zip archives

 Flexible approach but may introduce network delays  Flexible approach, but may introduce network delays “Batch” protocols are natural to proxy

 SMTP (E-Mail) NNTP (Net news)

 DNS (Domain Name System) NTP (Network Time Protocol Must protect host running protocol stack

Disable all non required services; keep it simple

 Disable all non-required services; keep it simple  Install/modify services you want

 Run security audit to establish baseline

(46)

References

References

Elizabeth D Zwicky William R Cheswick Elizabeth D. Zwicky Simon Cooper D. Brent Chapman William R Cheswick Steven M Bellovin Aviel D Rubin

(47)

Traffic Shaping

Traffic Shaping

Traditional firewall  Allow traffic or not Traffic shaping

 Limit certain kinds of traffic

 Can differentiate by host addr, protocol, etc  Multi-Protocol Label Switching (MPLS)

 Label traffic flows at the edge of the network and let core g

(48)

Stanford computer use

Stanford computer use

(49)

PacketShaper Controls

PacketShaper Controls

A partition:

 Creates a virtual pipe within a link for

each traffic class

 Provides a min, max bandwidth,  Enables efficient bandwidth use

Rate shaped P2P capped  at 300kbpsp Rate shaped HTTP/SSL 

(50)

PacketShaper report: HTTP

PacketShaper report: HTTP

Outside Web Server Normalized

Network Response Times Network Response Times

Inside Web Ser er Normali ed No Shaping Shaping

Inside Web Server Normalized Network Response Times

(51)

Host and network intrusion detection

Host and network intrusion detection

Intrusion prevention

Intrusion prevention

 Network firewall

 Restrict flow of packets

 System security

 Find buffer overflow vulnerabilities and remove them!

I t

i

d t ti

Intrusion detection

 Discover system modifications

 Tripwire  Tripwire

 Look for attack in progress

 Network traffic patterns

(52)

Tripwire

Tripwire

Outline of standard attack

Outline of standard attack

 Gain user access to system  Gain root access

 Replace system binaries to set up backdoor  Use backdoor for future activities

Tripwire detection point: system binaries

 Compute hash of key system binaries

 Compare current hash to hash stored earlier  Report problem if hash is different

Store reference hash codes on read only medium

(53)

Is Tripwire too late?

Is Tripwire too late?

Typical attack on server

Typical attack on server

 Gain access

 Install backdoor

 This can be in memory, not on disk!!

 Use it

Tripwire

 Is a good idea

W t t h tt k th t d ’t h t fil

 Wont catch attacks that don’t change system files  Detects a compromise that

has happened

(54)

Detect modified binary in memory?

Detect modified binary in memory?

Can use system-call monitoring techniques

Can use system call monitoring techniques

For example

[Wagner, Dean IEEE S&P ’01]

 Build automaton of expected system calls  Build automaton of expected system calls

 Can be done automatically from source code

 Monitor system calls from each program  Catch violation

Results so far: lots better than not using source code! Results so far: lots better than not using source code!

(55)

Example code and automaton

Example code and automaton

Entry(f) Entry(g) open()

f(int x) {

x ? getuid() : geteuid(); x++

close() getuid() geteuid()

x++ } g() { fd ("f " O RDONLY) Exit(f) Exit(g) exit() fd = open("foo", O_RDONLY); f(0); close(fd); f(1); exit(0); }

(56)

General intrusion detection

General intrusion detection

Many intrusion detection systems

http://www.snort.org/

Many intrusion detection systems

 Close to 100 systems with current web pages  Network-based, host-based, or combination, ,

Two basic models

 Misuse detection model

 Maintain data on known attacks

 Look for activity with corresponding signatures

 Anomaly detection model  Anomaly detection model

 Try to figure out what is “normal”  Report anomalous behavior

(57)

Anomaly Detection

Anomaly Detection

Basic idea

Basic idea

 Monitor network traffic, system calls  Compute statistical propertiesp p p

 Report errors if statistics outside established range

Example – IDES (Denning, SRI)

 For each user, store daily count of certain

activities

 E g Fraction of hours spent reading email  E.g., Fraction of hours spent reading email

 Maintain list of counts for several days

 Report anomaly if count is outside weighted normReport anomaly if count is outside weighted norm

(58)

Anomaly – sys call sequences

[Hofmeyr, Somayaji, Forrest]

Anomaly sys call sequences

Build traces during normal run of program

Build traces during normal run of program

 Example program behavior (sys calls)

open read write open mmap write fchmod close

 Sample traces stored in file (4-call sequences)

open read write open read write open mmap read write open mmap write open mmap write open mmap write fchmod mmap write fchmod close

 Report anomaly if following sequence observed

open read read open mmap write fchmod close open read read open mmap write fchmod close

(59)

Difficulties in intrusion detection

Difficulties in intrusion detection

Lack of training data

Lack of training data

 Lots of “normal” network, system call data

 Little data containing realistic attacks, anomaliesg ,

Data drift

 Statistical methods detect changes in behavior  Attacker can attack gradually and incrementally

Main characteristics not well understood

 By many measures, attack may be within bounds

of “normal” range of activities

F l

id tifi ti

tl

False identifications are very costly

(60)

Summary

Summary

Network protocol security

Network protocol security

 IPSEC

 BGP instability and S-BGPy  DNSSEC, DNS rebinding

 Wireless security – 802.11i/WPA2

Standard network perimeter defenses

 Firewall

 Packet filter (stateless stateful) Application layer proxies  Packet filter (stateless, stateful), Application layer proxies

 Traffic shaping

 Intrusion detection

References

Related documents

De esta formase pretende relacionar currículum, sostenibilidad y calidad, desde la oportunidad que la evaluación brinda como herramienta de construcción y mejora del

The perceptions and practices of the physicians from the 32 national teams competing in the FIFA 2014 World Cup were surveyed with regards to risk factors, screening tests and

Unless Owner delivers to Broker a written certification, expressly prohibiting the dissemination to a multiple listing service of the listing and any listing

the error will be logged into the error buffer and can be read out via ComPair, via blinking LED method LAYER 1-2 error, or in case picture is visible, via SAM. 5.5.2 How to Read

Tucson Water recently implemented a new real-time web-based program management system (iBAK) that allows independent backflow testers (independent testers test all of the

Other international initiatives include the Global Harmonization Task Force (GHTF) for medical device regulations, the Pharmaceutical Inspection Convention and

Results show high correlations ( &gt;. 8) between mobile phone data derived indicators and several relevant food security variables such as expenditure on food or