Automatically Detecting Vulnerable Sites Before They Turn Malicious - - PowerPoint PPT Presentation

automatically detecting vulnerable sites before they turn
SMART_READER_LITE
LIVE PREVIEW

Automatically Detecting Vulnerable Sites Before They Turn Malicious - - PowerPoint PPT Presentation

Automatically Detecting Vulnerable Sites Before They Turn Malicious Kyle Soska Nicolas Chris>n Carnegie Mellon University Carnegie Mellon University ECE / Cylab ECE / Cylab


slide-1
SLIDE 1

Automatically Detecting Vulnerable Sites Before They Turn Malicious

1 ¡

Kyle ¡Soska ¡ Carnegie ¡Mellon ¡University ¡ ECE ¡/ ¡Cylab ¡ ksoska@cmu.edu ¡ Nicolas ¡Chris>n ¡ Carnegie ¡Mellon ¡University ¡ ECE ¡/ ¡Cylab ¡ nicolasc@cmu.edu ¡ Sponsors: ¡NSF ¡(CCF-­‑0424422, ¡CNS-­‑1223762) ¡and ¡DHS ¡S&T/CSD ¡(N66001-­‑13-­‑C-­‑0131) ¡

slide-2
SLIDE 2

Problem Setting

§ Adversaries ¡compromise ¡websites ¡

  • Economically ¡Ra>onal ¡– ¡mone>ze ¡compromises ¡

§ Neutral ¡to ¡vic>ms ¡ § Maximize ¡volume, ¡efficiency, ¡profits ¡

  • Hack>vist ¡– ¡promote ¡social, ¡poli>cal, ¡or ¡religious ¡

agenda ¡

§ Targeted ¡aYacks ¡ § Low ¡volume ¡

2 ¡

slide-3
SLIDE 3

Economically Rational Adversary

§ Decisions ¡always ¡maximize ¡profit ¡ § Probabilis>c ¡Polynomial ¡Time ¡

  • Cannot ¡break ¡standard ¡crypto, ¡session ¡cookies, ¡

hashes, ¡etc. ¡

§ Does ¡not ¡control ¡significant ¡por>on ¡of ¡web ¡

  • Cannot ¡perform ¡adversarial ¡machine ¡learning ¡aYacks ¡

by ¡poisoning ¡a ¡random ¡sample ¡of ¡the ¡web ¡

§ Able ¡to ¡exploit ¡vulnerable ¡web ¡so]ware ¡

3 ¡

slide-4
SLIDE 4

Mode of Operation

Step ¡1: ¡Find ¡bug ¡or ¡vulnerability ¡in ¡popular ¡web ¡ so]ware ¡or ¡content ¡management ¡system ¡(CMS) ¡ ¡ Step ¡2: ¡Enumerate ¡sites ¡containing ¡vulnerability ¡ Step ¡3: ¡Exploit ¡vulnerable ¡sites ¡ ¡ Step ¡4: ¡Mone>ze ¡and ¡profit ¡

4 ¡

slide-5
SLIDE 5

5 ¡

slide-6
SLIDE 6

Problem and Goal

§ Exis>ng ¡approaches ¡detect ¡if ¡a ¡webpage ¡is ¡ already ¡malicious ¡ § Is ¡it ¡possible ¡to ¡predict ¡if ¡a ¡non-­‑malicious ¡website ¡ will ¡become ¡malicious ¡in ¡the ¡future? ¡

  • What ¡would ¡such ¡a ¡system ¡look ¡like? ¡
  • What ¡requirements ¡are ¡imposed ¡on ¡such ¡a ¡system? ¡
  • What ¡are ¡the ¡fundamental ¡limita>ons? ¡

6 ¡

slide-7
SLIDE 7

System Design

7 ¡

Blacklists ¡ Zone ¡ Files ¡ Malicious ¡ Sites ¡ Safe ¡Sites ¡ Template ¡ Filter ¡ Feature ¡ Extrac>on ¡ Stream ¡ Classifier ¡ Archive.org ¡ Alexa.com ¡

slide-8
SLIDE 8

System Properties

§ Efficiency ¡

  • Internet ¡dataset ¡

§ Interpretability ¡

  • Need ¡to ¡build ¡intui>on ¡about ¡why ¡the ¡site ¡will ¡become ¡

compromised ¡

§ Robustness ¡to ¡Imbalanced ¡Data ¡

  • Far ¡more ¡benign ¡examples ¡than ¡malicious ¡ones ¡

§ Robustness ¡To ¡Mislabeled ¡Data ¡

  • Blacklists ¡may ¡contain ¡errors ¡or ¡be ¡incomplete ¡

§ Adap>ve ¡

  • Internet ¡is ¡a ¡concept ¡dri]ing, ¡requires ¡ac>ve ¡adapta>on ¡

8 ¡

slide-9
SLIDE 9

Dataset

9 ¡

Blacklists ¡ Zone ¡ Files ¡ Malicious ¡ Sites ¡ Safe ¡Sites ¡ Template ¡ Filter ¡ Feature ¡ Extrac>on ¡ Stream ¡ Classifier ¡ Archive.org ¡ Alexa.com ¡

slide-10
SLIDE 10

Dataset

Type ¡ Instances ¡ Archived ¡ Instances ¡ % ¡Archived ¡ PhishTank ¡ 91,555 ¡ 34,922 ¡ 38.1 ¡ Search ¡ Redirec>on* ¡ 16,173 ¡ 14,425 ¡ 89.2 ¡ .com ¡Zone ¡Files ¡ 336,671 ¡ 336,671 ¡ N/A ¡

10 ¡

§ PhishTank: ¡Feb ¡2013 ¡– ¡Dec ¡2013 ¡ § Search ¡Redirec>on: ¡Oct ¡2011 ¡– ¡Sept ¡2013 ¡ § Zone ¡Files: ¡Feb ¡2010 ¡– ¡Sept ¡2013 ¡

* ¡Leon>adis ¡et ¡al., ¡2014 ¡

slide-11
SLIDE 11

Filtering

11 ¡

Blacklists ¡ Zone ¡ Files ¡ Malicious ¡ Sites ¡ Safe ¡Sites ¡ Template ¡ Filter ¡ Feature ¡ Extrac>on ¡ Stream ¡ Classifier ¡ Archive.org ¡ Alexa.com ¡

slide-12
SLIDE 12

Filtering

12 ¡

Naviga>on ¡ User ¡Content ¡ Social ¡Media ¡ Links ¡

slide-13
SLIDE 13

Filtering – Based on [Yi et al., 2003]

§ Compute ¡entropy-­‑like ¡heuris>c ¡“Composite ¡ Importance” ¡(CmpImp ¡∈[0, ¡1]) ¡for ¡each ¡element ¡on ¡a ¡ page ¡ § Remove ¡elements ¡above ¡a ¡fixed ¡threshold ¡

13 ¡

slide-14
SLIDE 14

Original Page

14 ¡

slide-15
SLIDE 15

Threshold = 0.99

15 ¡

slide-16
SLIDE 16

Threshold = 0.1

16 ¡

slide-17
SLIDE 17

Feature Extraction

17 ¡

Blacklists ¡ Zone ¡ Files ¡ Malicious ¡ Sites ¡ Safe ¡Sites ¡ Template ¡ Filter ¡ Feature ¡ Extrac>on ¡ Stream ¡ Classifier ¡ Archive.org ¡ Alexa.com ¡

slide-18
SLIDE 18

Feature Set

§ Traffic ¡Features ¡

  • Site ¡Rank ¡
  • Links ¡into ¡site ¡
  • Load ¡Percen>le ¡
  • …more ¡

§ Content ¡Features ¡

  • HTML ¡Tags ¡(type, ¡content, ¡aYributes) ¡

18 ¡

slide-19
SLIDE 19

Dynamic Features

§ Millions ¡of ¡unique ¡HTML ¡tags ¡(including ¡content) ¡ § Solu>on: ¡order ¡tags ¡by ¡some ¡sta>s>c, ¡select ¡top ¡N ¡

  • ACC2 ¡based ¡on ¡[Foreman, ¡2003] ¡
  • Let ¡ℬ, ¡ℳdenote ¡the ¡set ¡of ¡benign ¡and ¡malicious ¡sites ¡

respec>vely, ¡𝑥 ¡the ¡set ¡of ¡tags ¡from ¡a ¡site, ¡then ¡ACC2 ¡for ¡ a ¡tag ¡x ¡can ¡be ¡defined ¡as: ¡ 𝑡(𝑦)=|​|𝑦∈𝑥:𝑥∈ℳ|/|ℳ| −​|𝑦∈𝑥:𝑥∈ℬ|/|ℬ| | ¡ ¡ ¡ ¡

19 ¡

slide-20
SLIDE 20

Prominent Features After 90,000 Samples

20 ¡

Feature ¡ Sta>s>c ¡Value ¡ meta{‘content’: ¡‘Wordpress ¡3.2.1’, ¡‘name’: ¡ ‘generator’} ¡ 0.0569 ¡ ul{‘class’: ¡[‘xoxo’, ¡‘blogroll’]} ¡ 0.0446 ¡ You ¡can ¡start ¡edi>ng ¡here. ¡ 0.0421 ¡ meta{‘content’: ¡‘Wordpress ¡3.3.1’, ¡‘name’: ¡ ‘generator’} ¡ 0.0268 ¡ /all ¡in ¡one ¡seo ¡pack ¡ 0.0252 ¡ span{‘class’: ¡[‘breadcrumbs’, ¡‘pathway’]} ¡ 0.0226 ¡ If ¡Comments ¡are ¡open, ¡but ¡there ¡are ¡no ¡

  • comments. ¡

0.0222 ¡ div{‘id’: ¡‘content_disclaimer’} ¡ 0.0039 ¡

slide-21
SLIDE 21

Varying Window Sizes

21 ¡

Feature: ¡meta{‘content’: ¡‘Wordpress ¡3.2.1’, ¡‘name’: ¡‘generator’} ¡ ¡ Low ¡Transient ¡ High ¡Variance ¡ High ¡Transient ¡ Low ¡Variance ¡

slide-22
SLIDE 22

CMS Evolution

22 ¡

AYack ¡Campaign ¡ AYack ¡Campaign ¡ AYack ¡Campaign ¡ Low ¡Ac>vity ¡

slide-23
SLIDE 23

Parking Page Feature

23 ¡

Feature: ¡div{‘id’: ¡‘content_disclaimer’} ¡ ¡ Similar ¡value ¡over ¡1 ¡year ¡later! ¡

slide-24
SLIDE 24

Classification

24 ¡

Blacklists ¡ Zone ¡ Files ¡ Malicious ¡ Sites ¡ Safe ¡Sites ¡ Template ¡ Filter ¡ Feature ¡ Extrac>on ¡ Stream ¡ Classifier ¡ Archive.org ¡ Alexa.com ¡

slide-25
SLIDE 25

Classification

§ Largely ¡based ¡on ¡[Gao ¡et ¡al., ¡2007] ¡ § Break ¡input ¡data ¡stream ¡into ¡blocks ¡ § Resample ¡input ¡blocks ¡ § Train ¡ensemble ¡C4.5 ¡decision ¡tree ¡classifiers ¡ using ¡Hoeffding ¡bounds ¡[Domingos ¡et ¡al., ¡2000] ¡ § Retrain ¡periodically ¡using ¡new ¡dynamic ¡features ¡

25 ¡

slide-26
SLIDE 26

Classification Results

26 ¡

Good ¡Opera>ng ¡Point ¡

slide-27
SLIDE 27

Limitations

§ Only ¡makes ¡sense ¡when ¡page ¡content ¡and ¡traffic ¡ sta>s>cs ¡are ¡risk ¡factors ¡of ¡malice ¡

  • Sites ¡hacked ¡via ¡weak ¡passwords ¡or ¡via ¡social ¡

engineering ¡aYacks ¡violate ¡this ¡

  • Sites ¡that ¡are ¡maliciously ¡hosted ¡may ¡violate ¡this ¡

§ Requires ¡some ¡sites ¡to ¡become ¡compromised ¡in ¡

  • rder ¡to ¡make ¡predic>ons ¡

27 ¡

slide-28
SLIDE 28

Conclusions

§ Predic>ng ¡websites ¡that ¡become ¡malicious ¡in ¡the ¡ future ¡is ¡possible! ¡ § Acceptable ¡performance ¡can ¡be ¡achieved ¡even ¡

  • n ¡our ¡modest ¡dataset ¡

28 ¡

Kyle ¡Soska ¡– ¡ksoska@cmu.edu ¡