a silicon anti-virus engine - hot chips: a symposium on ...€¦ · source: (“mudge”)...

1
A Silicon Anti-Virus Engine Adrian Tang Dr. John Demme Prof. Simha Sethumadhavan Prof. Salvatore Stolfo Proliferation of malware – stealthier and increasing in number Software-level detection mechanisms have limited effectiveness Rethinking malware detection with hardware approach and low-level features Motivation Growing Malware Threats Limitations of Software Anti-Virus Catching Seen Malware [1] Programs (and malware) exhibit unique μArch signatures. bzip2 mcf hmmer Insight L1 Exclusive Hits L2 Load Requests Used supervised machine learning (ML) techniques to train models to characterize dynamic behavior of 503 Android malware apps 210 Android benign apps from Google Play Evaluated classifiers with different variants in the same malware family Also explored feasibility with Linux rootkits and cache side- channel attacks Methodology AMD ANDROID PANDABOARD Old Malware New Malware Goodware Side Channel Rootkits Goodware X86 LINUX Performance Counter Sampling Performance Counter Database Classifier 1 Classifier 2 Classifier N Classifier N-1 Classifier 3 Classifier N-2 . . . Detection Results Accuracy of Android malware classifiers Android malware 82.3% accuracy Linux rootkit 60% accuracy Difficult problem; rootkits are tiny slices of execution Side-channel attack 100% accuracy; No false positive Malware shellcode execution causes deviations in baseline μArch and arch characteristics of programs. Insight Used unsupervised ML technique (One-Class SVM with RBF kernel) to train baseline dynamic behavior models for Internet Explorer 8 Adobe PDF Reader 9 Evaluated detection models with Metasploit- generated exploit variants Target IE, Flash plugin, PDF plugin/standalone versions Multi-stage exploit process (ROP Stage1 shellcode Stage2 payload) Different feature extraction methods (temporal vs non- temporal models) Methodology 99.5% AUC score for AM-1 event set (STORE, LOAD, MISP_RET, CALL_ID) for detection of Stage1 shellcode 1.5% slowdown with sampling granularity of 512k ins. 100% true positive with 1.1% false positive rate Detection Results Catching Unseen Malware [2] Meteoric rise of Android malware (2011-2013) Source: Fortinet (2014) New malware on all platforms (2005-2013) Source: AV-Test (2014) Spyware Botnet Worms Trojans Adware and more Source: (“Mudge”) CanSecWest 2013 Lines of code (log scale) 10mil 100 1985 1991 1997 2003 2009 2015 Why we are losing the battle? Same level as software malware Prone to attacks/subversion Complex software implementation (many lines of code) High bug density Signatures typically use static characteristics of malware Static analysis can be defeated with trivial variants [1] John Demme, Matthew Maycock, Jared Schmitz, Adrian Tang, Adam Waksman, Simha Sethumadhavan, and Salvatore Stolfo. 2013. “On the feasibility of online malware detection with performance counters.” In Proceedings of the 40th Annual International Symposium on Computer Architecture (ISCA '13). ACM, New York, NY, USA, 559-570. [2] Adrian Tang, Simha Sethumadhavan, and Salvatore J. Stolfo. "Unsupervised anomaly-based malware detection using hardware features." In Research in Attacks, Intrusions and Defenses, pp. 109-129. Springer International Publishing, 2014. Hot Chips: A Symposium on High Performance Chips. August 23-25, 2015.

Upload: others

Post on 23-May-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A Silicon Anti-Virus Engine - Hot Chips: A Symposium on ...€¦ · Source: (“Mudge”) CanSecWest 2013 ) 10mil 100 1985 1991 1997 2003 2009 2015 • Same level as software malware

A Silicon Anti-Virus Engine Adrian Tang Dr. John Demme Prof. Simha Sethumadhavan Prof. Salvatore Stolfo

•  Proliferation of malware – stealthier and increasing in number •  Software-level detection mechanisms have limited effectiveness

Rethinking malware detection with hardware approach and low-level features

Motivation

Growing Malware Threats

Limitations of Software Anti-Virus

Catching Seen Malware [1]

Programs (and malware) exhibit unique µArch signatures.

bzip

2

L1 Exclusive Hits L2 Load Requests Arithmetic µOps Executed Branch Instructions Executed

bzip

2bz

ip2

mcf

hmm

ersje

nglib

quan

tum

h264

omne

tpp

asta

ras

tar

Xala

nc

Insight L1 Exclusive Hits L2 Load Requests

•  Used supervised machine learning (ML) techniques to train models to characterize dynamic behavior of

•  503 Android malware apps •  210 Android benign apps from Google Play

•  Evaluated classifiers with different variants in the same malware family

•  Also explored feasibility with Linux rootkits and cache side-channel attacks

Methodology AMD

ANDROID

PANDABOARD

Old Malware

New Malware

Goodware

Side Channel

Rootkits

Goodware

X86LINUX

Perfo

rman

ce

Coun

ter S

ampl

ing

Performance Counter

Database

Classifier 1

Classifier 2

Classifier N

Classifier N-1

Classifier 3

Classifier N-2

. . .

Detection Results

Accuracy of Android malware classifiers •  Android malware

•  82.3% accuracy •  Linux rootkit

•  60% accuracy •  Difficult problem; rootkits

are tiny slices of execution •  Side-channel attack

•  100% accuracy; No false positive

Malware shellcode execution causes deviations in baseline µArch and arch characteristics of programs.

Insight

•  Used unsupervised ML technique (One-Class SVM with RBF

kernel) to train baseline dynamic behavior models for

•  Internet Explorer 8 •  Adobe PDF Reader 9

•  Evaluated detection models with Metasploit- generated exploit variants

•  Target IE, Flash plugin, PDF plugin/standalone versions •  Multi-stage exploit process (ROP → Stage1 shellcode →

Stage2 payload) •  Different feature extraction methods (temporal vs non-

temporal models)

Methodology

•  99.5% AUC score for AM-1 event set (STORE, LOAD, MISP_RET, CALL_ID) for detection of Stage1 shellcode

•  1.5% slowdown with sampling granularity of 512k ins. •  100% true positive with 1.1% false positive rate

Detection Results

Catching Unseen Malware [2]

Meteoric rise of Android malware (2011-2013)

Source: Fortinet (2014)

New malware on all platforms (2005-2013)

Source: AV-Test (2014)

Spyware

Botnet Worms Trojans Adware

and more …

Source: (“Mudge”) CanSecWest 2013

Line

s of

cod

e (lo

g sc

ale)

10mil

100 1985 1991 1997 2003 2009 2015

Why we are losing the battle? •  Same level as software malware

•  Prone to attacks/subversion

•  Complex software implementation (many lines of code)

•  High bug density

•  Signatures typically use static characteristics of malware

•  Static analysis can be defeated with trivial variants

[1] John Demme, Matthew Maycock, Jared Schmitz, Adrian Tang, Adam Waksman, Simha Sethumadhavan, and Salvatore Stolfo. 2013. “On the feasibility of online malware detection with performance counters.” In Proceedings of the 40th Annual International Symposium on Computer Architecture (ISCA '13). ACM, New York, NY, USA, 559-570.

[2] Adrian Tang, Simha Sethumadhavan, and Salvatore J. Stolfo. "Unsupervised anomaly-based malware detection using hardware features." In Research in Attacks, Intrusions and Defenses, pp. 109-129. Springer International Publishing, 2014.

Hot Chips: A Symposium on High Performance Chips. August 23-25, 2015.