icsi honeyfarm status

21
The ICSI Honeyfarm Cui, Paxson, Weaver ICSI Honeyfarm Status Weidong Cui Vern Paxson Nicholas Weaver

Upload: micol

Post on 18-Feb-2016

35 views

Category:

Documents


0 download

DESCRIPTION

ICSI Honeyfarm Status. Weidong Cui Vern Paxson Nicholas Weaver. General Concept: A Breeding Ground for Worms. We want a controlled, automatic breeding ground for worms and other self-propagating attacks: Worm attacks a "monitored" address and begins to propagate in our system - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: ICSI Honeyfarm Status

The ICSI Honeyfarm Cui, Paxson, Weaver

ICSI Honeyfarm Status

Weidong CuiVern Paxson

Nicholas Weaver

Page 2: ICSI Honeyfarm Status

Page 2

The ICSI Honeyfarm Cui, Paxson, Weaver

General Concept:A Breeding Ground for Worms

• We want a controlled, automatic breeding ground for worms and other self-propagating attacks:– Worm attacks a "monitored" address and begins to propagate in our

system• As the worm propagates, we have a suite of automatic analyzers to

study the worm– What it can infect?– Any particulars of interest?– How does it attack?

• And automatically analyze defense strategies– Does this signature block the worm?

• All within a very short time: a few seconds– And with a single point of trust for exporting information

• Also want to leverage the infrastructure for detecting other things:– Human attackers/non-self-propagating attacks– Non-random worms

Page 3: ICSI Honeyfarm Status

Page 3

The ICSI Honeyfarm Cui, Paxson, Weaver

Honeyfarm: Objectives• We use network telescopes and a honeyfarm to detect scanning worms

– Network Telescopes• Distributed unallocated IP address ranges

– Honeyfarm:• Centralized cluster of honeypots• On-demand: emulating a large number of hosts on a small number of honeypots

• Detecting self-propagation– Detect self-propagation inside the honeyfarm by redirecting propagations from one honeypot to other honeypots

• Other detectors possible:– Tripwire/modification detectors– Monitored honeypots, etc…

Global Internet

Honeypots

Controller

Honeyfarm

Page 4: ICSI Honeyfarm Status

Page 4

The ICSI Honeyfarm Cui, Paxson, Weaver

The Overall Goal• Framework for automatically detecting and analyzing new worms and

other attacks– For self-propagating attacks, we want to generate:

• Vulnerability signatures: What is vulnerable• Behavior signatures: What the worm needs to propagate• Attack signatures: Signatures which detect and block the attack• All signatures should be verified for effectiveness

– For non-self-propagating attacks, as much of the above as possible– Based on providing a fertile ground for constrained propagation

• Receive data from multiple sources– Small distributed telescopes, Large telescopes– Spam, Crawling?

• For a RANDOM worm, with k addresses, V victims, and M systems infected:– Pdetect = 1 – ((V-k)/V)M after M machines infected– High probability of detection when M = V/k

Page 5: ICSI Honeyfarm Status

Page 5

The ICSI Honeyfarm Cui, Paxson, Weaver

ICSI's Honeyfarms

• Honeyfarm Safety• ICSI's features:

– Windows Centric– Hot Telescope– Replay

• Replay-based filtering

– Spam Telescope• The Main ICSI Honeyfarm• Other possibilities:

– "Run this" Wormholes

Page 6: ICSI Honeyfarm Status

Page 6

The ICSI Honeyfarm Cui, Paxson, Weaver

ICSI Focus:Windows

• Microsoft Windows is our primary (currently only) hosted OS• This requirement dictates VM choice:

– VMWare Workstation or ESX server– Workstation: prototyping

• Limited scalability• Runs on everything

– ESX Server: production• Stringent hardware requirements• Memory sharing for (some) scalability

– Could be better– But can work across multiple close variants due to coalescing

• For now, NO host-OS specific customization– Dictates mechanism for demand allocation: NAT, instead of

customization– Allows the possibility of non-virtual honeypots as well

• ?Apple Systems?

Page 7: ICSI Honeyfarm Status

Page 7

The ICSI Honeyfarm Cui, Paxson, Weaver

ICSI'sArchitecture

GRE Tunnel

Honeyfarm

Network Telescope

Filtering

Attacker

Mapping Containment

Policing

VM Clusters

Detection

VManager

Filtering

Containment

Policing

Detection

Page 8: ICSI Honeyfarm Status

Page 8

The ICSI Honeyfarm Cui, Paxson, Weaver

Note onArchitecture

• Most components implemented in Click– Provides a modular, reusable framework

• Components in red we want to merge with UCSD– Need to better coordinate in this area– Relatively low overlap so far, but need

Page 9: ICSI Honeyfarm Status

Page 9

The ICSI Honeyfarm Cui, Paxson, Weaver

Safety: A Common FocusOf Both UCSD and ICSI

• What if a worm propagates through the honeyfarm and then infects somebody else?– "But they would get infected anyway" doesn't cut it…

• Two safety features:– Containment: the basic decision making on what is allowed outbound

• Connections back to the infecting host• Some "phone-home" channels may also be allowed

– Much malcode/attacks grab code from a third-party site– An independent policing module

• Shutdown the honeyfarm once it detects any abnormal behavior on outbound connections

• This is a safety belt, it should NEVER actually be invoked• Want a third safety feature as well:

– A monitoring system which observes the control-plane– Has the ability to turn-off the honeyfarm by power-sequencing the

network connections• Much more details on policies in UCSD's talk

Page 10: ICSI Honeyfarm Status

Page 10

The ICSI Honeyfarm Cui, Paxson, Weaver

The Telescopes

• We have 4 /16s arranged as two (almost) contiguous /15s belonging to ESNet…– Network is directly advertised and routed by ESNet

• But we also have, on loan, a "special" /23 netblock– Also advertised and routed by ESNet

• Much malcode is NOT random:– Linear scanners starting from the local address:

• Blaster and others– Local subnet preference

• Nimda, etc

• By selecting highly-likely addresses, we can gain an advantage in detection time– Local subnet preferences in particular have proven very effective

Page 11: ICSI Honeyfarm Status

Page 11

The ICSI Honeyfarm Cui, Paxson, Weaver

How HotIs The Hot Address Range?

0

20000

40000

60000

80000

100000

120000

140000

160000

/23 /16 /16 /16 /16

Num

ber o

f TC

P C

onne

ctio

ns

801351394451433

Page 12: ICSI Honeyfarm Status

Page 12

The ICSI Honeyfarm Cui, Paxson, Weaver

Filtering

• But we can't allow all communication:– Honeypot allocation/deallocation is very expensive for us

• VMWare doesn't support a lightweight clone

• We want to filter out known threats– But we still want to detect new attacks for existing vulnerabilities

• We want to detect Welchia as well as Blaster:– New attacks may require new signatures– New variants may be substantially more disruptive

– And we would like to avoid identification by attackers as a honeypot system

• Thus we need a low-cost mechanism to say whether an attack is worth forwarding to a real honeypot

Page 13: ICSI Honeyfarm Status

Page 13

The ICSI Honeyfarm Cui, Paxson, Weaver

Basic Filtering• Scan filtering

– Allow traffic to the first N destinations from a source.– Intuition: Scans from a source is homogeneous

• Init-Data filtering– Detect known attacks by looking at the first data transfer from a source– Intuition: Many simple attacks (e.g., CodeRed, Blaster, Slammer) can be filtered.– Scheme: Acknowledge to SYNs and any data packets following it

• University of Michigan scheme• Is this enough?

– Far too many active sources on the Internet– No, many attacks require complicated "conversations" before exposing its unique

malicious attention• See Pang et al "Characterizing Internet Background Radiation"

• Application-level responders are expensive in terms of development– Also, can't do "cut-through forwarding" if the attack deviates from the known script

• Our idea: replay-based filtering

Page 14: ICSI Honeyfarm Status

Page 14

The ICSI Honeyfarm Cui, Paxson, Weaver

Application IndependentReplay

• To positively identify a probe as being from a known or unknown source, it requires a complex dialog

– EG, Windows SMB file transfer• We can't build target-specific responders

– Too many variants and new targets• Can we use an existing dialog as a script for replaying an application session?

– Take one or two instances of a dialog• Eg, a recorded attack by a particular worm against one of our honeypots

– Recognize certain idioms:• Addresses, ports, and names encoded in the dialog• Ports which open for subsequent transfers• "Cookies" or session identifiers• Length fields• Prestated arguments

• Then use the current interaction as a guide– Update ports/addresses/subsequent connections as appropriate– Mimic back cookies and other changes

Page 15: ICSI Honeyfarm Status

Page 15

The ICSI Honeyfarm Cui, Paxson, Weaver

Responder-Side Replay

Original Flow Replay FlowAttacker Victim

Infected!

Attacker Filter

Detected!

12

34

5

1’2’

3’4’

5

Page 16: ICSI Honeyfarm Status

Page 16

The ICSI Honeyfarm Cui, Paxson, Weaver

ReplayStatus

• This works for single dialogs– For both the initiator (client) and responder (server)

• Tested with:– NFS file manipulation– FTP file transfer

• Including changing the filename argument for the client– CIFS/SMB file transfers– The Blaster worm– W32.Randex.D worm

• Performs attack through open file shares• Currently expanding to support multiple, simultaneous dialogs

– Primarily for server-side replay to act as a radiation filter– Possibility: Recognize commands by where dialogs diverge?

• Also desire replay for:– "Toxicology Screen": For this attack, what can get infected– Testing network devices, evaluating servers, interacting with Internet servers for

measurement purposes…

Page 17: ICSI Honeyfarm Status

Page 17

The ICSI Honeyfarm Cui, Paxson, Weaver

Replay-BasedFilters

• There are 1700 different application dialogs among 143224 connections to port 445/tcp– Connections to active honeypots– Used tethereal to generate a one-line summary for each data packet– Formulated each dialog in a canonical format

• Want to ignore anything in the "known" dialogs set, while allowing anything in the "unknown" set

• So use replay:– Replay as the server with the group of known dialogs

• If replay successful, classify and ignore that source– If replay fails, begin replaying the new dialog against a honeypot as

the client• Using the previous dialog as the starting script• Also, mark source as unknown and allow it to contact a live honeypot if

seen again

Page 18: ICSI Honeyfarm Status

Page 18

The ICSI Honeyfarm Cui, Paxson, Weaver

Attacker Filter VM

12

34

5

12

34

5

Known?

Responder-Side Replay

Initiator-Side Replay

Infected!

Page 19: ICSI Honeyfarm Status

Page 19

The ICSI Honeyfarm Cui, Paxson, Weaver

The Spam Telescope

• Half of the emails to @acme.com are sent to our email server– 100,000 messages per day– 6000 unique executables in 4 days

• We implemented a real time process to parse emails and retrieve attachments– Hash attachments to gain some statistics

• We plan to run attached executables on our honeypots to detect new email worms or multimode worms– Use email to penetrate the firewall, then exploit with local exploits

Page 20: ICSI Honeyfarm Status

Page 20

The ICSI Honeyfarm Cui, Paxson, Weaver

The MainHoneyfarm

• Located at LBNL in ESNet's machine room– Designed around HP DL360 G4 1u, dual processor servers

• Currently:– 1 server as "head unit"

• Previous head was a DL380, but suffered a catastrophic motherboard failure– 7 servers running ESX for honeypots

• Near term expansion (next couple of weeks)– Convert one ESX server into raw Linux for processing acme.com email

• Attach 3 TB disk array for tertiary storage– Add 6 more 1u servers– Add a redundant switch– Increase the disk space on the existing servers

• Generous support from:– ESNet: Network connectivity and rackspace– Hewlett Packard: Equipment– Microsoft: OS and software liscences– VMWare: VMWare liscences

Page 21: ICSI Honeyfarm Status

Page 21

The ICSI Honeyfarm Cui, Paxson, Weaver

Possibility:The "Run This" Wormholes

• We also want small, easy to use endpoints:– Distributed secrets– Endpoints in LANs– Nonblacklistable endpoints for crawlers

• Our plan is to create a "Run This" endpoint in Click– Creates a new MAC address derived from the host's MAC

• Obtain DHCP lease• Open GRE tunnel to the specified honeyfarm

– All traffic is forwarded through the tunnel– Outgoing traffic is strongly policed by the "Run This" module:

• Limited fanout• No contacting local addresses• ?What to do about LAN broadcast packets?

• Goal is an easy to use and trustable endpoint– Which does not trust the honeyfarm.