Crisis and Aftermath Morris worm.

Slides:



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

Computer Science CSC 405Dr. Peng Ning1 CSC 405 Introduction to Computer Security Topic 3. Program Security -- Part I.
Thank you to IT Training at Indiana University Computer Malware.
Dr. Kalpakis CMSC 421, Operating Systems. Fall 2008 URL: Security.
C risis And A ftermath Eugene H. Spafford 발표자 : 손유민.
Communications of the ACM (CACM), Vol. 32, No. 6, June 1989
Week 6 - Friday.  What did we talk about last time?  Viruses and other malicious code.
October 15, 2002Serguei A. Mokhov, 1 UNIX Security 2: A Quick Recap SOEN321 - Information Systems Security Revision 1.3 Date: September.
1 Topic 1 – Lesson 3 Network Attacks Summary. 2 Questions ► Compare passive attacks and active attacks ► How do packet sniffers work? How to mitigate?
Hacker, Cracker?! Are they the same? No!!! Hacker programmers intensely interested in the arcane and recondite workings of any computer operating system.
Exploits Dalia Solomon. Categories Trojan Horse Attacks Trojan Horse Attacks Smurf Attack Smurf Attack Port Scan Port Scan Buffer Overflow Buffer Overflow.
Silberschatz, Galvin and Gagne  Operating System Concepts The Security Problem A system is secure iff its resources are used and accessed as.
1 Protection Protection = access control Goals of protection Protecting general objects Example: file protection in Linux.
19.1 Silberschatz, Galvin and Gagne ©2003 Operating System Concepts with Java Chapter 19: Security The Security Problem Authentication Program Threats.
Security strategy. What is security strategy? How an organisation plans to protect and respond to security attacks on their information technology assets.
Security A system is secure if its resources are used and accessed as intended under all circumstances. It is not generally possible to achieve total security.
The Internet Worm Crisis and Aftermath Miyu Nakagawa Cameron Smithers Ying Han.
Lecture 11, : The Internet, Summer : The Internet Lecture 11: Secure services David O’Hallaron School of Computer Science and Department.
Information Networking Security and Assurance Lab National Chung Cheng University 1 A Real World Attack: wu-ftp.
Information Networking Security and Assurance Lab National Chung Cheng University 2004/03/031 A Real World Attack: wu-ftp Cao er kai ( 曹爾凱 )
Internet Relay Chat Chandrea Dungy Derek Garrett #29.
1 Chap 10 Malicious Software. 2 Viruses and ”Malicious Programs ” Computer “Viruses” and related programs have the ability to replicate themselves on.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Basic Security Networking for Home and Small Businesses – Chapter 8.
Chapter 15: Security (Part 1). The Security Problem Security must consider external environment of the system, and protect the system resources Intruders.
1. 2 What is security? Computer Security deals with the prevention and detection of, and the reaction to, unauthorized actions by users of a computer.
1 Lecture 7 Security Problems and Virus 2 Contents u How things go wrong u Change in environment u Bound and syntax checking u Convenient but dangerous.
Attacks Let us start by looking at traditional attack types. Address spoofing (=cheating) This is a set of attacks where the attacker sets to IP or TCP.
The Truth About Protecting Passwords COEN 150: Intro to Information Security Mary Le Carol Reiley.
Lecture 14 Page 1 CS 236 Online Worms Programs that seek to move from system to system –Making use of various vulnerabilities Other performs other malicious.
Viruses & Destructive Programs
More Network Security Threats Worm = a stand-alone program that can replicate itself and spread Worms can also contain manipulation routines to perform.
Implementing a Port Knocking System in C Honors Thesis Defense by Matt Doyle.
Administrative: Objective: –Tutorial on Risks –Phoenix recovery Outline for today.
CIS 450 – Network Security Chapter 7 – Buffer Overflow Attacks.
Hacker’s Strategies Revealed WEST CHESTER UNIVERSITY Computer Science Department Yuchen Zhou March 22, 2002.
Cracking Techniques Onno W. Purbo
Security CS Introduction to Operating Systems.
©Ian Sommerville 2004Software Engineering Case Studies Slide 1 The Internet Worm Compromising the availability and reliability of systems through security.
Crisis And Aftermath Eugene H. Spafford 이희범.  Introduction  How the worm operated  Aftermath Contents.
4061 Session 26 (4/19). Today Network security Sockets: building a server.
Malicious Software.
Computer virus Speaker : 蔡尚倫.  Introduction  Infection target  Infection techniques Outline.
The Internet Worm Incident Eugene H. Spafford  Attack Format –Worm vs. Virus  Attack Specifications –Worm operation –Infection and propagaion  Topics.
Lecture 14 Page 1 CS 236 Online Worms Programs that seek to move from system to system –Making use of various vulnerabilities Other performs other malicious.
Databases Kevin Wright Ben Bruckner Group 40. Outline Background Vulnerabilities Log File Cleaning This Lab.
Week-14 (Lecture-1) Malicious software and antivirus: 1. Malware A user can be tricked or forced into downloading malware comes in many forms, Ex. viruses,
Giảng viên hướng dẫn : Sinh viên : Hoàng Xuân Nhật Huy Nguyễn Nam Tiệp.
Botnets A collection of compromised machines
Chapter 9 Intruders.
The Internet Worm Compromising the availability and reliability of systems through security failure.
Malware and Computer Maintenance
Onno W. Purbo Cracking Techniques Onno W. Purbo
Malware Short for malicious software and is typically used as a
Hacking Unix/Linux.
Viruses and Other Malicious Content
Worms Programs that seek to move from system to system
Botnets A collection of compromised machines
Chap 10 Malicious Software.
A Distributed DoS in Action
Internet Worms, SYN DOS attack
Security.
Chapter 9 Intruders.
King Saud University- College OF Applied Studies
Lecture 3: Secure Network Architecture
Security.
Chap 10 Malicious Software.
King Saud University- College OF Applied Studies
Operating System Concepts
Crisis and Aftermath Eugene H. Spafford
Presentation transcript:

Crisis and Aftermath Morris worm

Index What is Worm 4 Exploited flaws Component Algorithm Aftermath Morris Worm 4 Exploited flaws finger sendmail remote shell password Component Algorithm Vector program Seeking another victim Cracking password Avoiding detection Mistakes Aftermath

What is worm? Self replicating, designed to spread through the network. Data modification System overload Steal information What is different from Virus and Trojan horse? Virus need executable file to infect and spread. Trojan horse opens a backdoor while pretending as useful program.

Morris worm First internet worm ever made at 1998. Could only infect DEC VAX machines running 4BSD, and Sun-3 systems. Original purpose was to measure the size of internet. One mistake caused huge chaos all over the network. 6000 computers were infected. Which is about 10% of computers connected to network at that time. The U.S. Government Accountability Office put the cost of the damage at $100,000–10,000,000.

4 Exploited flaws - finger Originally used to obtain information of other users. Use flaws of C library to overflow input buffer. ex: gets() Writes 536 bytes to override finger buffer’s 512 byte. 24 bytes end up overwriting return address. Resulting in invoking a remote shell and executing privileged commands. Since it was unable to determine victim’s OS. Sun crashed instead.

4 Exploited flaws - sendmail Designed to send message between processes. Use DEBUG command to send a shell script and execute on the host. In normal mode it is not possible to do so. But debug option is left turned on for convenience. debug mode로 컴파일 하는 것?

4 Exploited flaws - remote shell UNIX uses trusted login to avoid typing password again and again. Look for remoted machine login list and assume reciprocal trust to find appropriate target. If A trusts B, B trusts A.

4 Exploited flaws - Password Accessing through figerd only allows you to run in daemon. Encrypted password file is readable but it’s not easy to decrypt. But, comparing the encrypted possible words with password file is possible. Dictionary attack to discover the password.

Component Vector program Main Program 99 lines in C code Downloads main program Main Program Retrieve information Look for other machines to attack.

Vector program 1. Socket is established for the vector program. 2. Vector program gets installed and executed via TCP connection(infected via rsh or finger) or SMTP(infected via sendmail) connection. 3. Connect to server worm to download following three files Sun 3 binary version worm VAX version worm Vector program source code 4. Running vector become a shell and tries to compile each received files. 5. Server closes the connection if host is infected. 1번은 remote랑 finger만 해당 5번에서는 추가적으로 작업 더 함

Seeking another victim 6. Gather information about connection and creates list for connected local machines. 7. Randomize list and use telnet or rexec port to determine reachability. 8. Tries to infect target with one of three methods a. rsh b. finger c. sendmail 8. 하나라도 성공하면 그만둠. 여기서 리니어를 사용해서 뭔가 전문성이 떨어짐.

Cracking password 9. Tries to break password and goes back to step 7 if it fails. a. Find the names of equivalent host and add account & password file into internal data structure. b. Attempt to broke user password with some guess like no password or toying with account name. c. Try password with words in internal dictionary. d. Try UNIX online dictionary. 10. Attempt to break into remote machines where user had accounts. a. Use account name from 9.a and cracked password to create remote shell. b. Use local user name and password to try rsh command. five state 라고도 한다. d는 다른 것이 모두 다 실패해야만 시행.

Avoiding detection Server disconnects from vector program if it does not send same magic number as before. After attempt to compile main worm: Fail: Delete all object files. Success: Kills its parents, read all the worm binary files into memory, encrypt it and delete it. Sometimes it kills itself and kills its parent. 한 프로세스가 CPU 오래차지하는 것처럼 보이는 것을 피하고 priority 높이기 위함. 하지만 완벽하지 않음. 버클리에 의심을 두기 위함이라는 말도 있다.

Mistakes Worms meet in predetermined TCP socket and randomly set pleasequit variable to 1 to avoid multiple worms run on same machine. However, worm does not quit until step 9.c Some fails to connect due to heavily loaded machines. Critically one out of seven worm become immortal and does not look for other worms to avoid fake worm’s signal. So it overwhelmed victim’s computer with multiple worms. Causing serious problems. It was supposed to send packet to ernie.berkeley.edu but it failed due to wrong code. 버클리에 의심을 두기 위함이라는 말도 있다.

Aftermath It did not Delete system's files, modify existing files, install trojan horses, record or transmit decrypted passwords, capture superuser privileges, etc…. However huge overload due to multiple worm caused chaos. Robert T. Morris get caught and sentenced to three years probation, 400 hours of community service, and a fine of $10,050 plus the costs of his supervision.