malware. 2 inhoud historisch overzicht malware soorten malware (+ werking) virus, worm, trojan,...

43
Malware

Upload: elke-christiaens

Post on 14-Jun-2015

225 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

Malware

Page 2: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

2

Inhoud

Historisch overzicht Malware Soorten Malware (+ werking)

Virus, Worm, Trojan, botnet Andere Terminologie

Exploit, Payload, Zero-day Attack, Hoax, Phishing

Virusverspreiding en anti-virus Opdracht week 1 proftaak

Page 3: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

3

1982

ELK CLONER:THE PROGRAM WITH A PERSONALITY

IT WILL GET ON ALL YOUR DISKSIT WILL INFILTRATE YOUR CHIPSYES IT’S CLONER!

IT WILL STICK TO YOU LIKE GLUEIT WILL MODIFY RAM TOOSEND IN THE CLONER!

Page 4: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

4

1982 Apple II virus

Elk Cloner: The program with a personality

IT WILL GET ON ALL YOUR DISKSIT WILL INFLILTRATE YOUR CHIPSYES IT’S CLONER

IT WILL STICK TO YOU LIKE GLUEIT WILL MODIFY RAM TOOSEND IN THE CLONER

1983, Fred Cohen:

Formal definition of Computer Virus:

A program that can infect other programs by modifying them to include a, possibly evolved, version of itself

1986, Brain: first DOS virus

Welcome to the Dungeon.

BRAIN COMPUTER SERVICES

Beware of this VIRUS…

Contact us for vaccination…$#@%$@!!

Page 5: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

5

Virus Eras 1986-

Years Virus type Outbreak speed

1986-1995

Boot virus

One year

1995-1999

Macro virus

One month

1999- Email worm

One day

2001- Network worm

One hour

Page 6: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

6

Huidige situatie

Trojaanse paarden Wormen Botnets Phishing Mobiele apparatuur

Page 7: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

Het virus

Page 8: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

8

Virussen

File(infector)virus (.com, .exe) Bootsectorvirus Macrovirus Mobile virus

Page 9: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

9

Wat is een virus? Een programma… Dat zichzelf copieert… Meestal zonder dat de gebruiker het merkt.

Kenmerken: Copieert code Verbergen code Payload Trigger Blijft op 1 systeem Vereist gebruikersinteractie om zich voort te planten

Page 10: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

10

Kenmerken virus

1. Hoe komt het virus op het systeem?

2. Waar nestelt het virus zich?

3. Hoe wordt het virus getriggerd en actief?

4. Wat is de pay-load van het virus?

5. Hoe voorkomt het virus herkenning?

Page 11: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

11

Kenmerken virus:2. Waar nestelt het virus zich?

ExecutablesHet virus embed zichzelf in executable code of zorgt dat het ipv executable wordt gestart.

Bootsector (bijv. MichelAngelo-virus ‘91)Het virus zit in het opstart gedeelt van een disk.

Document filesHet virus hecht zich aan uitvoerbare gedeeltes binnen een document (macro’s).

GeheugenHet virus nestelt zich in het geheugen (memory-resident virus), vaak via een van bovengenoemde manieren.

Page 12: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

12

Infectie van executables

Companion infectieVirus in file met bestaande naam, maar andere extensie. Virus wordt gestart ipv orginele file. Bijv. Virus in notepad.com ipv notepad.exe.

Overwriting infectieDe lompe manier, virus overschrijft orginele file. Bijv. Notepad.exe is na infectie het virus.

Prepending infectie (bijv. Nimda 2001) Appending infectie (bijv. Appix 2002)

Page 13: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

13

Kenmerken virus:3. Hoe wordt het virus getriggerd en actief?

Openen email (email script in werking)

Openen email-attachment (bijv. executable)

Floppy in systeem Openen web-site

(Bijv. XSS: cross-site scripting) Openen/starten geinfecteerde file

Page 14: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

14

Kenmerken virus:4. Wat is de pay-load van het virus?

Werking systeem beinvloeden:- Crashen- Overbelasten systeem / netwerk- Wissen informatie- UI veranderen

Data aanpassen- Stelen- Aanpassen

Voortplanten- andere files infecteren- via email (adresboek)

Page 15: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

15

Kenmerken virus:5. Hoe voorkomt het virus herkenning?

Stealthing- “hidden” attribute- stream companion virus- .exe extensie verbergen- een schone versie naar virus scanner presenteren

Poly-Morphisme: Dynamisch veranderen van uiterlijk bij propagatie:- aanpassen namen in code variabelen en procedures- volgorde van instructies aanpassen- instructies toevoegen die niks doen (+1-1, NOP-operaties)- encrypten code met veranderende sleutels, code decrypt eerst

Meta MorphismeZelfde als poly-morphisme, maar functionaliteit wijzigt ook.

Anti-virus deactivatieVoorbeelden ProcKill-Trojan, MTX-worm

Page 16: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

De worm

Page 17: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

17

Wat is een worm?

Een zelfstandig programma… Dat een virus is… Maar geen host nodig heeft

Kenmerken: Self-replicating Self-propagating

Page 18: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

18

Worm vs. Virus

Page 19: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

19

Worm Voorbeelden

1st wormMorris (1989)

Bekende wormenILoveYou/Loveletter, Code Red, Sasser, Blaster, Nimda

Recente worm: Storm Worm

Page 20: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

20

Worm componenten

Page 21: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

21

De warhead: gaining access

Via exploits zoals buffer overflows Via file-sharing Via email Via default of voorspelbare wachtwoorden Via achterdeurtjes

Page 22: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

22

De Propagation engine: verspreiding van de worm-code

Protocollen die in gebruik zijn

Of worm opent de deur voor protocollen.

Bijvoorbeeld: FTP HTTP SMB TCP/IP

Page 23: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

23

Target Selection Algorithm:nieuwe slachtoffers vinden

Email adressen Host lijsten (/etc/hosts, LMHOSTS) Network neighborhood DNS queries IP adressen

Page 24: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

24

Scanning engine:Welke potentiele slachtoffers zijn kwetsbaar?

Scannen op gebruikte exploits: Windows versies Applicaties Openstaande poorten

Page 25: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

25

Worm opdrachtje

Bestudeer de werking van de storm worm (2007):

Hoe werkt de Warhead?

Hoe werkt de propagation engine?

Wat voor target selection algorithm is er?

Wordt er gescand op vulnerabilities?

Wat is de payload van de worm?

Page 26: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

De Trojan

Page 27: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

27

Wat is een trojan?

Een programma… Dat iets slechts doet… Als ‘bonus’ bij wat je verwacht… Wordt in feite dus via social engineering

binnengehaald

Eigenschappen: Plant zich niet voort

Page 28: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

28

Opbouw trojan

Trojan bestaat uit: Dropper (legitieme applicatie + virus/worm) Eventueel een:

Time Bom Logical Bomb

Payload

Page 29: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

29

Verschillende Typen trojans: op basis van payload Remote Access (RATs) Email Sending Data Destructive (of cryptoviral extortion) Proxy trojan (disguising others as the infected

computer) FTP trojan (adding or copying data from the infected

computer) security software disabler denial-of-service attack (DoS) URL trojan (redirecting the infected computer to

expensive dial-up internet access)

Page 30: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

30

Voorbeelden

1st trojanMichelAngelo (1991): Trojan met virus

Bekende trojansBack orifice, netbus, sub7

Recente trojansformat.A (PSP), mitglieder

Page 31: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

De Hoax

Page 32: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

32

Wat is een hoax?

Waarschuwing voor een virus… Met veel onrust tot gevolg… Als je niks doet

Eigenschappen: Als het veel geluk belooft Of geld van Bill Gates Dan is het waarschijnlijk een hoax

Page 33: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

Het Botnet

Page 34: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

34

Wat is een Botnet?

Netwerk van overgenomen systemen… Waarbij poort wordt geopend naar buitenwereld… Aangestuurd door centraal systeem… Met als doel: Spam, DDos, identity Theft

Eigenschappen: Werkt door enorme schaal waarop Gebruikt malware om doel te bereiken: virus, trojan,

spyware, etc.

Page 35: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

Virus verspreiding

Page 36: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

36

Virusverspreiding(1)

De verspreiding van Code Red:

verspreiding op 19 juli 2001

Page 37: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

37

Virusverspreiding(2)

Verspreiding hangt af van:- Patching systemen

Denk aan 0-day attack waarbij nog geen patch beschikbaar is.

- Gewenste verspreidingsgraad makers Low-profile verspreiding valt minder op.

- Beveiliging netwerken en systemenAnti-virus (signatures ge-update?), Firewall (rules ge-update?)

Page 38: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

Anti-Virus

Page 39: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

39

Wat is anti-virus software?

Anti-virus software zijn computer programma’s die malware proberen te identificeren, tegen te werken, uit te schakelen en te verwijderen.

Anti-virus gebruikt hiervoor 2 technieken:- Scannen van filesysteem op aanwezigheid van

bekende malware op basis van definities in virus-database

- Identificeren van verdacht gedrag van computerprogramma’s dat duidt op infectie

Page 40: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

40

Anti-virus: Waar?

User workstations File Servers

Central Detection of user files Mail Servers

Scan email before delivery Application Servers

Might interfere with system stability? Border Firewalls

Scan email, webbrowsingcontent, worms Handhelds

Page 41: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

41

Anti-virus: Hoe?Scannen van filesysteem: Virus signatures

Identificeren van verdacht gedrag: Heuristics: attempts to

- access boot sector- locate all documents in current folder- write to an .exe file- delete hard-drive contents- set-up connection on unused port- execute stack-memory

Integrity verificationControle of bepaalde files (bijvoorbeeld kernel) onverwacht zijn gewijzigd; Status van (deel)systeem vastleggen door:- checksums- hashcodes

Detectie eventueel via sandboxes

Page 42: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

42

Detectie van malware, en nu?

Antivirus software kan na detectie de volgende maatregelen nemen:

File repareren door virus te verwijderen File in quarantaine Verwijderen geïnfecteerde file Lopende malware processen uit geheugen

verwijderen

Page 43: Malware. 2 Inhoud Historisch overzicht Malware Soorten Malware (+ werking) Virus, Worm, Trojan, botnet Andere Terminologie Exploit, Payload, Zero-day

43

Opdracht proftaak week 1

Verzin d.m.v. brainstorm nieuwe malware met specifieke kenmerken.Beschrijf per type malware: Hoe komt de malware het systeem binnen? Waar nestelt de malware zich? Wat is de pay-load van de malware? Hoe wordt de payload van de malware getriggerd en actief? Hoe voorkomt de malware herkenning? Hoe worden nieuwe slachtoffers geselecteerd? Wat is de impact van de malware op het geïnfecteerde systeem? Wat is de impact van de malware op de gebruikers en de

gebruikersorganisatie?

Zie eventueel ook de kopieën van H3.Worms uit het boek Malware, fighting malicious code