WORM PROPAGATION Terry Griffin Sandeep Pinnamaneni Vandana Gunupudi.

Slides:



Advertisements
Similar presentations
Defense and Detection Strategies Against Internet Worms Usman Sarwar Network Research Group, University Science Malaysia.
Advertisements

Thank you to IT Training at Indiana University Computer Malware.
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
Web Defacement Anh Nguyen May 6 th, Organization Introduction How Hackers Deface Web Pages Solutions to Web Defacement Conclusions 2.
 Population: N=100,000  Scan rate  = 4000/sec, Initially infected: I 0 =10  Monitored IP space 2 20, Monitoring interval:  = 1 second Infected hosts.
 Well-publicized worms  Worm propagation curve  Scanning strategies (uniform, permutation, hitlist, subnet) 1.
A Taxonomy of Computer Worms Ashish Gupta Network Security April 2004.
Protecting Yourself Online. VIRUSES, TROJANS, & WORMS Computer viruses are the "common cold" of modern technology. One in every 200 containing.
Computer Security and Penetration Testing
How to Own the Internet in your spare time Ashish Gupta Network Security April 2004.
1 The Spread of the Sapphire/Slammer Worm D. Moore, V. Paxson, S. Savage, C. Shannon, S. Staniford, N. Weaver Presented by Stefan Birrer.
Internet Quarantine: Requirements for Containing Self-Propagating Code David Moore et. al. University of California, San Diego.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Application Layer Functionality and Protocols Network Fundamentals – Chapter.
Internet Relay Chat Security Issues By Kelvin Lau and Ming Li.
Internet Relay Chat Chandrea Dungy Derek Garrett #29.
A Study of Mass- mailing Worms By Cynthia Wong, Stan Bielski, Jonathan M. McCune, and Chenxi Wang, Carnegie Mellon University, 2004 Presented by Allen.
How do worms work? Vivek Ramachandran Nagraj – An Indian comic book hero, who commands all the snakes of the world.
Internet Worms Brad Karp UCL Computer Science CS GZ03 / th December, 2007.
NetworkProtocols. Objectives Identify characteristics of TCP/IP, IPX/SPX, NetBIOS, and AppleTalk Understand position of network protocols in OSI Model.
Jaringan Komputer Dasar OSI Transport Layer Aurelio Rahmadian.
Honeypot and Intrusion Detection System
ITIS 1210 Introduction to Web-Based Information Systems Chapter 45 How Hackers can Cripple the Internet and Attack Your PC How Hackers can Cripple the.
1 How to 0wn the Internet in Your Spare Time Authors: Stuart Staniford, Vern Paxson, Nicholas Weaver Publication: Usenix Security Symposium, 2002 Presenter:
A Taxonomy of Computer Worms Nicholas Weaver, Vern Paxson, Stuart Staniford, and Robert Cunningham ACM WORM 2003 Speaker: Chang Huan Wu 2008/8/8.
--Harish Reddy Vemula Distributed Denial of Service.
The Internet Motion Sensor: A Distributed Blackhole Monitoring System Presented By: Arun Krishnamurthy Authors: Michael Bailey, Evan Cooke, Farnam Jahanian,
Implementing a Port Knocking System in C Honors Thesis Defense by Matt Doyle.
Virus Detection Mechanisms Final Year Project by Chaitanya kumar CH K.S. Karthik.
1 Figure 4-16: Malicious Software (Malware) Malware: Malicious software Essentially an automated attack robot capable of doing much damage Usually target-of-opportunity.
How to Own the Internet in Your Spare Time (Stuart Staniford Vern Paxson Nicholas Weaver ) Giannis Kapantaidakis University of Crete CS558.
Modeling Worms: Two papers at Infocom 2003 Worms Programs that self propagate across the internet by exploiting the security flaws in widely used services.
IEEE Communications Surveys & Tutorials 1st Quarter 2008.
Fundamentals of Proxying. Proxy Server Fundamentals  Proxy simply means acting on someone other’s behalf  A Proxy acts on behalf of the client or user.
Application Layer Khondaker Abdullah-Al-Mamun Lecturer, CSE Instructor, CNAP AUST.
Week 10-11c Attacks and Malware III. Remote Control Facility distinguishes a bot from a worm distinguishes a bot from a worm worm propagates itself and.
Distributed Denial of Service Attacks Shankar Saxena Veer Vivek Kaushik.
1 Figure 4-1: Targeted System Penetration (Break-In Attacks) Host Scanning  Ping often is blocked by firewalls  Send TCP SYN/ACK to generate RST segments.
1 On the Performance of Internet Worm Scanning Strategies Authors: Cliff C. Zou, Don Towsley, Weibo Gong Publication: Journal of Performance Evaluation,
1 Network Firewalls CSCI Web Security Spring 2003 Presented By Yasir Zahur.
Worm Defense Alexander Chang CS239 – Network Security 05/01/2006.
Blackhat 2001 Las Vegas, Nazario, “The Future of Internet Worms” The Future of Internet Worms Jose Nazario Crimelabs Research.
Search Worms, ACM Workshop on Recurring Malcode (WORM) 2006 N Provos, J McClain, K Wang Dhruv Sharma
Malicious Software.
Research Direction Advisor: Frank,Yeong-Sung Lin Presented by Jia-Ling Pan 2010/10/211NTUIM OPLAB.
Mobile Code and Worms By Mitun Sinha Pandurang Kamat 04/16/2003.
A Case Study on Computer Worms Balaji Badam. Computer worms A self-propagating program on a network Types of Worms  Target Discovery  Carrier  Activation.
1 Modeling, Early Detection, and Mitigation of Internet Worm Attacks Cliff C. Zou Assistant professor School of Computer Science University of Central.
Understand Malware LESSON Security Fundamentals.
Slammer Worm By : Varsha Gupta.P 08QR1A1216.
1 Monitoring and Early Warning for Internet Worms Cliff C. Zou, Lixin Gao, Weibo Gong, Don Towsley Univ. Massachusetts, Amherst.
1 Monitoring and Early Warning for Internet Worms Authors: Cliff C. Zou, Lixin Gao, Weibo Gong, Don Towsley Univ. Massachusetts, Amherst Publish: 10th.
Role Of Network IDS in Network Perimeter Defense.
How to 0wn the Internet In Your Spare Time Authors Stuart Staniford, Vern Paxson, Nicholas Weaver Published Proceedings of the 11th USENIX Security Symposium.
Page 1 Viruses. Page 2 What Is a Virus A virus is basically a computer program that has been written to perform a specific set of tasks. Unfortunately,
Virus Infections By: Lindsay Bowser. Introduction b What is a “virus”? b Brief history of viruses b Different types of infections b How they spread b.
@Yuan Xue Worm Attack Yuan Xue Fall 2012.
Security on the Internet Norman White ©2001. Security What is it? Confidentiality – Can my information be stolen? Integrity – Can it be changed? Availability.
Common System Exploits Tom Chothia Computer Security, Lecture 17.
Internet Quarantine: Requirements for Containing Self-Propagating Code
Operating Systems Services provided on internet
Viruses and Other Malicious Content
Terry Griffin Sandeep Pinnamaneni Vandana Gunupudi
A Distributed DoS in Action
Brad Karp UCL Computer Science
Lecture 3: Secure Network Architecture
CSE551: Introduction to Information Security
Crisis and Aftermath Morris worm.
Introduction to Internet Worm
Presentation transcript:

WORM PROPAGATION Terry Griffin Sandeep Pinnamaneni Vandana Gunupudi

Agenda Introduction Background Infamous Worms Benchmarks and Metrics Requirements Summary of Methods Conclusion

Introduction What is a worm? – Piece of software that propagates using vulnerabilities in software/application – Self-propagating (distinct from a virus) – Self-replicating – Spread through the Internet easily due to its open communication model

Classification of Worms Target Discovery – How does a worm find new hosts to infect? Carrier – How does it transmit itself to the target? Activation – Mechanism by which the worm operates on the target Payloads – What the worm carries to reach its goal N.Weaver, V.Paxson, et al, “A taxonomy of computer worms”, Proc. Of the ACM workshop on Rapid Malcode, pp.11-18, 2003.

Target Discovery Scanning – Sequential or Random – Permutation scanning – Bandwidth-limited scanning Pre-Generated Target lists – “hit-list” of probably victims Externally/internally generated target lists – Topological Worm (Morris Worm)

Carrier (Propagation Mechanisms) Self-carried – Actively transmits itself as part of the infection process Second Channel – Require a secondary communication channel – Example Blaster: primary channel is RPC; – secondary channel is TFTP Embedded – Appends itself to normal messages

Activation Mechanism Human Activation – Slowest activation method – Melissa Human Activity based – Windows Share worms like Nimda Scheduled Process Activation – Like unauthenticated automatic updates Self Activation – Fastest method

Payloads Code carried by the worm apart from its propagation routines Empty Payload – most common Internet Remote Control – Privileged back door Spam-Relays – Sobig’s Trojan opened an open-mail relay HTML-Proxies – Sobig distributed web proxies Internet DoS (Code Red)

History of Worms Source:

Morris Worm Topological Worm (6-10% of all Internet hosts infected) First large-scale worm that targeted VAX, Sun Unix systems Target Discovery – Scanning the local subnet Activation – Self Activation Propagation Mechanism (Self Carried) –Exploiting a fingered buffer overflow Payload – None

Code Red I July 19, 2001: more than 359,000 computers connected to the Internet were infected by Code-Red I v2 worm in less than 14 hours Source:

Code Red I Target Discovery – Scanning Activation – Self Activation Propagation Mechanism (Self Carried) –Exploiting a Microsoft IIS Web Server buffer overflow Payload – Defacement of websites

Code Red I Exploited buffer overflow in Indexing Service in Microsoft IIS Server Days 1-19 of each month – displays ‘hacked by Chinese’ message on English language servers – tries to open connections to infect randomly chosen machines using 100 threads Day – stops trying to spread – launches a denial-of-service attack on the IP address of www1.whitehouse.gon Code Red I v1 – July 12, 2001 – Used static seed for random number generator – Each infected computer tries to infect always the same IP addresses – Not very damaging, spread slowly – Memory resident Code Red I v2 – July 19, 2001 – Used random seed for random number generator

Code Red Damage 359,000 hosts infected in 24 hour period Between 11:00 and 16:00 UTC, the growth is exponential 2,000 hosts infected per minute at the peak of the infection rate (16:00 UTC)

Nimda ( September 18, 2001) Target Discovery – Scanning, Activation – Self Activation, User action Propagation Mechanism (Self Carried) –Exploiting a Microsoft IIS Web Server buffer overflow Payload – Defacement of websites Multi-mode spreading: – attack IIS servers via infected clients – itself to address book as a virus – copy itself across open network shares – modifying Web pages on infected servers w/ client exploit – scanning for Code Red II backdoor Spread across firewalls.

SASSER Worm (2004) April 29, 2004 Target Discovery – Random Scanning of IP addresses on TCP port 445, – can scan up to 1,024 addresses simultaneously Mode of Transmission – Buffer Overflow in Windows Local Security Authority Service Server (LSASS) Payload – Rootkit potential – Escalation of privileges

Witty (2004) March 19, 2004 Buffer overflow vulnerability in ISS PAM module Single UDP packet exploits flaw in the passive analysis of Internet Security Systems (ISS) products. “Bandwidth-limited” UDP worm like Slammer. Vulnerable pop. (12K) attained in 75 minutes. Payload: slowly corrupt random disk blocks. Detailed telescope analysis reveals worm targeted a US military base and was launched from a European retail ISP account.

Other Worms Network.vbs, February 2000: This worm had no payload and spread via unprotected Windows shares. Ramen, January 2001: This worm targeted RedHat Linux systems via exploits that were 4 – 7 months old and, aside from defacing web pages did not appear to be particularly malicious. However, as noted by the Linux Weekly News, multicast traffic was affected as a byproduct of the worm’s scanning mechanism, resulting in degraded service over the MBONE for both unicast and multicast traffic.

Network.vbs Worm The Network.vbs worm propagates via unprotected Windows shares. The process as described in CERT Incident Note IN is as follows: 1. Perform a pseudo-random IP scan, looking for hosts with Windows filesharing enabled. 2. Attempt to mount the share named “C” as local drive J. 3. If mount is successful copy network.vbs script into the “Startup” program group. Provided that the above is successful, the worm will be executed the next time someone logs into the system. It should be noted that the QAZ worm uses a similar mechanism, enumerating hosts within the “Network Neighborhood” and replacing notepad.exe with the worm binary.

ADM Worm The ADM worm propagates via a buffer overflow in Unix systems running DNS server daemons derived from v of the ISC BIND code. The worm performs an incremental IP scan, starting from a random IP address, looking for DNS servers which support the IQUERY command. When such a server is encountered the worm attempts to exploit a buffer overflow in IQUERY response processing which, if successful, allows the worm to create an account for itself on the exploited host along with a setuid root shell. This account and shell are used to transfer the worm’s tarball to the targeted host via ftp, at which point the tarball is untar’d and the worm is executed on the target host, beginning the propagation process all over again.

ADM and other early worms (Millenium, Ramen, li0n, and Sadmind specifically) are composed of the following components: IP Scanner: A mechanism for selecting IP’s to target. One or more exploits: Pre-existing, programmatic-attack type exploit used by the worm to escalate its privilege level on the targeted system. Propagation mechanism: Provides the logic necessary to move the worm archive from system to system, usually via the use of ftp or tftp. Glue/misc scripts: These scripts tie the other components together and provide worm-specific functionality. ADM Worm

Slammer Worm – Before Figure taken from

Slammer Worm - After Figure taken from

SQL Slammer The Slammer worm (also called Sapphire worm) consists of an IP scanner combined with an exploit for MS SQL Server, written in 376 bytes of code. Slammer exploited connectionless UDP service, rather than connection-oriented TCP. Entire worm fit in a single packet! Worm infected 75,000+ hosts in 10 minutes (despite broken random number generator). – At its peak, doubled every 8.5 seconds

Slammer Worm Propagation speed was Sapphire's novel feature: in the first minute, the infected population doubled in size every 8.5 (±1) seconds. The worm achieved its full scanning rate (over 55 million scans per second) after approximately three minutes, after which the rate of growth slowed down somewhat because significant portions of the network did not have enough bandwidth to allow it to operate unhindered. Most vulnerable machines were infected within 10-minutes of the worm's release. Although worms with this rapid propagation had been predicted on theoretical grounds, the spread of Sapphire provides the first real incident demonstrating the capabilities of a high-speed worm. By comparison, it was two orders magnitude faster than the Code Red worm, which infected over 359,000 hosts on July 19th, In comparison, the Code Red worm population had a leisurely doubling time of about 37 minutes.

General Model of Worm Propagation Source:

Summary of Worm Propagation Worm propagation can be broadly described by a 3 (or 4) step process illustrated in the figure before: 0.) Initial Infection: The model begins with the presumption that there exists a system that is already infected by the worm and that the worm is active on this system. 1.) Target Acquisition: In order for the worm to propagate itself it must find additional systems to infect. Worms may actively target systems using: a. IP addresses b. addresses c. File system traversal It should also be noted that worms may passively target client system i.e. the trojaned web content delivered by web servers infected with the Nimda worm.

Worm Propagation 2.)Delivery of Hostile Code: Once a system has been targeted, it is necessary to transfer the worm to the targeted system in preparation for infection. Code delivery has been observed to take place via the following: a. Network file systems b. c. Web clients d. Remote command shell (or equivalent) e. As part of packet payload associated with buffer overflows and similar programmatic exploits. 3.) Execution of Hostile Code: The presence of hostile code on a system is not sufficient for worm propagation; execution of the code must be triggered in some fashion. Code may be executed via: a. Direct invocation from the command line (or equivalent) b. Buffer overflow or other programmatic attack c. clients d. Web clients e. User intervention f. Automatic execution by target system. 4.) Some worms may only transfer a portion of their code in step 3. In that case it is necessary for them to transfer the remaining code once the target system has been compromised. This can be achieved via a. FTP/TFTP b. Network file systems

Benchmarks and Metrics Infection Size – Percentage of nodes infected Reaction Time – Time between detection of a worm and deployment of worm control measures – Obviously the lower the better Penetration Ratio – Number of nodes infected compared to the size of the possible domain – Related to infection ratio False Positives/Negatives

Propagation Countermeasures The analysis below examines each step in the propagation model in detail to determine what countermeasures, if any, prove effective. Target Acquisition: The specific targeting mechanism varies based on the means by which the hostile code will be delivered to the target system. 1.) IP Scanning: The most popular method for targeting systems to date seems to be IP scanning.

Target Acquisition The most basic scanning algorithm is as follows: 1. Generate an IP address. 2. Perform local setup for network communication. 3. Attempt to connect to the targeted system by sending a TCP SYN packet to :. a.) If a TCP SYN-ACK packet is received then the remote system at is listening on. Send an ACK packet and proceed with transfer of hostile code. b.) Receipt of any other type of packet from, or failure to receive any packet after a certain number of tries, indicates that the targeted service is not available for some reason. Return to step 1.

Target Acquisition The simplest countermeasure to deploy is also the most effective; unneeded services should be turned off. In this situation, the infected host sends a SYN packet that is received by the target host as usual. However, since the service is turned off, there is no process listening on the destination port on the target host. The proper response in this situation is for the target host to send back an RST packet, the receipt of which tells the infected host that the targeted service is unavailable, causing the infected host to move on to the next target (Loop).

Target Acquisition In a typical network configuration a firewall is deployed somewhere on the network path between the infected host and the target host as show in Figure below. When the infected host sends a SYN packet to the target host the packet is first intercepted by the firewall. The firewall is configured to prevent most systems from accessing services on the target host, which is achieved by silently discarding the SYN packet. The infected system will generally send several more SYN packets that will be treated in the same manner, after which the infected system will assume that the targeted service is unavailable and move on to the next target. Source:

Hostile Code Delivery Code delivery via is a favorite mechanism of worms and worm-like viruses. The process begins with the worm composing a message containing hostile code and attempting to send that message to the targeted address. Source:

Hostile Code Delivery The below configuration forces the infected system to deliver the via the designated relay and, furthermore, forces that to be received by the designated mail exchange, significantly reducing the number of potential delivery paths that the system administrator must monitor. source:

Hostile Code Delivery Web Clients: Forcing clients to use a designated proxy for web communication causes web content delivery to take on the form shown in below figure. Clients send requests for web content to the proxy, which then forwards the request on to the appropriate web server. The web server, in turn, provides the proxy with the requested content, which the proxy sends back to the requesting client. source:

Execution of Hostile Code Clients: There are a number of mechanisms by which clients can be induced to execute hostile code. An client may be induced to execute code in one of three ways: 1.) Programmatic Attack 2.) Rendering By-Product 3.) User Intervention

Additional Code Transfer Some worms transfer additional code from the infected system to the target system once the initial exploit of the targeted system is completed. Unfortunately, if the worm gets this far there is likely little that can be done to prevent its spread. At this point both the infected host and the targeted host are completely compromised, so any preventative measures must be deployed between these two systems. Once again, an appropriately configured firewall may prevent the complete propagation of the worm. This underlies the importance of having a well- configured policy regarding outgoing connections in addition to incoming connections.

Summary is the number of host infected in real time. is the pair wise rate of infection. is the infection rate. As we can see from previous slides the spread is phenomenal....

Summary Breakdown of a typical current day worm: Reconnaissance capabilities Specific attack capabilities A command interface Communications capabilities Intelligence capabilities Unused attack capabilities

Summary Reconnaissance capabilities Automated sweeps and scans to Identify possible victims Determine best method to infect new victim (if possible)

Summary Specific attack cabilities Method in which the worm gains entry – buffer overflows – cgi-bin errors Attack portion of code has two parts – component which runs on infected host – component which looks for new host

Summary A command interface Node is only worthwhile if it can be used – Interactive interface (direct login) – Automatic interface (parent child)

Summary Communications capabilities Typically reside on different systems, therefore method of communication is necessary Transfer of information Typically hidden

Summary Intelligence capabilities Possible distributed effort All machines working together You must – Know who is infected can be achieved with update message/ to central point what network address is / system type – How to contact them irc chat lines direct login

Summary Unused attack capabilities Multiple attack methods allow for more flexibility Send only necessary payload (specific attack)

Future Future: Worms will change Infection mechanisms will become smarter. Use network topology to their advantage. Stealthier communications methods Smarter Target Selection More dynamic behavior

Future Typical Defense (obvious stuff) Patch, Patch, Patch Defense in Depth IDS and Response Mechanisms

Future New Detection Strategies Monitor shifts in traffic Anomaly Detection Exploit worm network flaws

Conclusions 1.Future defense of worms is labor intensive with current Internet design. 2.The infrastructure itself needs to assist with detecting Internet Worms. 3.A proper design could mimic a multi-level security system.

References Kienzle, D.M., Elder, M.C., Recent worms: a survey and trends, Proceedings of the 2003 ACM workshop on Rapid Malcode, pp N.Weaver, V.Paxson, et al, A taxonomy of computer worms, Proc. Of the ACM workshop on Rapid Malcode, pp.11-18, S. Staniford, V. Paxson, and N. Weaver, How to own internet in your spare time in Proceedings of the USENIX Security Symposium, pp , Cliff Changchun Zou, Lixin Gao, Weibo Gong, Don Towsley. Monitoring and Early Warning for Internet Worms 9. Jose Nazario, The Future of Internet Worms, Crimelabs research: