43
Firewalls Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network Protocols Instead? Firewall Advantages Schematic of a Firewall Conceptual Pieces The DMZ Positioning Firewalls Why Administrative Domains? Splitting a Location Firewall Philosophies Blocking Outbound Traffic? Packet Filters Stateful Packet Filters 1 / 43

Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

  • Upload
    others

  • View
    20

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Firewalls

Firewalls

What’s a Firewall

Why Use Firewalls?

Tradttional Firewallsby Analogy

Should We Fix theNetwork ProtocolsInstead?

Firewall Advantages

Schematic of aFirewall

Conceptual Pieces

The DMZ

Positioning Firewalls

Why AdministrativeDomains?

Splitting a Location

Firewall Philosophies

Blocking OutboundTraffic?

Packet Filters

Stateful PacketFilters

1 / 43

Page 2: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

What’s a Firewall

Firewalls

What’s a Firewall

Why Use Firewalls?

Tradttional Firewallsby Analogy

Should We Fix theNetwork ProtocolsInstead?

Firewall Advantages

Schematic of aFirewall

Conceptual Pieces

The DMZ

Positioning Firewalls

Why AdministrativeDomains?

Splitting a Location

Firewall Philosophies

Blocking OutboundTraffic?

Packet Filters

Stateful PacketFilters

2 / 43

■ Barrier between us and them.■ Limits communication to the outside world.⇒ The outside world can be another part of the

same organization.■ Only a very few machines exposed to attack.

Page 3: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Why Use Firewalls?

Firewalls

What’s a Firewall

Why Use Firewalls?

Tradttional Firewallsby Analogy

Should We Fix theNetwork ProtocolsInstead?

Firewall Advantages

Schematic of aFirewall

Conceptual Pieces

The DMZ

Positioning Firewalls

Why AdministrativeDomains?

Splitting a Location

Firewall Philosophies

Blocking OutboundTraffic?

Packet Filters

Stateful PacketFilters

3 / 43

■ Most hosts have security holes.Proof: Most software is buggy. Therefore,most security software has security bugs.

■ Firewalls run much less code, and hence havefew bugs (and holes).

■ Firewalls can be professionally (and hencebetter) administered.

■ Firewalls run less software, with more loggingand monitoring.

■ They enforce the partition of a network intoseparate security domains.

■ Without such a partition, a network acts as a

giant virtual machine, with an unknown set of

privileged and ordinary users.

Page 4: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Tradttional Firewalls by Analogy

Firewalls

What’s a Firewall

Why Use Firewalls?

Tradttional Firewallsby Analogy

Should We Fix theNetwork ProtocolsInstead?

Firewall Advantages

Schematic of aFirewall

Conceptual Pieces

The DMZ

Positioning Firewalls

Why AdministrativeDomains?

Splitting a Location

Firewall Philosophies

Blocking OutboundTraffic?

Packet Filters

Stateful PacketFilters

4 / 43

■ Passports are (generally) checked at theborder.

■ My office doesn’t have a door direct to theoutside.

■ My bedroom doesn’t have a real lock.■ But a bank still has a vault. . .

Page 5: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Should We Fix the Network

Protocols Instead?Firewalls

What’s a Firewall

Why Use Firewalls?

Tradttional Firewallsby Analogy

Should We Fix theNetwork ProtocolsInstead?

Firewall Advantages

Schematic of aFirewall

Conceptual Pieces

The DMZ

Positioning Firewalls

Why AdministrativeDomains?

Splitting a Location

Firewall Philosophies

Blocking OutboundTraffic?

Packet Filters

Stateful PacketFilters

5 / 43

■ Network security is not the problem.■ Firewalls are not a solution to network

problems. They are a network response to ahost security problem.

■ More precisely, they are a response to thedismal state of software engineering; taken asa whole, the profession does not know how toproduce software that is secure, correct, andeasy to administer.

■ Consequently, better network protocols will notobviate the need for firewalls. The bestcryptography in the world will not guardagainst buggy code.

Page 6: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Firewall Advantages

Firewalls

What’s a Firewall

Why Use Firewalls?

Tradttional Firewallsby Analogy

Should We Fix theNetwork ProtocolsInstead?

Firewall Advantages

Schematic of aFirewall

Conceptual Pieces

The DMZ

Positioning Firewalls

Why AdministrativeDomains?

Splitting a Location

Firewall Philosophies

Blocking OutboundTraffic?

Packet Filters

Stateful PacketFilters

6 / 43

If you don’t need it, get rid of it.

■ No ordinary users, and hence no passowrds forthem

■ Run as few servers as possible■ Install conservative software, don’t get the

latest fancy servers, etc.)■ Log everything, and monitor the log files.■ Keep copious backups, including a “Day 0”

backup.

Ordinary machines cannot be run that way.

Page 7: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Schematic of a Firewall

Firewalls

What’s a Firewall

Why Use Firewalls?

Tradttional Firewallsby Analogy

Should We Fix theNetwork ProtocolsInstead?

Firewall Advantages

Schematic of aFirewall

Conceptual Pieces

The DMZ

Positioning Firewalls

Why AdministrativeDomains?

Splitting a Location

Firewall Philosophies

Blocking OutboundTraffic?

Packet Filters

Stateful PacketFilters

7 / 43

DMZ

Gateway(s) OutsideInside

Filter Filter

Page 8: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Conceptual Pieces

Firewalls

What’s a Firewall

Why Use Firewalls?

Tradttional Firewallsby Analogy

Should We Fix theNetwork ProtocolsInstead?

Firewall Advantages

Schematic of aFirewall

Conceptual Pieces

The DMZ

Positioning Firewalls

Why AdministrativeDomains?

Splitting a Location

Firewall Philosophies

Blocking OutboundTraffic?

Packet Filters

Stateful PacketFilters

8 / 43

■ An “inside” — everyone on the inside ispresumed to be a good guy

■ An “outside” — bad guys live there■ A “DMZ” (Demilitarized Zone) — put

necessary but potentially dangerous serversthere

Page 9: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

The DMZ

Firewalls

What’s a Firewall

Why Use Firewalls?

Tradttional Firewallsby Analogy

Should We Fix theNetwork ProtocolsInstead?

Firewall Advantages

Schematic of aFirewall

Conceptual Pieces

The DMZ

Positioning Firewalls

Why AdministrativeDomains?

Splitting a Location

Firewall Philosophies

Blocking OutboundTraffic?

Packet Filters

Stateful PacketFilters

9 / 43

■ Good spot for things like mail and web servers■ Outsiders can send email, retrieve web pages■ Insiders can retrieve email, update web pages■ Must monitor such machines very carefully!

Page 10: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Positioning Firewalls

Firewalls

What’s a Firewall

Why Use Firewalls?

Tradttional Firewallsby Analogy

Should We Fix theNetwork ProtocolsInstead?

Firewall Advantages

Schematic of aFirewall

Conceptual Pieces

The DMZ

Positioning Firewalls

Why AdministrativeDomains?

Splitting a Location

Firewall Philosophies

Blocking OutboundTraffic?

Packet Filters

Stateful PacketFilters

10 / 43

Firewalls protect administrative divisions.

Page 11: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Why Administrative Domains?

Firewalls

What’s a Firewall

Why Use Firewalls?

Tradttional Firewallsby Analogy

Should We Fix theNetwork ProtocolsInstead?

Firewall Advantages

Schematic of aFirewall

Conceptual Pieces

The DMZ

Positioning Firewalls

Why AdministrativeDomains?

Splitting a Location

Firewall Philosophies

Blocking OutboundTraffic?

Packet Filters

Stateful PacketFilters

11 / 43

■ Firewalls enforce policy■ Policy follows administrative boundaries, not

physical ones■ Example: separate protection domains for

Legal, HR, Research, etc.

Page 12: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Splitting a Location

Firewalls

What’s a Firewall

Why Use Firewalls?

Tradttional Firewallsby Analogy

Should We Fix theNetwork ProtocolsInstead?

Firewall Advantages

Schematic of aFirewall

Conceptual Pieces

The DMZ

Positioning Firewalls

Why AdministrativeDomains?

Splitting a Location

Firewall Philosophies

Blocking OutboundTraffic?

Packet Filters

Stateful PacketFilters

12 / 43

Page 13: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Firewall Philosophies

Firewalls

What’s a Firewall

Why Use Firewalls?

Tradttional Firewallsby Analogy

Should We Fix theNetwork ProtocolsInstead?

Firewall Advantages

Schematic of aFirewall

Conceptual Pieces

The DMZ

Positioning Firewalls

Why AdministrativeDomains?

Splitting a Location

Firewall Philosophies

Blocking OutboundTraffic?

Packet Filters

Stateful PacketFilters

13 / 43

1. Block all dangerous destinations.2. Block everything; unblock things known to be

both safe and necessary.

Option 1 gets you into an arms race with theattackers; you have to know everything that isdangerous, in all parts of your network. Option 2is much safer.

Page 14: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Blocking Outbound Traffic?

Firewalls

What’s a Firewall

Why Use Firewalls?

Tradttional Firewallsby Analogy

Should We Fix theNetwork ProtocolsInstead?

Firewall Advantages

Schematic of aFirewall

Conceptual Pieces

The DMZ

Positioning Firewalls

Why AdministrativeDomains?

Splitting a Location

Firewall Philosophies

Blocking OutboundTraffic?

Packet Filters

Stateful PacketFilters

14 / 43

■ Many sites permit arbitrary outbound traffic,but. . .

■ Internal bad guys?■ Extrusion detection?■ Regulatory requirements?■ Other corporate policy?

Page 15: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Packet Filters

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

15 / 43

Page 16: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Types of Firewalls

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

16 / 43

■ Packet Filters■ Dynamic Packet Filters■ Application Gateways■ Circuit Relays■ Personal and/or Distributed Firewalls

Many firewalls are combinations of these types.

Page 17: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Packet Filters

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

17 / 43

■ Router-based (and hence cheap).■ Individual packets are accepted or rejected; no

context is used.■ Filter rules are hard to set up; the primitives

are often inadequate, and different rules caninteract.

■ Packet filters a poor fit for ftp and X11.■ Hard to manage access to RPC-based services.

Page 18: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Running Without State

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

18 / 43

■ We want to permit outbound connections■ We have to permit reply packets■ For TCP, this can be done without state■ The very first packet of a TCP connection has

just the SYN bit set■ All others have the ACK bit set■ Solution: allow in all packets with ACK turned

on

Page 19: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Sample Rule Set

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

19 / 43

We want to block a spamme, but allow anyoneelse to send email to our gateway.

block: theirhost = spammer

allow: theirhost = any and

theirport = any and

ourhost = our-gw and

ourport = 25.

Page 20: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Incorrect Rule Set

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

20 / 43

We want to allow all conversations with remotemail gateways.

allow: theirhost = any and

theirport = 25 and

ourhost = any and

ourport = any.

We don’t control port number selection on theremote host. Any remote process on port 25 cancall in.

Page 21: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

The Right Choice

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

21 / 43

allow: theirhost = any and

theirport = 25 and

ourhost = any and

ourport = any and

bitset(ACK)

Permit outgoing calls.

Page 22: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Locating Packet Filters

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

22 / 43

■ Generally have per-interface rules■ Rules are further divided to apply to inbound

or outbound packets on an interface■ Better to filter inbound packets — less loss of

information

Page 23: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Filtering Inbound Packets

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

23 / 43

DMZFirewall

Outside

Inside

If you filter outbound packets to the DMZ link,you can’t tell where they came from.

Page 24: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Packet Filters and UDP

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

24 / 43

■ UDP has no notion of a connection. It istherefore impossible to distinguish a reply to aquery—which should be permitted—from anintrusive packet.

■ Address-spoofing is easy — no connections■ At best, one can try to block known-dangerous

ports. But that’s a risky game.■ The safe solution is to permit UDP packets

through to known-safe servers only.

Page 25: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

UDP Example: DNS

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

25 / 43

■ Accepts queries on port 53■ Block if handling internal queries only; allow if

permitting external queries■ What about recursive queries?■ Bind local response socket to some other port;

allow inbound UDP packets to it■ Or put the DNS machine in the DMZ, and run

no other UDP services■ (Deeper issues with DNS semantics; stay

tuned)

Page 26: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

ICMP Problems

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

26 / 43

■ Often see ICMP packets in response to TCP orUDP packets

■ Important example: “Path MTU” response■ Must be allowed in or connectivity can break■ Simple packet filters can’t match things up

Page 27: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

The Problem with RPC

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

27 / 43

■ RPC services bind to random port numbers■ There’s no way to know in advance which to

block and which to permit■ Similar considerations apply to RPC clients■ Systems using RPC cannot be protected by

simple packet filters

Page 28: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

A Failed Approach

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

28 / 43

One will sometimes read “just block low-numberedUDP ports”.

$ rpcinfo -p cluster.cs.columbia.edu

100004 2 udp 1023 ypserv

100004 1 udp 1023 ypserv

100005 1 udp 32882 mountd

100005 2 udp 32882 mountd

100005 3 udp 32882 mountd

The precise patterns are implementation-specific

Page 29: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

FTP, SIP, et al.

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

29 / 43

■ FTP clients (and some other services) usesecondary channels

■ Again, these live on random port numbers■ Simple packet filters cannot handle this

Page 30: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Saving FTP

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

30 / 43

■ By default, FTP clients send a PORT commandto specify the address for an inboundconnection

■ If the PASV command is used instead, the datachannel uses a separate outbound connection

■ If local policy permits arbitrary outboundconnections, this works well

Page 31: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

The Role of Packet Filters

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

31 / 43

■ Packet filters are not very useful asgeneral-purpose firewalls

■ That said, they have their place■ Several special situations where they’re perfect

Page 32: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Simplicity

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

32 / 43

■ Packet filters are very simple, and can protectsome simple environments

■ Virtually all routers have the facility built in

Page 33: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Point Firewalls

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

33 / 43

Internet Web

Server

Allow in ports 80 and 443. Block everything else.This is a Web server appliance — it shouldn’t doanything else! But — it may have necessaryinternal services for site administration.

Page 34: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Address Filtering

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

34 / 43

■ At the border, block internal addresses fromcoming in from the outside

■ Similarly, prevent fake addresses from goingout

Page 35: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Sample Configuration

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

35 / 43

DNS

Firewall

Outside

Inside: 10.0.0.0/16

DMZ: 192.168.42.0/24

Mail

Page 36: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Sample Rules

Firewalls

Packet Filters

Types of Firewalls

Packet FiltersRunning WithoutState

Sample Rule Set

Incorrect Rule Set

The Right Choice

Locating PacketFiltersFiltering InboundPacketsPacket Filters andUDP

UDP Example: DNS

ICMP ProblemsThe Problem withRPC

A Failed Approach

FTP, SIP, et al.

Saving FTP

The Role of PacketFilters

Simplicity

Point Firewalls

Address Filtering

SampleConfiguration

Sample Rules

Stateful PacketFilters

36 / 43

Interface Action Addr Port Flags

Outside Block src=10.0.0.0/16Outside Block src=192.168.42.0/24Outside Allow dst=Mail 25Outside Block dst=DNS 53Outside Allow dst=DNS UDPOutside Allow Any ACKOutside Block AnyDMZ Block src 6=192.168.42.0/24DMZ Allow dst=10.0.0.0/16 ACKDMZ Block dst=10.0.0.0/16DMZ Allow AnyInside Block src 6=10.0.0.0/16Inside Allow dst=Mail 993Inside Allow dst=DNS 53Inside Block dst=192.168.42.0/24Insde Allow Any

Page 37: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Stateful Packet Filters

Firewalls

Packet Filters

Stateful PacketFiltersStateful PacketFilters

Keeping State

Problems Solved

Remaining Problems

Network AddressTranslators

Comparison

37 / 43

Page 38: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Stateful Packet Filters

Firewalls

Packet Filters

Stateful PacketFiltersStateful PacketFilters

Keeping State

Problems Solved

Remaining Problems

Network AddressTranslators

Comparison

38 / 43

■ Most common type of packet filter■ Solves many — but not all — of the problems

with simple packet filters■ Requires per-connection state in the firewall

Page 39: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Keeping State

Firewalls

Packet Filters

Stateful PacketFiltersStateful PacketFilters

Keeping State

Problems Solved

Remaining Problems

Network AddressTranslators

Comparison

39 / 43

■ When a packet is sent out, record that■ Associate inbound packet with state created

by outbound packet

Page 40: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Problems Solved

Firewalls

Packet Filters

Stateful PacketFiltersStateful PacketFilters

Keeping State

Problems Solved

Remaining Problems

Network AddressTranslators

Comparison

40 / 43

■ Can handle UDP query/response■ Can associate ICMP packets with connection■ Solves some of the inbound/outbound filtering

issues — but state tables still need to beassociated with inbound packets

■ Still need to block against address-spoofing

Page 41: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Remaining Problems

Firewalls

Packet Filters

Stateful PacketFiltersStateful PacketFilters

Keeping State

Problems Solved

Remaining Problems

Network AddressTranslators

Comparison

41 / 43

■ Still have problems with secondary ports■ Still have problems with RPC■ Still have problems with complex semantics

(i.e., DNS)

Page 42: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Network Address Translators

Firewalls

Packet Filters

Stateful PacketFiltersStateful PacketFilters

Keeping State

Problems Solved

Remaining Problems

Network AddressTranslators

Comparison

42 / 43

■ Translates source address (and sometimes portnumbers)

■ Primary purpose: coping with limited numberof global IP addresses

■ Sometimes marketed as a very strong firewall— is it?

■ It’s not really stronger than a stateful packetfilter

Page 43: Firewalls - Columbia Universitysmb/classes/f06/l15.pdf · Firewall Advantages Firewalls What’s a Firewall Why Use Firewalls? Tradttional Firewalls by Analogy Should We Fix the Network

Comparison

Firewalls

Packet Filters

Stateful PacketFiltersStateful PacketFilters

Keeping State

Problems Solved

Remaining Problems

Network AddressTranslators

Comparison

43 / 43

Stateful Packet Filter NATOutbound Create

state table entry.

Inbound Look upstate table entry;drop if not present.

Outbound Createstate table entry.Translate address.

Inbound Look upstate table entry;drop if not present.Translate address.

The lookup phase and the decision to pass or dropthe packet are identical; all that changes iswhether or not addresses are translated.