Unformatted text preview:

OutlinesMobile Malcode OverviewMalicious SoftwareTrapdoors (Back doors)Logic BombTrojan HorseZombieSlide 8VirusesSlide 10Virus OperationAnatomy of a VirusStructure of A VirusVirus CompressionVirus Infectables I -- MacrosVirus Infectables (cont’d)Variable VirusesVirus Detection/EvasionMore on Virus DetectionSlide 20Virus RecoveryHistory of VirusesFirst Wild Viruses Apple I/II/III: 1981First PC Virus: Pakistani Brain Virus (1986)Destructive Virus: Chernobyl (1998)Early Macro Virus: Melissa (1999)Slide 27Worms+Slide 30External Target Lists: Metaserver WormsHow Fast Are Metaserver Worms?Internal Target Lists: Topological InformationHow Fast are Topological Worms?Passive WormsSlide 36Slide 37ActivationSlide 39Slide 40Slide 41Slide 42PayloadsSlide 44Slide 45Some Major WormsThe Spread of the Sapphire/Slammer SQL WormHow Fast was Slammer?Why Was Sapphire Fast: A Bandwidth-Limited ScannerBackup SlidesFred Cohen’s Work: 1983Early Mail Virus: Happy99 (1999)Morris WormOutlinesMobile malcode OverviewVirusesWormsMobile Malcode OverviewMalicious programs which spread from machine to machine without the consent of the owners/operators/usersWindows Automatic Update is (effectively) consensual Many strains possibleVirusesWormsCompromised Auto-updates•No user action required, very dangerousMalicious SoftwareTrapdoors (Back doors)Secret entry point into a programAllows those who know access bypassing usual security procedures, e.g., authenticationsHave been commonly used by developersA threat when left in production programs allowing exploited by attackersVery hard to block in O/SRequires good s/w development & updateLogic BombOne of oldest types of malicious softwareCode embedded in legitimate programActivated when specified conditions metE.g., presence/absence of some fileParticular date/timeParticular userParticular series of keystrokesWhen triggered typically damage systemModify/delete files/disksTrojan HorsePrograms that appear to have one function but actually perform another. Modern Trojan Horse: resemble a program that the user wishes to run6- usually superficially attractiveE.g., game, s/w upgrade etc When run performs some additional tasksAllows attacker to indirectly gain access they do not have directlyOften used to propagate a virus/worm or install a backdoorOr simply to destroy dataZombieProgram which secretly takes over another networked computerThen uses it to indirectly launch attacksOften used to launch distributed denial of service (DDoS) attacksExploits known flaws in network systemsOutlinesMobile malcode OverviewVirusesWormsDenial of Services AttacksVirusesDefinition from RFC 1135: A virus is a piece of code that inserts itself into a host, including operating systems, to propagate. It cannot run independently. It requires that its host program be run to activate it.On executionSearch for valid target files•Usually executable files•Often only infect uninfected filesInsert a copy into targeted files•When the target is executed, the virus starts runningOnly spread when contaminated files are moved from machine to machineMature defenses available1988: Less than 10 known viruses1990: New virus found every day1993: 10-30 new viruses per week1999: 45,000 viruses and variantsSource: McAfeeVirus Operationvirus phases:dormant – waiting on trigger eventpropagation – replicating to programs/diskstriggering – by event to execute payloadexecution – of payloaddetails usually machine/OS specificexploiting features/weaknessesAnatomy of a VirusTwo primary componentsPropagation mechanismPayloadPropagationMethod by which the virus spreads itself.Old days: single PC, transferred to other hosts by ways of floppy diskettes.Nowadays: Internet.Structure of A VirusVirus() { infectExecutable(); if (triggered()) { doDamage(); } jump to main of infected program;}void infectExecutable() { file = choose an uninfected executable file; prepend V to file; }void doDamage() { ... }int triggered() { return (some test? 1 : 0); }Virus CompressionVirus Infectables I -- MacrosUsually executable files: .com, .exe, .batMacro code attached to some data file Interpreted by program using fileE.g., Word/Excel macrosEspecially using auto command & command macrosCode is now platform independent Is a major source of new viral infectionsBlur distinction between data and program filesClassic trade-off: "ease of use" vs "security”Have improving security in Word etc Are no longer dominant virus threatVirus Infectables (cont’d)System sector virusesInfect control sectors on a disk•DOS boot sectors•Partition (MBR) sectorsSystem sector viruses spread easily via floppy disk infections Companion virusesCreate a .com files for each .exe filesDOS runs COM files before EXE files Relatively easy to find and eliminate Cluster virusesChange the DOS directory info so that directory entries point to the virus code instead of the real programEven though every program on the disk may be "infected“, there is only one copy of the virus on the diskVariable VirusesPolymorphic virusesChange with each infection•Executables virus code changing (macros: var name, line spacing, etc.)•Control flow permutations (rearrange code with goto’s)Attempt to defeat scannersVirus writing tool kits have been created to "simplify" creation of new virusesCurrent tool kits create viruses that can be detected easily with existing scanner technology But just a matter of time …Virus Detection/EvasionLook for changes in sizeCheck time stamp on fileLook for bad behaviorFalse alarm proneLook for patterns (byte streams) in virus code that are uniqueLook for changes in file checksumCompression of virus and target codeModify time stamp to originalDo bad thing insidiouslyChange patterns – polymorphismRearrange data in the fileDisable anti-virus programsMore on Virus DetectionScanningDepend on prior knowledge of a virus Check programs before executionNeed to be regularly updated Integrity Checking Read entire disk and record integrity data that acts as a signature for the files and system sectors Use cryptographic computation technique instead of simple checksumMore on Virus


View Full Document

NU MSIT 458 - Mobile malcode Overview

Documents in this Course
Snort

Snort

25 pages

Hacked

Hacked

23 pages

Hacked

Hacked

6 pages

Firewalls

Firewalls

52 pages

Load more
Download Mobile malcode Overview
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Mobile malcode Overview and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Mobile malcode Overview 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?