Computer Viruses -Theory and Experiments Dr. Frederick B. Cohen DOD/NBS 7 th Conference on Computer Security Copyright©,1984,Fred Cohen Presented by Swetha.

Slides:



Advertisements
Similar presentations
COSC513 Operating System Research Paper Fundamental Properties of Programming for Parallelism Student: Feng Chen (134192)
Advertisements

COMP6005 An Introduction to Computing Session One: An Introduction to Computing Security Issues.
BP5- METHODS BY WHICH PERSONAL DATA CAN BE PROTECTED Data Protection.
CMSC 414 Computer (and Network) Security Lecture 13 Jonathan Katz.
When you combine NTFS permissions and share permissions the most restrictive effective permission applies. For example, if you share a folder and assign.
Computer Viruses Theory and Experiments By Dr. Frederick B. Cohen Presented by Jose Andre Morales.
Network Security Philadelphia UniversitylAhmad Al-Ghoul Module 5 Program Security  MModified by :Ahmad Al Ghoul  PPhiladelphia University.
Malicious Logic What is malicious logic Types of malicious logic Defenses Computer Security: Art and Science © Matt Bishop.
ITMS Information Systems Security 1. Malicious Code Malicious code or rogue program is the general name for unanticipated or undesired effects in.
________________ CS3235, Nov 2002 Viruses Adapted from Pfleeger[Chap 5]. A virus is a program [fragment] that can pass on malicious code [usually itself]
 Introduction  Fundamentals  Capability Security  Challenges in Secure Capability Systems  Revoking Capabilities  Conclusion.
CS-550 (M.Soneru): Protection and Security - 1 [SaS] 1 Protection and Security.
CSE 830: Design and Theory of Algorithms
Malicious Attacks. Introduction Commonly referred to as: malicious software/ “malware”, computer viruses Designed to enter computers without the owner’s.
CMSC 414 Computer and Network Security Lecture 11 Jonathan Katz.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 7: Advanced File System Management.
November 1, 2004Introduction to Computer Security ©2004 Matt Bishop Slide #6-1 Chapter 6: Integrity Policies Overview Requirements Biba’s models Clark-Wilson.
CMSC 414 Computer and Network Security Lecture 19 Jonathan Katz.
Exploring Microsoft Excel 2002 Chapter 8 Chapter 8 Automating Repetitive Tasks: Macros and Visual Basic for Applications By Robert T. Grauer Maryann Barber.
Video Following is a video of what can happen if you don’t update your security settings! security.
1 Ola Flygt Växjö University, Sweden Malicious Software.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 7: Advanced File System Management.
Operating Systems Protection & Security.
MANDATORY FLOW CONTROL Xiao Chen Fall2009 CSc 8320.
PKCS11 Key Protection And the Insider Threat.
© G. Dhillon, IS Department Virginia Commonwealth University Principles of IS Security Formal Models.
3/16/2004Biba Model1 Biba Integrity Model Presented by: Nathan Balon Ishraq Thabet.
VIRUSES - Janhavi Naik. Overview Structure Classification Categories.
Structure Classifications &
Session 2 - Security Models and Architecture. 2 Overview Basic concepts The Models –Bell-LaPadula (BLP) –Biba –Clark-Wilson –Chinese Wall Systems Evaluation.
1 Chapter 19: Malicious Software Fourth Edition by William Stallings Lecture slides by Lawrie Brown (Modified by Prof. M. Singhal, U of Kentucky)
Computer Viruses Susan Rascati CS30 Section 11 George Washington University.
Directed-Graph Epidemiological Models of Computer Viruses Presented by: (Kelvin) Weiguo Jin “… (we) adapt the techniques of mathematical epidemiology to.
Firewall Technologies Prepared by: Dalia Al Dabbagh Manar Abd Al- Rhman University of Palestine
Scheduling policies for real- time embedded systems.
You Can’t Get There From Here! Prof. Neil Barrett BCS Oxford – 29 th Nov
Telecommunications Networking II Lecture 41f Viruses and Worms.
Biologically Inspired Defenses against Computer Viruses International Joint Conference on Artificial Intelligence 95’ J.O. Kephart et al.
CE Operating Systems Lecture 21 Operating Systems Protection with examples from Linux & Windows.
14.1/21 Part 5: protection and security Protection mechanisms control access to a system by limiting the types of file access permitted to users. In addition,
Malicious Logic and Defenses. Malicious Logic Trojan Horse – A Trojan horse is a program with an overt (documented or known) effect and covert (undocumented.
UT DALLAS Erik Jonsson School of Engineering & Computer Science FEARLESS engineering Integrity Policies Murat Kantarcioglu.
Secure Operating Systems Lesson 4: Access Control.
Viruses a piece of self-replicating code attached to some other code – cf biological virus both propagates itself & carries a payload – carries code to.
VIRUS.
Chapter 19 – Malicious Software What is the concept of defense: The parrying of a blow. What is its characteristic feature: Awaiting the blow. —On War,
METAMORPHIC VIRUS NGUYEN LE VAN.
The world leader in serving science Overview of Thermo 21 CFR Part 11 tools Overview of software used by multiple business units within the Spectroscopy.
MT311 Java Application Development and Programming Languages Li Tak Sing ( 李德成 )
TRUSTED FLOW: Why, How and Where??? Moti Yung Columbia University.
VIRUSES AND SECURITY  In an information-driven world, individuals and organization must manage and protect against risks such as viruses, which are spread.
Sequential Processing to Update a File Please use speaker notes for additional information!
MALICIOUS SOFTWARE Rishu sihotra TE Computer
Malicious Programs (1) Viruses have the ability to replicate themselves Other Malicious programs may be installed by hand on a single machine. They may.
Slide #6-1 Chapter 6: Integrity Policies Overview Requirements Biba’s models Clark-Wilson model.
COMPUTER VIRUSES Computer Technology. What is a Computer Virus? A kind of A kind of Malicious software written intentionallyMalicious software written.
PREPARED BY: MS. ANGELA R.ICO & MS. AILEEN E. QUITNO (MSE-COE) COURSE TITLE: OPERATING SYSTEM PROF. GISELA MAY A. ALBANO PREPARED BY: MS. ANGELA R.ICO.
6/22/20161 Computer Security Integrity Policies. 6/22/20162 Integrity Policies Commercial requirement differ from military requirements: the emphasis.
Lecture 2 Page 1 CS 236 Online Security Policies Security policies describe how a secure system should behave Policy says what should happen, not how you.
Cryptographic Hash Function. A hash function H accepts a variable-length block of data as input and produces a fixed-size hash value h = H(M). The principal.
Operating Systems Protection Alok Kumar Jagadev.
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Operating System Protection Through Program Evolution
COMPUTER VIRUSES Computer Technology.
Learning to Program in Python
CE Operating Systems Lecture 21
Exploring Microsoft Excel
Malicious Program and Protection
Improving Data Security & Protection Using Data Provenance Figure 1
Presentation transcript:

Computer Viruses -Theory and Experiments Dr. Frederick B. Cohen DOD/NBS 7 th Conference on Computer Security Copyright©,1984,Fred Cohen Presented by Swetha

Outline A Computer Virus Prevention of Computer Viruses Cure of Computer Viruses Conclusions Question

A Computer Virus “We define ‘virus’ as a program that can ‘infect’ other programs by modifying them to include a possibly evolved copy of itself.” With the infection property,a virus can spread throughout a computer system or network. Every program that gets infected may also act as a virus and thus the infection grows.

A Simple Virus “V” The following is a pseudo-program that shows how a virus can be written. program virus:= { ; subroutine infect_executable := { loop: file =get_random_executable_file; if first_line_of_file = then goto loop; prepend virus to file; } subroutine do_damage:= { whatever damage is to be done } subroutine trigger_pulled:= { return true if some condition holds } main_program:= { infect _executable; if trigger_pulled then do_damage; goto next;} next: }

r The key property of a virus is its ability to infect other programs,thus reaching the transitive closure of sharing between user. P1 owned by U1 is initially infected. When P1 is run by U2,P2 is infected. When P2 is run by U3,P3 is infected. P1 (U1) [v] P2 (U2) P3 (U3) P1 (U1) [v] P2 (U2) [v] P3 (U3) P1 (U1) [v] P2 (U2) [v] P3 (U3) [v]

q A virus need not be used for evil purposes. q A compression virus could be written to find uninfected executables,compress them upon the user’s permission and prepend itself to them. q Such a virus can save over 50% of the space taken up by the executable files in an average system. q Since it has the infection property,it is still a virus. A sample compression virus could be written as :

program compression_virus:= { ; subroutine infect_executable:= { loop: file = get_random_executable_file; if first_line_of_file = then goto loop; compress file; prepend compression_virus to file; } main_program:= { if ask_permission then infect_executable; uncompress the_rest_of_this_file into tmpfile; run tmpfile; }

Prevention of Computer Viruses Basic Limitations Sharing,transitivity of information flow and generality of interpretation allow a virus to spread to the transitive closure of information flow starting at any given source.

Basic Limitations (Continued...) Infection by Technical Defenses In sharing, virus can spread through By no sharing i.e by Isolationism the interpretation of shared information. In transitivity of information flow By restriction on the transitivity of information flow. In generality of interpretation,information By fixed first order functionality is interpreted as a program by its recipient, system,a system in which no program that interpretation can result in infection. can be altered and information cannot be used to make decisions --cannot be infected. ABC

Partition Models Two limits on the paths of information flow can be distinguished, those that partition users into closed proper subsets under transitivity, and those that don’t. Flow restrictions that result in closed subsets can be viewed as partitions of a system into isolated subsystems. These limit each infection to one partition. This is a viable means of preventing complete viral takeover at the expense of limited isolationism. The Biba integrity model and Bell-LaPadula security model are examples of a policy that can be used to partition systems into closed subsets under transitivity.

Partition Models(Continued…) B-L Model Biba Model + = B-L Model Biba Model Combining Secrecy with Integrity results in a isolationism High ….. Low No Read Read/Write NoWrite Read/Write No Read Read/Write NoWrite Read/Write No Read No Access Read/Write No Access

Flow Models In policies that don’t partition systems into closed proper subsets under transitivity, it is possible to limit the extent over which a virus can spread. The ‘flow distance’ policy implements a distance metric by keeping track of the distance (number of sharings) over which data has flowed. The rules are: D(output) = max(D(input)) D(shared input) = 1+D(unshared input) -Protection is provided by enforcing a threshold above which information becomes unusable.

Flow Models (Continued…) If the threshold is set at 1 and each user (A-E) able to communicate with only the 2 nearest neighbors. A B C D E | X |--- | 1 |---| 0 |---| 1 |---|X | A Distance metric with a Threshold of 1

Cure of Computer Viruses Prevention of computer viruses may be infeasible if widespread sharing is desired. Cure of computer viruses -- by detection and removal of computer virus.

Detection of Viruses program contradictory-virus:= {….. main-program:= { if ~D(contradictory-virus)then { infect-executable; if trigger-pulled then do-damage; } goto next; } The hypothetical decision procedure D is self contradictory, and precise determination of a virus by its appearance is undecidable.

Detection of Viruses (Continued…) Protection from Virus V “PV” program new_run_command : = { file = name_of_program_to_be_executed; if first_line_of_file = then { print “the program has a virus”; exit;} otherwise run file; } “ In general,precise removal depends on precise detection,because without precise detection,it is impossible to know precisely whether or not to remove an object.”

Conclusion Absolute protection is attained by absolute isolationism.But this is unacceptable solution. Precise detection is undecidable,however some methods may be used to limit undetected spreading. Several undecidable problems have been identified with respect to viruses and countermeasures. To be perfectly secure against viral attacks,a system must protect against incoming information flow.

Question In general what strategic plans do you suggest for virus defenses?