Treść książki
Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
Przedinfekcją
Danezasobów
Header
Sekcje
.data
.text
.rsrc
Entry
point
Poinfekcji
LoaderTDL3
Header
Sekcje
.data
.text
.rsrc
Entry
point
Rysunek1.1.Modyfkacjesterownikarozruchowegotrybujądrawtrakcieinfekcjisystemu
TenwzorzecinfekowaniaplikówwykonywalnychwformaciePE–pod-
stawowymformaciebinarnymplikówwykonywalnychibibliotekdynamicz-
nych(DLL)wsystemieWindows–jesttypowydladropperówwirusów,ale
nietakczęstywprzypadkurootkitów.NagłówekPEitabelasekcjisąnie-
odzownedladowolnegoplikuPE.NagłówekPEzawierakrytyczneinfor-
macjeolokalizacjikoduidanych,metadanychsystemowych,rozmiarustosu
itd.,podczasgdytabelasekcjizawierainformacjeosekcjachplikuwykony-
walnegoiichlokalizacji.
Abydokończyćprocesinfekcji,złośliwyprogramnadpisujewpiskata-
logumetadanych.NETwnagłówkuPEtymisamymiwartościamizawar-
tymiwewpisiezabezpieczeńdanychkatalogu.Kroktenzapewnemiałna
celuudaremnienieanalizystatycznejzainfekowanychobrazów,gdyżmoże
wywołaćbłądpodczasparsowanianagłówkaPEprzeztypowenarzędzia
analizyzłośliwychprogramów.Wrzeczysamej,próbyzaładowaniatakich
obrazówpowodowałyawarięIDAProwwersji5.6–bugtenzostałjużna-
prawiony.ZgodniezespecyfikacjąPE/COFFudostępnionąprzezfirmęMi-
crosoftkatalogmetadanych.NETzawieradaneużywaneprzezCommon
LanguageRuntime(CLR)doładowaniaiuruchamianiaaplikacji.NET
.
Jednaktenwpiskataloguniejestistotnydlasterownikówrozruchowych
trybujądra,ponieważwszystkieonesąnatywnymiplikamibinarnymiinie
zawierajążadnegokoduzarządzanegoprzezsystem.Ztegopowoduten
wpiskataloguniejestsprawdzanyprzezprogramładującyOS,pozwala-
jącnazaładowaniezainfekowanegosterownika,choćjegozawartośćjest
nieprawidłowa.
Zauważmy,żetechnikainfekcjiTDL3jestograniczona:działatylko
naplatformach32-bitowychzewzględunazasadępodpisywaniakodu
trybujądrastosowanąprzezMicrosoft,którawymuszaobowiązkowe
sprawdzeniaintegralnościkoduwsystemach64-bitowych.Ponieważ
zawartośćsterownikajestmodyfikowanapodczasinfekowaniasystemu,
Czymjestrootkit:studiumprzypadkuTDL3
7