Shield: Vulnerability-Driven End- Host Firewall for Preventing Known Vulnerability Attacks Sigcomm ’04.

Slides:



Advertisements
Similar presentations
Intrusion Detection Systems (I) CS 6262 Fall 02. Definitions Intrusion Intrusion A set of actions aimed to compromise the security goals, namely A set.
Advertisements

Extensibility, Safety and Performance in the SPIN Operating System Presented by Allen Kerr.
1 Reading Log Files. 2 Segment Format
Yan Chen Northwestern Lab for Internet and Security Technology (LIST) Dept. of Electrical Engineering and Computer Science Northwestern University
Snort - an network intrusion prevention and detection system Student: Yue Jiang Professor: Dr. Bojan Cukic CS665 class presentation.
5/1/2006Sireesha/IDS1 Intrusion Detection Systems (A preliminary study) Sireesha Dasaraju CS526 - Advanced Internet Systems UCCS.
Improved TCAM-based Pre-Filtering for Network Intrusion Detection Systems Department of Computer Science and Information Engineering National Cheng Kung.
Shield & Friends Troubleshooting Networks Helen J. Wang Researcher System and Networking Research Group Microsoft Research Helen J. Wang Researcher System.
CMSC 414 Computer and Network Security Lecture 26 Jonathan Katz.
Bro: A System for Detecting Network Intruders in Real-Time Presented by Zachary Schneirov CS Professor Yan Chen.
Intrusion Detection Systems. Definitions Intrusion –A set of actions aimed to compromise the security goals, namely Integrity, confidentiality, or availability,
Lecture 11 Intrusion Detection (cont)
1.3 Executing Programs. How is Computer Code Transformed into an Executable? Interpreters Compilers Hybrid systems.
Gursharan Singh Tatla Transport Layer 16-May
Building Survivable Systems based on Intrusion Detection and Damage Containment Paper by: T. Bowen Presented by: Tiyseer Al Homaiyd 1.
Network Security (Firewall) Instructor: Professor Morteza Anvari Student: Xiuxian Chen ID: Term: Spring 2001.
Network-based and Attack-resilient Length Signature Generation for Zero-day Polymorphic Worms Zhichun Li 1, Lanjia Wang 2, Yan Chen 1 and Judy Fu 3 1 Lab.
Lucent Technologies – Proprietary Use pursuant to company instruction Learning Sequential Models for Detecting Anomalous Protocol Usage (work in progress)
BY- NIKHIL TRIPATHI 12MCMB10.  What is a FIREWALL?  Can & Can’t in Firewall perspective  Development of Firewalls  Firewall Architectures  Some Generalization.
CS426Fall 2010/Lecture 361 Computer Security CS 426 Lecture 36 Perimeter Defense and Firewalls.
Penetration Testing Security Analysis and Advanced Tools: Snort.
CS 355 – Programming Languages
ECE 526 – Network Processing Systems Design Network Processor Architecture and Scalability Chapter 13,14: D. E. Comer.
Network-based Intrusion Detection and Prevention in Challenging and Emerging Environments: High-speed Data Center, Web 2.0, and Social Networks Yan Chen.
Stamping out worms and other Internet pests Miguel Castro Microsoft Research.
FEATURES & FUNCTIONALITY. Page 2 Agenda Main topics Packet Filter Firewall Application Control Other features.
OV Copyright © 2013 Logical Operations, Inc. All rights reserved. Network Security  Network Perimeter Security  Intrusion Detection and Prevention.
OV Copyright © 2011 Element K Content LLC. All rights reserved. Network Security  Network Perimeter Security  Intrusion Detection and Prevention.
Vladimír Smotlacha CESNET Full Packet Monitoring Sensors: Hardware and Software Challenges.
High-Speed Matching of Vulnerability Signatures Nabil Schear * David R. Albrecht † Nikita Borisov † University of Illinois at Urbana-Champaign * Department.
IPSec IPSec provides the capability to secure communications across a LAN, across private and public wide area networks (WANs) and across the Internet.
Stamping out worms and other Internet pests Miguel Castro Microsoft Research.
CINBAD CERN/HP ProCurve Joint Project on Networking 26 May 2009 Ryszard Erazm Jurga - CERN Milosz Marian Hulboj - CERN.
Anomaly/Intrusion Detection and Prevention in Challenging Network Environments 1 Yan Chen Department of Electrical Engineering and Computer Science Northwestern.
Towards Vulnerability-Based Intrusion Detection with Event Processing Amer Farroukh, Mohammad Sadoghi, Hans-Arno Jacobsen University of Toronto July 13,
Module 7: Advanced Application and Web Filtering.
Department of Computer Science and Engineering Applied Research Laboratory Architecture for a Hardware Based, TCP/IP Content Scanning System David V. Schuehler.
1 NetShield: Massive Semantics-Based Vulnerability Signature Matching for High-Speed Networks Zhichun Li, Gao Xia, Hongyu Gao, Yi Tang, Yan Chen, Bin Liu,
Worm Defense Alexander Chang CS239 – Network Security 05/01/2006.
Mike Hsiao Shield: Vulnerability-Driven Network Filters for Preventing Known Vulnerability Exploits Helen J. Wang, Chuanxiong Guo, Daniel R. Simon,
Anomaly/Intrusion Detection and Prevention in Challenging Network Environments 1 Yan Chen Department of Electrical Engineering and Computer Science Northwestern.
Microsoft ISA Server 2000 Presented by Ricardo Diaz Ryan Fansa.
Shield: Vulnerability-Driven Network Filters for Preventing Known Vulnerability Exploits By Helen J. Wang, Chuanxiong Guo, Daniel R. Simon, and Alf Zugenmaier.
Polygraph: Automatically Generating Signatures for Polymorphic Worms Presented by: Devendra Salvi Paper by : James Newsome, Brad Karp, Dawn Song.
Shield: Vulnerability-Driven Network Filters for Preventing Known Vulnerability Exploits H. Wang, C. Guo, D. Simon, and A. Zugenmaier Microsoft Research.
Intrusion Detection Systems Paper written detailing importance of audit data in detecting misuse + user behavior 1984-SRI int’l develop method of.
1 Flexible, High-Speed Intrusion Detection Using Bro Vern Paxson Computational Research Division Lawrence Berkeley National Laboratory and ICSI Center.
1 Compiler & its Phases Krishan Kumar Asstt. Prof. (CSE) BPRCE, Gohana.
Yan Chen Department of Electrical Engineering and Computer Science
Automated Worm Fingerprinting Authors: Sumeet Singh, Cristian Estan, George Varghese and Stefan Savage Publish: OSDI'04. Presenter: YanYan Wang.
Slammer Worm By : Varsha Gupta.P 08QR1A1216.
Yan Chen Lab for Internet and Security Technology EECS Department Northwestern University Intrusion Detection and Forensics for Self-defending Wireless.
Network-based and Attack-resilient Length Signature Generation for Zero-day Polymorphic Worms Zhichun Li 1, Lanjia Wang 2, Yan Chen 1 and Judy Fu 3 1 Lab.
Monitoring, Diagnosing, and Securing the Internet 1 Yan Chen Department of Electrical Engineering and Computer Science Northwestern University Lab for.
IPSec is a suite of protocols defined by the Internet Engineering Task Force (IETF) to provide security services at the network layer. standard protocol.
© 2006, iPolicy Networks, Inc. All rights reserved. Security Technology Correlation Proneet Biswas Sr. Security Architect iPolicy Networks
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
Michael J. Voss and Rudolf Eigenmann PPoPP, ‘01 (Presented by Kanad Sinha)
Unit 2 Personal Cyber Security and Social Engineering Part 2.
Firewalls. Overview of Firewalls As the name implies, a firewall acts to provide secured access between two networks A firewall may be implemented as.
DOWeR Detecting Outliers in Web Service Requests Master’s Presentation of Christian Blass.
Vigilante: End-to-End Containment of Internet Worms Manuel Costa, Jon Crowcroft, Miguel Castro, Antony Rowstron, Lidong Zhou, Lintao Zhang and Paul Barham.
Snort – IDS / IPS.
TMG Client Protection 6NPS – Session 7.
Attack Transformation to Evade Intrusion Detection
Zhichun Li, Gao Xia, Yi Tang, Yan Chen, and Bin Liu
Yan Chen Department of Electrical Engineering and Computer Science
Authors: Helen J. Wang, Chuanxiong Guo, Daniel R
Lecture 2: Overview of TCP/IP protocol
Authors: Helen J. Wang, Chuanxiong Guo, Daniel R
Presentation transcript:

Shield: Vulnerability-Driven End- Host Firewall for Preventing Known Vulnerability Attacks Sigcomm ’04

Software patching not an effective first-line defense Sasser, MSBlast, CodeRed, Slammer, Nimda, Slapper all exploited known vulnerabilities whose patches were released months or weeks before 90+% of attacks exploit known vulnerabilities [Arbaugh2002] People don’t patch immediately

Why don’t people patch? Disruption – Service or machine reboot Unreliability – Software patches inherently hard to test Irreversibility – Most patches are not designed to be easily reversible Unawareness

Firewall also not an effective first line defense Traditional firewalls – Typically in the network One-size-fits-all solution, lack application-awareness, miss end-to-end encrypted traffic – Course-grained High false positive rate Exploit-driven firewalls (or 1 st gen intrusion detection) – Filter according to exploit (attack) signatures Attack code obfuscation, e.g., polymorphism, metamorphism, can evade the firewall – Worms spread fast (in minutes or seconds!) Real-time signature generation and distribution difficult

Shields: End-host Vulnerability-Driven Network Filters Goal: Protect the time window between vulnerability disclosure and patch application. Approach: Characterize the vulnerability instead of its exploits and use the vulnerability signature for end-host firewalling Shields combine the best features of – Patches: vulnerability-specific, code level, executable – Firewall: exploit-specific, network level, data-driven Advantages of Shield: – Protection as good as patches (resilient to attack variations), unlike exploit-driven firewalls – Easier to test and deploy, more reliable than patches

Vulnerability vs. Exploit (1:M) Many exploits against a single vulnerability – E.g., many different strings can overrun a vulnerable buffer Vulnerability signatures generated at vulnerability discovery time – E.g., sizeof (msg.buffer) > legalLimit Exploit signatures generated at attack time – E.g., Snort signature for Slammer: alert udp $EXTERNAL_NET any -> $HOME_NET 1434 (msg:"MS-SQL Worm propagation attempt"; content:"|04|"; depth:1; content:"|81 F B 81 F1 01|"; content:"sock"; content:"send";

Shield Policies Incoming or Outgoing Network Traffic Shielded Traffic to Processes or Remote Hosts End-Host Shield New Shield Policy Overview of Shield Usage Shield intercepts vulnerable application traffic above the transport layer. Policy distribution very much like anti-virus signature model – automatic, non-disruptive, reversible

Vulnerability Modeling S0 V4S5 S2 Application Functionality in S2 Protocol State Machine S4 V4 Vulnerability State Machine Shield Policy (Vulnerability Signature): Vulnerability state machine + how to recognize and react to exploits in the vulnerable state Protocol analysis is the key for vulnerability-driven filtering Exploit Event S0 S3 S2S1 S5 Message

Shield Architecture: Goals Flexibility: support protocol analysis for any application level protocols Fidelity: protocol analysis consistent with that of the application DoS resilience: hold less state than that of the application

Flexibility: separate mechanism from policy Mechanism: protocol analysis – reconstruct message and session semantics: e.g., parsing, state machine operations – GAPA: generic application-level protocol analyzer Policy: a language that describes protocol state machine, message formats, and specific vulnerabilities – GAPAL: GAPA language Shield policy: a GAPAL script that blocks according to a vulnerability

Achieving Shield Fidelity Infidelity results in evasion or false positives Sources of inconsistencies: – Misunderstanding of the protocol or message format Test suites or trace-driven debugging – Event dispatching logic: Session as an abstraction independent of socket or host pair – Scattered message arrivals: Message as an abstraction independent of the packet

Achieve DoS-resilience: Session state: – Current protocol state – Parsing state – Handler continuation Parsing: – Exploit-checking only -- much streamlined parsing – Aggressive byte skipping – Save the partial field only (instead of partial message)

Achieving Safety: GAPAL Protocol { uses transport = { TCP|UDP/ } // session-local vars ; grammar { // msg-local vars ; NonTerminal  : { } …. }; State-machine { (, IN|OUT|Timeout)  handler; initial-state = ; final-state = ; }; Session-identifier ( ) { return ; }; Handler ( ) { // handler-local vars ; return “ ; }; }; // protocol

Key Properties of a GAPAL Completeness – Binary as well as text-based protocols – Layering Ease of authoring protocol descriptions – Payload parsing grammar similar to BNF – E.g., HTTP RFC spec - text ~= GPA policy for HTTP Safety – Strong typing – No dynamic memory allocation – No general-purpose loops or iterators – Semantic checking and optimization at compile time

GAPA as a General Facility Rapid protocol analysis enabler for IDSes, firewalls, and network monitors; and allow flexible customization Easy authoring of Shield vulnerability signature – Vulnerability signature authoring as refinement of previously specified protocol – Merging vulnerability signatures of the same application becomes trivial

Raw bytes Spec ID Event for Session i Interpret (Handler) ParsePayload Drop TearDownSession New Policies Per-App Spec Session State Session State Session State i How to parse message How to identify a session HandlerAt(State, Event) Session Dispatcher Policy Loader Application Dispatcher State Machine Engine Shield Interpreter SetNextState Raw bytes Port # CurState Exe->Spec ID Shield Architecture

Shield Implementation and Evaluation First prototype implemented as Windows Layered Service Provider (LSP) – Working shields for vulnerabilities behind Blaster, Slammer, and CodeRed – Near-zero false positives – Performance and scalability results promising: Negligible overhead for end user machines 14-30% throughput overhead for an artificial scenario stressing Shield Second prototype based on GAPAL – 48Mbps for CodeRed, 72Mbps for host header, 8-18Mbps for Blaster MSRC 2003 Bulletin study (49 bulletins) – All 12 worm-able vulnerabilities are easily shield-able – Some of the other 37 may also be shield-able

Comparison Across Defenses Software PatchFirewallTraditional IDSShield Time WindowAfter patchingAfter vul discovery Vul-specific?YesService-specificExploit-specificYes Working LayerApplicationNetworkTransportTransport to Application Easy to DeployNoYes False AlarmingNoHighMediumLow

Limitation Low throughput – Parallelization across protocols? Difficult to write application-level protocol – Automatic protocol generation? Protocol parser is coupled with signature, resulting in poor extensibility. – Decouple protocol parser with signature engine.

NetShield: Massive Semantics-Based Vulnerability Signature Matching for High-Speed Networks Sigcomm ’10

Motivation of NetShield 21

22 Matching Problem Formulation Suppose we have n signatures, defined on k matching dimensions (matchers) – A matcher is a two-tuple (field, operation) or a four-tuple for the associative array elements – Translate the n signatures to a n by k table – This translation unlocks the potential of matching multiple signatures simultaneously Rule 4: URI.Filename=“fp40reg.dll” && len(Headers[“host”])>300 RuleIDMethod ==Filename ==Header == LEN 1DELETE** 2POSTHeader.php* 3*awstats.pl* 4*fp40reg.dllname==“host”; len(value)>300 5**name==“User-Agent”; len(value)>544

Matching Algorithms Candidate Selection Algorithm 1.Pre-computation: Decides the rule order and matcher order 2.Runtime: Decomposition. Match each matcher separately and iteratively combine the results efficiently 23

24 Step 2: Iterative Matching RuleIDMethod ==Filename ==Header == LEN 1DELETE** 2POSTHeader.php* 3*awstats.pl* 4*fp40reg.dllname==“host”; len(value)>300 5**name==“User-Agent”; len(value)>544 PDU={Method=POST, Filename=fp40reg.dll, Header: name=“host”, len(value)=450} S 1 ={2} Candidates after match Column 1 (method==) S2=S2=S1S1 A2A2 +B2+B2 ={2}{}+{4}={}+{4}={4} S 3 =S 2 A3+B3A3+B3 ={4}{4}+{}={4}+{}={4} Si Don’t care matcher i+1 require matcher i+1 In A i+1 R1 R2 R3

High Speed Parsing NetShield uses stream parser to save memory and running overhead. Tree-based vs. Stream Parsers Keep the whole parse tree in memory Parsing and matching on the fly Parse all the nodes in the tree Only signature related fields (leaf nodes) VS. 25

Parsing Results Trace TH DNS TH WINRPC NU WINRPC TH HTTP NU HTTP DARPA HTTP Avg flow len (B) K55K2.1K Throughput (Gbps) Binpac Our parser Speed up ratio Max. memory per connection (bytes)

Parsing+Matching Results TraceTH WINRPC NU WINRPC TH HTTP NU HTTP DARPA HTTP Avg flow length (B) K55K2.1K Throughput (Gbps) Sequential CS Matching Matching only time speedup ratio Avg # of Candidates Avg. memory per connection (bytes) core 27

Scalability Results Performance decrease gracefully 28

Contribution Significantly speed up vul sig matching, making vul-based IDS practical.

Limitation No support for stateful vul. compared with Shield. Speed-up is only effective for symbolic constraint signature. – “HttpMethod=POST && HttpFilename=header.php”