+ All Categories
Home > Education > PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

Date post: 09-Jun-2015
Category:
Upload: pratik-narang
View: 295 times
Download: 0 times
Share this document with a friend
Description:
Presentation of my paper presented at the IEEE Security & Privacy Workshops, San Jose, USA, May 2014
Popular Tags:
17
DETECTING PEER-TO-PEER BOTNETS BY TRACKING CONVERSATIONS Pratik Narang 1 , Subhajit Ray 1 , Chittaranjan Hota 1 and Venkat Venkatakrishnan 2 1 BITS Pilani, Hyderabad campus, India 2 University of Illinois at Chicago
Transcript
Page 1: PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

DETECTING PEER-TO-PEER

BOTNETS BY TRACKING

CONVERSATIONS

Pratik Narang1, Subhajit Ray1, Chittaranjan Hota1 and Venkat Venkatakrishnan2

1BITS Pilani, Hyderabad campus, India 2University of Illinois at Chicago

Page 2: PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

Introduction

• What’s a bot ?

• What’s a botnet ?

• What’s a Peer-to-Peer based botnet ?

Page 3: PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

Traditional Botnets

Bot-Master

Page 4: PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

Peer-to-Peer Botnets

Bot-Master

Page 6: PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

Previous work

• Intial work with signature-based approaches

• Evaded by bots using encryption

• Recent work – analysis of network behavior

• Most of it uses 5-tuple ‘flow-based’ approach <Source IP, Dest. IP, Source port, Dest. Port, Protocol>

• Great success in Internet traffic classification

• Doesn’t suit the needs of P2P traffic

Page 7: PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

Identifying P2P traffic

• Modern P2P apps and bots randomize ports, operate on

TCP as well as UDP

• P2P traffic has bi-directional nature

• E.g.- BitTorrent- seeders and leechers

• Thus, traditional flow-based approaches may give a false

view of network communication

• Notion of a conversation more suited to P2P

• Who is talking to whom ? • Irrespective of protocol, port, etc.

Page 8: PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

P2P apps v/s P2P bots

Applications:

• A human user-‘bursty’

traffic

• High volume of data

transfers seen

• Small inter-arrival time of

packets seen in apps

Botnets:

• Automated/scripted

commands

• Low in volume,

high in duration

• Large inter-arrival time of

packets seen in stealthy

bots

Page 9: PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

PeerShark: Overview

Conversation Creation Module

Conversation Aggregation

Module

Classification Module

Packet Filtering Module

FLOWGAP initial

FLOWGAP

Packets useful for our system Packets discarded by our system (Corrupted or missing headers)

Conversations classified as benign Conversations classified as malicious

Page 10: PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

Approach

• Parse network traces, discard corrupted packets

• Create ‘conversations’, identified by the tuple <IP1,IP2> and

an initial FLOWGAP parameter

• Aggregate conversations again – this time with a higher

FLOWGAP parameter

• To be decided by Network Admin based on understanding of the

network

• Useful for detecting slow and stealthy bots

Page 11: PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

Approach

• For each tuple, extract 4 features : – The duration of the conversation

– The number of packets exchanged in the conversation

– The volume of the conversation (no. of bytes)

– The Median value of the inter-arrival time of packets in the conversation

• Hunt for long-lived, stealthy conversations

• Categorize P2P apps & bots with the features

above, using supervised machine learning

approaches

Page 12: PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

Dataset

P2P app name Used for? Type of data/Size of data

eMule P2P file sharing application pcap file/19 GB

uTorrent P2P file sharing application pcap file/33 GB

P2P botnet name What it does? Type of data/Size of data

Storm Email Spam pcap file/ 4.8 GB

Waledac Email spam, password stealing pcap file/ 1.1 GB

Page 13: PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations
Page 14: PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

Results

BayesNet J48 Adaboost with REP

tree

TP FP ROC TP FP ROC TP FP ROC

eMule 0.929 0.012 0.996 0.964 0.012 0.987 0.93 0.021 0.993

Storm 0.988 0.009 0.999 0.986 0.003 0.996 0.979 0.004 0.999

Waledac 0.989 0.01 0.999 0.988 0.005 0.995 0.97 0.009 0.998

uTorrent 0.947 0.019 0.996 0.965 0.012 0.989 0.943 0.025 0.994

Avg. 0.96325 0.0125 0.9975 0.97575 0.008 0.99175 0.9555 0.01475 0.996

90%

91%

92%

93%

94%

95%

96%

97%

98%

99%

100%

BayesNet J48 Adaboost with REP tree

Ove

rall

A

cc

ura

cy (

%)

Page 16: PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

Back-up

Page 17: PeerShark - Detecting Peer-to-Peer Botnets by Tracking Conversations

Limitations & Possible evasions of

PeerShark

• Only built for 2 apps and 2 bots. Any new app/bot will also

get (mis)classified into one of these classes.

• If more than one P2P application (benign or malicious) is

running between two peers, PeerShark will not be able to

correctly classify it.

• Smarter bots which engage in occasional file-sharing with

bot-peers (and thus mimic benign behavior) can evade

PeerShark.


Recommended