Windows User Group - Slovak Republic
Windows User Group - Slovak Republic Windows User Group - Slovak Republic
RSS
Windows User Group - Slovak Republic
prihlásenie
meno login
heslo
Automaticky prihlásiť
zabudli ste heslo?
zaregistrujte sa

kalendár podujatí
september 2021 október 2021 november 2021
po ut st št pi so ne
27 28 29 30 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
dnes 28.10.2021 dnes 28.10.2021

kto je online?
počet anonymných užívateľov: 2
počet prihlásených užívateľov: 0

Top 10 najčítanejšie
1.Vytvorenie USB boot jed...
2.Oprava MBR sektoru bez ...
3.Windows 7 download
4.HTPC alebo ako si posta...
5.Konzole pro zotavení v...
6.Windows 7 RC v slovenč...
7.Platené vs Zadarmo
8.Inštalujte Windows z U...
9.Panika menom Conficker
10.Windows 7 RC download -...

Windows User Group - Slovak Republic

Jak jsem lovil Sinoval
Windows User Group - Slovak Republic
Bezpečnosť > Ze života

Jak jsem lovil Sinoval

Windows User Group - Slovak Republic

V nedávné době jsem se "osobně" střetl s malwarem jménem Sinoval, jež patří mezi havěť infikující hlavní zaváděcí sektor disku (Master Boot Record). Samotná procedura odstranění škůdce není příliš zajímavá a není to důvod, proč píši tento článek. Na tomto incidentu lze však ukázat typické vlastnosti a projevy systému, infikovaného kvalitním rootkitem.


Škůdci infikující hlavní zaváděcí sektor (či první sektor média pro ukládání dat) se vyskytovali v dobách, kdy se data běžně přenášela na disketách. S nástupem novějších verzí operačního systému Microsoft Windows a s upouštěním od používání disket také ubývalo virů tohoto typu. Nová vlna se objevila před několika lety, kdy jistá výzkumná skupina publikovala článek (včetně zdrojového kódu) o možnosti infekce hlavního zaváděcího sektoru disku s nainstalovaným systém Windows. Protože kód hlavního zaváděcího sektoru se vykonává ještě před vlastním zavedením operačního systému do paměti, získává malware značnou výhodu.

Infikovaný hlavní zaváděcí sektor zajistí rootkitu kontrolu nad samotným procesem načítání operačního systému. Rootkit ve většině případů modifikuje diskové služby BIOSu tak, že může modifikovat libovolná data, která jsou z disku přečtena. Čtená data (jedná se o ovladače jádra OS) modifikuje tak, aby zůstal skryt i po dobu běhu vlastního systému. Další "výhoda" spočívá ve faktu, že rootkit nemusí být uložen v žádném souboru na disku, stačí infikovaný hlavní zaváděcí sektor a několik prázdných sektorů disku. Tím jsou vyloučeny ze hry některé antiviry. Jádro operačního systému je modifikováno, aby většina komponent nemohla zjistit, že hlavní zaváděcí sektor je infikován. Tím je neviditelný plášť dokončen a malware se může plně věnovat své podvratné činnosti.

V předchozích odstavcích jsem zlehka popsal princip fungování rootkitů modifikujících hlavní zaváděcí sektor. Nyní se podívejme na detaily mého příběhu.

Sinoval.C infikoval relativně starý stolní počítač, aniž by vzbudil jakoukoli pozornost programu Avira AntiVir. Pravděpodobně se jednalo o nějakou tehdy neznámou variantu nebo byla infekce provedena zneužitím zranitelnosti prohlížeče.

Počítač byl periodicky kontrolován výše zmíněným programem od Aviry a nástrojem Rootkit Unhooker LE v3.7. Bohužel tato starší verze Rootkit Unhookeru nedetekuje skrytě vykonávaný kód, tudíž nebylo nic objeveno. Antivirus byl vyřazen pláštěm neviditelnosti, který kolem sebe Sinoval rozprostřel.

Naštěstí rootkit nebyl napsán bezchybně, občas docházelo k selháním systému a k nepopulárním modrým obrazovkám. Modrým obrazovkám jsem zpočátku nepřikládal valného významu, přisuzoval jsem jejich vznik zastaralosti ovladače skeneru. Při zběžné analýze jednoho crash dumpu (výpis stavu paměti při selhání sytému) jsem však pojal podezření. Systém selhal s následujícíc chybou:

 

DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1)
An attempt was made to access a pageable (or completely invalid) address at an interrupt request level (IRQL) that is too high. This is usually caused by drivers using improper addresses. If kernel debugger is available get stack backtrace. Arguments:
Arg1: 00000004, memory referenced
Arg2: 00000002, IRQL
Arg3: 00000001, value 0 = read operation, 1 = write operation
Arg4: 84677a41, address which referenced memory

 

Tato chyba se často vyskytuje na strojích s vadnými paměťmi či ovladači. Podivný je čtvrý parametr, který obsahuje adresu instrukce, jenž selhání vyvolala. Adresy tvaru 0x84xxxxxx, kde x je libovolná hexadecimální číslice, se nachází v oblasti paměti, kterou jádro a ovladače využívají pro ukládání různých informací. Spustitelný kód by do této oblasti žádný rozumný program neukládal. Rozhodl jsem se tuto teorii ověřit a podíval jsem se na adresy rutin, jež byly volány těsně před selháním (adresy rutin jsou uloženy jako poslední číslo na každém řádku).

 

f4f2a888 84677a41 badb0d00 84e6b2e4 f4f2ad44 nt!KiTrap0E+0x233
WARNING: Frame IP not in any known module. Following frames may be wrong.
f4f2a8f8 84408024 f4f2aacf 00000001 00000000 0x84677a41
f4f2a8fc f4f2aacf 00000001 00000000 00000000 0x84408024
f4f2a900 00000000 00000000 00000000 00000000 0xf4f2aacf

 

Je vidět, že před selháním byly volány dvě rutiny, jejichž kód ležel v podezřelé oblasti. Poslední funkcí volanou před smrtí byla KiTrap0E nacházející se v hlavním modulu jádra (zde značený jako nt), jejímž úkolem je obsluhovat výpadky stránek (při přístupu na neplatnou adresu paměti či na adresu, jejíž obsah je právě uložen ve stránkovacím souboru).

Abych se utvrdil v podezření, podíval jsem se, jaké instrukce se nachází v jedné z rutin ležící v podezřelé oblasti.

84677a41 894104          mov     dword ptr [ecx+4],eax
84677a44 8b8424b4010000 mov eax,dword ptr [esp+1B4h]
84677a4b 8b8c24b0010000 mov ecx,dword ptr [esp+1B0h]
84677a52 8901 mov dword ptr [ecx],eax
84677a54 8b842448010000 mov eax,dword ptr [esp+148h]
84677a5b 3531920000 xor eax,9231h
84677a60 8b8c242c020000 mov ecx,dword ptr [esp+22Ch]
84677a67 8b09 mov ecx,dword ptr [ecx]

Ač se vám to možná nezdá, tyto instrukce vypadají celkem smysluplně - pravděpodobnost, že by se jednalo o náhodná data v paměti, je velmi nízká. Tím bylo podezření na přítomnost rootkitu potvrzeno.

Pak už vše šlo relativně rychle. Zkontroloval jsem antivirem celý počítač. Kontrola nenašla žádný virus. Poté jsem nainstaloval Rootkit Unhooker LE verze 3.8 a ten objevil skrytě vykonávaný kód na adresách v podezřelé oblasti. Říkáte si, jak jsem si tyto symptomy spojil s rootkitem infikujícím hlavní zaváděcí sektor? Naprostou náhodou - podobné příznaky jsem viděl v jednom příspěvku na fóru SysInternals.

Použil jsem prográmek mbr, který potvrdil infekci hlavního zaváděcího sektoru. Infekce byla odstraněna. Po vyléčení začal antivirus okamžitě hlásit přítomnost rootkitu Sinoval.C v dalších sektorech (počítač má tři pevné disky, všechny tři hlavní zaváděcí sektory byly infikovány) - prostě klasická ukázka odstranění pláště neviditelnosti. Vše jsem dal do pořádku několika příkazy fixmbr z Konzole pro zotavení. A tím celý incident skončil.

A jaké z toho všeho plyne poučení? Buďte paranoidní. Antivirus není stoprocentní záruka bezpečnosti. Počítač je třeba kontrolovat i dalšími nástroji jako jsou programy specializované na detekci přítomnosti rootkitů. Jinak může malware zůstat nepozorován po velmi dlouhou dobu (i v řádech měsíců). Ne kažedá havěť zpomaluje počítač tak, že si toho oko uživatele všimne. Tudíž kontrolujte, kontrolujte a ještě jednou kontrolujte! Nečekejte na symptomy.

Windows User Group - Slovak RepublicWindows User Group - Slovak Republic Martin Dráb | pondelok 16. marca 2009 15:18 | Prečítané: 6351 x | hodnotenie: 5/5 |
Windows User Group - Slovak Republic
Windows User Group - Slovak Republic

 
Windows User Group - Slovak Republic
vyhľadávanie

partneri

2 % od Vás pre WUG
2 % od Vás pre WUG

sponzori






Windows User Group - Slovak Republic
Windows User Group - Slovak Republic
Windows User Group - Slovak Republic

Copyright © 2008 Windows User Group Slovensko

Windows User Group - Slovak Republic domov Windows User Group - Slovak Republic o nás Windows User Group - Slovak Republic podujatia Windows User Group - Slovak Republic odkazy Windows User Group - Slovak Republic informačné kanály Windows User Group - Slovak Republic
Windows User Group - Slovak Republic