Vigilante and Potemkin Presenter: Ýmir Vigfússon Based in part on slide sets from Mahesh Balakrishnan and Raghavan Srinivasan.

Slides:



Advertisements
Similar presentations
Buffer Overflows Nick Feamster CS 6262 Spring 2009 (credit to Vitaly S. from UT for slides)
Advertisements

The Internet Motion Sensor: A Distributed Blackhole Monitoring System Michael Bailey*, Evan Cooke*, Farnam Jahanian* †, Jose Nazario †, David Watson* Presenter:
Smashing the Stack for Fun and Profit
Code-Red : a case study on the spread and victims of an Internet worm David Moore, Colleen Shannon, Jeffery Brown Jonghyun Kim.
Communications of the ACM (CACM), Vol. 32, No. 6, June 1989
Bouncer securing software by blocking bad input Miguel Castro Manuel Costa, Lidong Zhou, Lintao Zhang, and Marcus Peinado Microsoft Research.
SCSC 555 Computer Security Chapter 10 Malicious software Part B.
CMSC 414 Computer and Network Security Lecture 24 Jonathan Katz.
Ken Birman. Virtualization as a Defense We know that our systems are under attack by all sorts of threats Can we use virtual machines as a defensive tool?
Vigilante: End-to-End Containment of Internet Worms Paper by: Manuel Costa, Jon Crowcroft, Miguel Castro, Ant Rowstron, Lidong Zhou, Lintao Zhang, Paul.
Stopping Worm/Virus Attacks Chiu Wah So (Kelvin).
Distributed Intrusion Detection Systems (dIDS) 2/10 CIS 610.
Vigilante: End-to-End Containment of Internet Worms Manuel Costa, Jon Crowcroft, Miguel Castro, Antony Rowstron, Lidong Zhou, Lintao Zhang, Paul Barham.
Vigilante: End-to-End Containment of Internet Worms M. Costa et al. (MSR) SOSP 2005 Shimin Chen LBA Reading Group.
Internet Quarantine: Requirements for Containing Self-Propagating Code David Moore et. al. University of California, San Diego.
Control hijacking attacks Attacker’s goal: – Take over target machine (e.g. web server) Execute arbitrary code on target by hijacking application control.
CMSC 414 Computer and Network Security Lecture 20 Jonathan Katz.
Lecture 11 Intrusion Detection (cont)
Game-based Analysis of Denial-of- Service Prevention Protocols Ajay Mahimkar Class Project: CS 395T.
Scalability, Fidelity and Containment in the Potemkin Virtual Honeyfarm Authors: Michael Vrable, Justin Ma, Jay chen, David Moore, Erik Vandekieft, Alex.
UCSD Potemkin Honeyfarm Jay Chen, Ranjit Jhala, Chris Kanich, Erin Kenneally, Justin Ma, David Moore, Stefan Savage, Colleen Shannon, Alex Snoeren, Amin.
Michael Vrable, Justin Ma, Jay Chen, David Moore, Erik Vandekieft, Alex C. Snoeren, Geoffrey M. Voelker, and Stefan Savage Presenter: Martin Krogel.
Statically Detecting Likely Buffer Overflow Vulnerabilities David Larochelle David Evans University of Virginia Department of Computer Science Supported.
Introduction to Honeypot, Botnet, and Security Measurement
Security Exploiting Overflows. Introduction r See the following link for more info: operating-systems-and-applications-in-
Web Application Access to Databases. Logistics Test 2: May 1 st (24 hours) Extra office hours: Friday 2:30 – 4:00 pm Tuesday May 5 th – you can review.
Stamping out worms and other Internet pests Miguel Castro Microsoft Research.
Talking points Attacks are more frequent, more aggressive, require more time to repair and prevent Machines get compromised in 2003 for the same reasons.
Honeypot and Intrusion Detection System
BLENDED ATTACKS EXPLOITS, VULNERABILITIES AND BUFFER-OVERFLOW TECHNIQUES IN COMPUTER VIRUSES By: Eric Chien and Peter Szor Presented by: Jesus Morales.
Final Introduction ---- Web Security, DDoS, others
A Virtual Honeypot Framework Author: Niels Provos Published in: CITI Report 03-1 Presenter: Tao Li.
The Internet Motion Sensor: A Distributed Blackhole Monitoring System Presented By: Arun Krishnamurthy Authors: Michael Bailey, Evan Cooke, Farnam Jahanian,
Code Red Worm Propagation Modeling and Analysis Zou, Gong, & Towsley Michael E. Locasto March 21, 2003.
Detection Unknown Worms Using Randomness Check Computer and Communication Security Lab. Dept. of Computer Science and Engineering KOREA University Hyundo.
Computer Science Detecting Memory Access Errors via Illegal Write Monitoring Ongoing Research by Emre Can Sezer.
Vigilante: End-to-End Containment of Internet Worms Authors : M. Costa, J. Crowcroft, M. Castro, A. Rowstron, L. Zhou, L. Zhang, and P. Barham In Proceedings.
Presented by Spiros Antonatos Distributed Computing Systems Lab Institute of Computer Science FORTH.
The UCSD Network Telescope A Real-time Monitoring System for Tracking Internet Attacks Stefan Savage David Moore, Geoff Voelker, and Colleen Shannon Department.
Distributed Denial of Service Attacks Shankar Saxena Veer Vivek Kaushik.
1 Honeypot, Botnet, Security Measurement, Spam Cliff C. Zou CDA /01/07.
Stamping out worms and other Internet pests Miguel Castro Microsoft Research.
Finding Diversity in Remote Code Injection Exploits Justin Ma, John Dunagan, Helen J. Wang, Stefan Savage, Geoffrey M. Voelker *University of California,
Introduction to Honeypot, measurement, and vulnerability exploits
Buffer Overflow Attack Proofing of Code Binary Gopal Gupta, Parag Doshi, R. Reghuramalingam, Doug Harris The University of Texas at Dallas.
1 Very Fast containment of Scanning Worms By: Artur Zak Modified by: David Allen Nicholas Weaver Stuart Staniford Vern Paxson ICSI Nevis Netowrks ICSI.
Lecture 9: Buffer Ovefflows and ROP EEN 312: Processors: Hardware, Software, and Interfacing Department of Electrical and Computer Engineering Spring 2014,
Worm Defense Alexander Chang CS239 – Network Security 05/01/2006.
HoneyComb HoneyComb Automated IDS Signature Generation using Honeypots Prepare by LIW JIA SENG Supervisor : AP. Dr. Mohamed Othman.
4061 Session 26 (4/19). Today Network security Sockets: building a server.
Shellcode Development -Femi Oloyede -Pallavi Murudkar.
Introduction to Information Security ROP – Recitation 5.
Scalability, Fidelity, and Containment in the Potemkin Virtual Honeyfarm Michael Vrable, Justin Ma, Jay chen, David Moore, Erik Vandekieft, Alex C. Snoeren,
Argos Emulator Georgios Portokalidis Asia Slowinska Herbert Bos Vrije Universiteit Amsterdam.
Mobile Code and Worms By Mitun Sinha Pandurang Kamat 04/16/2003.
1 Modeling, Early Detection, and Mitigation of Internet Worm Attacks Cliff C. Zou Assistant professor School of Computer Science University of Central.
Slammer Worm By : Varsha Gupta.P 08QR1A1216.
Dynamic Taint Analysis for Automatic Detection, Analysis, and Signature Generation of Exploits on Commodity Software Paper by: James Newsome and Dawn Song.
Information Security - 2. A Stack Frame. Pushed to stack on function CALL The return address is copied to the CPU Instruction Pointer when the function.
Software Security. Bugs Most software has bugs Some bugs cause security vulnerabilities Incorrect processing of security related data Incorrect processing.
@Yuan Xue Worm Attack Yuan Xue Fall 2012.
Vigilante: End-to-End Containment of Internet Worms Manuel Costa Joint work with: Jon Crowcroft, Miguel Castro, Antony Rowstron, Lidong Zhou, Lintao Zhang,
Vigilante: End-to-End Containment of Internet Worms Manuel Costa, Jon Crowcroft, Miguel Castro, Antony Rowstron, Lidong Zhou, Lintao Zhang and Paul Barham.
Sabrina Wilkes-Morris CSCE 548 Student Presentation
Michael Vrable, Justin Ma, Jay Chen, David Moore, Erik Vandekieft,
Jonas Pfoh, Daniel Angermeier
Introduction to Information Security
Internet Worm propagation
CSE551: Introduction to Information Security
Introduction to Internet Worm
Presentation transcript:

Vigilante and Potemkin Presenter: Ýmir Vigfússon Based in part on slide sets from Mahesh Balakrishnan and Raghavan Srinivasan.

Security vulnerabilities Lazy programmers Bad programmers BIND, Sendmail, WU-FTP Buffer overflows Format string attacks Integer overflows Race conditions Command injection …

Parameters Return address Stack Frame Pointer Local variables SP Stack Growth Simple buffer overflow

Code on a server (written by a lazy programmer): void func(char *str) { char buf[128]; strcpy(buf, str); do-something(buf); } When the function is invoked the stack looks like: What if *str is 136 bytes long? After strcpy() : strret-addrsfpbuf top of stack str top of stack *str ret Simple buffer overflow

str top of stack *str ret execl(“/sbin/eject”); 31 c0 b0 3f cd db 89 d9 b c0 b0 3f cd 80 eb 1f 5e c c b0 0b 89 f3 8d 4e 08 8d 56 0c cd db 89 d8 40 cd 80 e8 dc ff ff ff /sbin/eject Simple buffer overflow

Worms 11/1988 … Cornell grad student Robert Morris writes the Internet Worm

Worms 11/1988 … 07/ / / / / /2005 Cornell grad student Robert Morris writes the Internet Worm CodeRed – MS IIS Nimda – MS IIS+ Slammer – MS SQL Blaster – MS Win RPC Sasser – MS Win LSASS Zotob – MS Win Plug-n-Play (more to come)

Worms 07/ / /2003 CodeRed – MS IIS Slammer – MS SQL Blaster – MS Win RPC 360,000 75, ,000 37m 8.5s 37m Infected 2x

Vigilante Automates worm defense Run heavily instrumented versions of software on detector machines Uses collaborative infrastructure to detect worms Manuel Costa, Jon Crowcroft, Miguel Castro, Antony Rowstron, Lidong Zhou, Lintao Zhang, Paul Barham

Overview SCA: Self-Certifying Alert

Dynamic dataflow analysis Dirty data loaded into PCExecution control vuln. Dirty data to be executedCode execution vuln. Critical fn. argument dirtyFunction argument vuln. Specific to C/C++ vulnerabilities ? Format string attacks?

SCA generation str top of stack buf sfp ret-addr

SCA generation str top of stack *str ret DIRTY %eax %ebx … %eip %esp

SCA generation str top of stack *str ret DIRTY %eax %ebx … %eip %esp

SCA generation str top of stack *str ret DIRTY %eax %ebx … %eip %esp AHA!

SCA generation Execution control SCA Address of code to execute is contained at this offset within the message Example: The Slammer Worm

SCA verification Hosts run same software with identical configuration within sandbox Replace code/address in SCA with a call to verified() No trust required Fast, simple and generic verification No false positives Assumes address/code/argument is supplied verbatim in messages Assumes message replay suffices for exploit reproduction

SCA distribution Flooding over secure Pastry overlay Denial-of-Service attacks? (DoS) Don’t forward already blocked SCAs Forward only after verification Rate-limit SCAs from each neighbor Use super-peers so worms can’t learn the topology

Local response Verify SCA Data and Control Flow Analysis Generate filters – conjunctions of conditions on single messages Two levels: General filter with false positives Specific filter with no false positives

SCA Generation TimeSCA Sizes Evaluation: SCA generation

SCA Verification TimeFilter generation Evaluation: SCA verification Verification is fast. The sandbox VM is always running.

Simulation on real worms Simulate worm epidemic on 500,000 nodes, 1000 super-peers Includes worm-induced congestion DoS: Each host sends fake SCAs to all neighbors

Internet Dangers

Honeypots Scalability Fidelity Containment “A honeypot is a network-connected system that is carefully monitored so that intrusions can be easily detected and precisely analyzed.”

Honeypots Low interaction High scaling Low fidelity High interaction Low scaling High fidelity Containment means that compromised honeypots should not be able to attack third-party systems. A honeyfarm is a set of honeypots.

Potemkin Honeyfarm “Dynamically bind physical resources to external requests only for the short periods of time necessary to emulate the execution behavior of dedicated hosts.” Potemkin: a honeyfarm system that exploits: Virtual machines Aggressive memory sharing Late binding of resources Michael Vrable, Justin Ma, Jay Chen, David Moore, Erik Vandekieft, Alex C. Snoeren, Geoffrey M. Voelker and Stefan Savage

Potemkin Honeyfarm Potemkin Catherine II

Potemkin Honeyfarm “Dynamically bind physical resources to external requests only for the short periods of time necessary to emulate the execution behavior of dedicated hosts.” Potemkin: a honeyfarm system that exploits: Virtual machines Aggressive memory sharing Late binding of resources

Potemkin Architecture Virtual Machine Monitors (VMMs) Easy to manage. Physical resources not a major restriction. Each IP address spawns a new VM. Problem: Expensive Observation : Targets are homogenous Solution: clone a VM from a reference image, change IP (etc.), accept packets.

Flash Cloning

Delta Virtualization

Potemkin Architecture What if VMs are compromised? Gateway router policy: Isolate the HoneyFarm, only send outgoing packets in response to incoming ones. Other packets are internally reflected. Infections spread within HoneyFarm. Universal identifier captures causal relationship of communication. Directs incoming traffic, contains outgoing traffic, resource management, user interface

Evaluation Port-scan

Evaluation: Scan filter

Food for thought How can HoneyFarms attract traffic? HoneyPot detection DoS attacks

Questions?