1 / 42

Rootkits

Rootkits. Miha Pihler , MCSA, MCSE, MCT, CISSP , Microsoft MVP – Windows Security S&T Slovenija d.d. miha.pihler@snt.si b-mihap@microsoft.com. T E Ž AVNOST : 400. Microsoft MVP – Windows Security Svetovalec za varnost SloWUG Community Lead www.slowug.org

ozzy
Download Presentation

Rootkits

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Rootkits Miha Pihler, MCSA, MCSE, MCT, CISSP, Microsoft MVP – Windows Security S&T Slovenija d.d. miha.pihler@snt.si b-mihap@microsoft.com TEŽAVNOST: 400

  2. Microsoft MVP – Windows Security • Svetovalec za varnost • SloWUG Community Lead • www.slowug.org • Gradivo, ki ste ga prejeli je na voljo tudi na www.krneki.net/rootkits • Novejša različica; tudi PPT

  3. Agenda • Uvod • Način okužbe • Delovanje in skrivanje rootkitov • Odkrivanje in odstranjevanje rootkitov • Zaščita pred rootkiti • Zaključek

  4. Uvod • Virusi • Črvi • Spyware • Rootkiti • ... • V preteklosti je bil motiv pogosto zabava • Trenutno je vedno večji motiv denar • Vedno več napadov je naročenih

  5. Uvod • Spremenil se je način razvoja operacijskih sistemov in aplikacij • Spremenile so se navade uporabnikov • Nameščanje popravkov • ...

  6. Agenda • Uvod • Način okužbe • Delovanje in skrivanje rootkitov • Odkrivanje in odstranjevanje rootkitov • Zaščita pred rootkiti • Zaključek

  7. Način okužbe z rootkiti • Programska oprema • Sonny DRM “rootkit” • $sys$... • Symantec “rootkit” • Strojna oprema • BIOS (zaenkrat še večino “proof of concept”) • iPOD-i okuženi z virusom

  8. Način okužbe z rootkiti • Napake v aplikacijah in operacijskih sistemih • Črvi • Blaster • Virusi • Apple • Servisi, ki tečejo s sistemskimi pravicami

  9. Način okužbe z rootkiti (nad.) • Socialni inženiring • Fizični dostop do opreme • “ERD Commander” – Microsoft Windows OS • “Break Sequence” – Usmerjevalniki, IDS, .. • “Single User Mode” – Linux, MAC OS X,...

  10. Agenda • Uvod • Način okužbe • Delovanje in skrivanje rootkitov • Odkrivanje in odstranjevanje rootkitov • Zaščita pred rootkiti • Zaključek

  11. Delovanje in skrivanje rootkitov • x86 Intel • Windows • Linux • Kernel Mode • Obroč 0 • User Mode • Obroč 3 Obroč 3 Obroč 0

  12. Delovanje in skrivanje rootkitov • Komunikacija med obročem 3 in 0 • Gonilniki • API klici in pravica SeDebug • WinDBG

  13. Delovanje in skrivanje rootkitov • Jedrni način delovanja (Kernel Mode) • Rootkit, ki teče kot del jedra ima dostop do celotnega sistema! • “Kernel Hooks” • “DLL injections” • “Runtime patching” • DKOM (Direct Kernel Object Manipulation)

  14. Delovanje in skrivanje rootkitov • “Kernel Hooks” • SSDT (System Serivce Dispatch Table) • Namen kljuk (“hooks”) je, da prestrežejo sistemske klice na določene funkcije (npr. “ZwQuerySystemInformation”) • Rootkit implementira svojo “ZwQuerySystemInformation” funkcijo • Rootkit popravi naslovni prostor funkcije, da ta po novem kaže na funkcijo, ki jo implementira sam • Sedaj lahko filtrira vse odgovore op. sistema

  15. Delovanje in skrivanje rootkitov • “DLL Injections” • Rootkit doda dvoj DLL v AppInt_DLL del registra • Ko aplikacija uporabi User32.dll naloži tudi rootkit • Rootkit s tem dobi dostop do vsega kamor ima dostop aplikacija • Zaupne informacije? • CreateRemoteThread

  16. Delovanje in skrivanje rootkitov • Runtime patching • Poiščemo funkcijo in jo zamenjamo z lastno • Spodnja navodila so za “SeAccessCheck”

  17. Delovanje in skrivanje rootkitov • Runtime patching FAR JMP Funkcija programa Rootkit Odstranjene f. FAR JMP • Prednost rootkita (rootkit MigBot): • Ko je spremenil program ne rabi več teči na računalniku

  18. Delovanje in skrivanje rootkitov • “DKOM” • Spreminjanje žetonov (token) procesom • Primer rootkita: FU in FUTU

  19. Demo FU

  20. Demo Hacker defender

  21. Delovanje in skrivanje rootkitov • Jedrni način delovanja (Kernel Mode) • V tem načinu delovanja se rootkiti lahko skrijejo na veliko načinov • Skrivanje procesov • Skrivanje datotečnega sistema • Skrivanje registrov • Skrivanje TCP/UDP vrat • Jih je težko odkrivati • Ni jih enostavno pisati • Zahteva intimno poznavanje jedra

  22. Delovanje in skrivanje rootkitov • Omrežja • Rootkit v jedrnem načinu • Ima jo dostop do NDIS • Si lahko dodelijo svoj MAC naslov • Si lahko dodelijo svoj IP naslov • Se lahko izognejo osebnemu požarnemu zidu • Tipični primer rootkita je “DeepDoor” in RK_44 • TDI : NDIS • “raw sockets” • Rootkit lahko šifrira svoj promet in se tako skriva pred IDS, IPS, ...

  23. Delovanje in skrivanje rootkitov • Uporabniški način delovanja (User Mode) • Imajo dostop do vseh uporabniških podatkov • Gesla • Spletni naslovi • Številke kreditnih kartic • “Plug-ins” za IE, Firefox, ... • 2 faktorska prijava • Jih je lažje pisati pa tudi odkrivati

  24. Delovanje in skrivanje rootkitov • Rootkiti se lahko skrivajo tudi v strojni opremi • BIOS (zaenkrat predvsem kot “proof of concept”) • Izredno zahtevno pisanje in odkrivanje • Zahteva intimno poznavanje strojne opreme • Nimamo mehanizmov za odkrivanje • Programi proti zlonamerni kodi ne znajo skenirati naprav ;-)

  25. Agenda • Uvod • Način okužbe • Delovanje in skrivanje rootkitov • Odkrivanje in odstranjevanje rootkitov • Zaščita pred rootkiti • Zaključek

  26. Odkrivanje in odstranjevanje rootkitov • Za odkrivanje lahko uporabimo orodja kot so: • RootkitRevealer (RKR) • BlackLight • IceSword • Windows Debugger (WinDBG) • ... • Vsak od omenjenih ima prednosti in slabosti

  27. Odkrivanje in odstranjevanje rootkitov (nad.) • Kako deluje RKR RKR Rootkit API Datotečni sistem

  28. Demo RKR

  29. Odkrivanje in odstranjevanje rootkitov • Rootkiti se prilagajajo na programe za odkrivanje zlonamerne kode • Se znajo skriti pred programi • Jih znajo “napasti” in onemogočiti • Tudi protivirusno zaščito • Igra “kdo bo prvi” • Rootkiti imajo prednost...

  30. Odkrivanje in odstranjevanje rootkitov • “Offline” analiza • Trdi disk • Primerjava datotek v “online” in “offline” načinu • Rootkit ima lahko svoje datoteke na trdem disku šifrirane; lahko imamo težave pri odkrivanju teh tudi v “offline” načinu • Drugi načini skrivanja (npr. “ADS”)

  31. Odkrivanje in odstranjevanje rootkitov • Kako vemo, da smo odkrili vso zlonamerno kodo na okuženem sistemu? • Najboljši (in priporočen) način za odstranjevanje je ponovna namestitev operacijskega sistema • Če smo imeli “srečo” in smo dobili rootkit, ki se skriva v strojni opremi, ponovna namestitev ne bo pomagala...

  32. Odkrivanje in odstranjevanje rootkitov • Priporočila ko sumite, da ste okuženi • Preverite sistem z več programi za odkrivanje rootkitov • Odstranite vse datoteke, ki so jih programi zaznali • Ponovno zaženite sistem in preverite ponovno • Preverite podpise vseh sistemskih datotek • Ne samo .exe, .bat, .com, ... • Orodje, ki ga lahko uporabite je sigverif

  33. Agenda • Uvod • Način okužbe • Delovanje in skrivanje rootkitov • Odkrivanje in odstranjevanje rootkitov • Zaščita pred rootkiti • Zaključek

  34. Zaščita pred rootkiti • Zaščita v globino (“Defense in depth”)! • Preventiva • Bodite previdne katero kodo poganjate na svojem računalniku! • Programi (tudi popravki) naj bodo iz zanesljivega vira in naj bodo podpisani • 64-bit Windows Vista in Longorn

  35. Zaščita pred rootkiti (nad.) • Nameščeni popravki za aplikacije in operacijske sisteme • Vse aplikacije, vsi operacijski sistemi, vse druge napreve (usmerjevalniki, stikala) • Nameščena programska oprema za odkrivanje zlonamerne kode • Protivirusni programi • Učinkovita samo: • če so nameščeni tudi popravki • zadnje definicije

  36. Zaščita pred rootkiti (nad.) • Omejen nabor pravic • Rootkiti, ki delujejo v jedrnem načinu potrebujejo skrbniški dostop za namestitev • Ostale rootkite omejen nabor pravic ne bo motil • Rootkiti, ki lahko delujejo v uporabniškem načinu! • TPM (Trusted Platform Module) • Windows Vista – TPM + BitLocker

  37. Agenda • Uvod • Način okužbe • Delovanje in skrivanje rootkitov • Odkrivanje in odstranjevanje rootkitov • Zaščita pred rootkiti • Zaključek

  38. Zaključek • Vedno bolj pogosto bomo srečevali rootkite; tudi v vsakdanjem življenju • Vedno več naprav je priključenih na internet • Kriminalne združbe dobro služijo s krajo podatkov • Ponujajo veliko denarja za neodkrite napake v operacijskih sistemih in aplikacijah • Prodajajo informacije kot so številke kreditnih kartic

  39. Zaključek (nad.) • Pogoste izjave v medijih • V naše omrežje ni mogoče vdreti • V naše omrežje še nihče ni vdrl • “Can you prove it?”

  40. Q&A • http://www.slowug.org • miha.pihler@snt.si • b-mihap@microsoft.com

More Related