Mi a RootkitRevealer: Hogyan működik, hogyan kell használni, és a rootkitek jelei

Utolsó frissítés: 22 szeptember 2025
  • A RootkitRevealer eltéréseket észlel a Windows API-k és a nyers adatok között, hogy feltárja a rejtett tartalmakat.
  • Eredmények értelmezése: NTFS metaadatok, beállításjegyzékbeli és fájlrendszerbeli eltéréstípusok.
  • Használja a PsExec parancs -a -c -m -r és távoli végrehajtási opcióit; ez minimális téves riasztást igényel, amikor a rendszer tétlen.
  • Megelőzés és reagálás: Biztonságos rendszerindítás/TPM, offline vizsgálatok, rootkit-ellenes eszközök és ellenőrzött visszaállítás.

Rootkit-észlelő Windows rendszerben

A RootkitRevealer egyike azoknak a legendás segédprogramoknak, amelyeket minden Windows-szakembernek ismernie kell; a Sysinternals csapata fejlesztette ki Mark Russinovich vezetésével, és bár évekkel ezelőtt jelent meg, továbbra is referenciaként szolgál a rootkitek észlelésének megértéséhez. rootkitek által okozott eltérések a rendszer által megjelenített és a lemezen ténylegesen lévő tartalom között.

Más szkennerekkel ellentétben nem keres aláírásokat vagy mintákat: a Windows API magas szintű nézetét összehasonlítja a lemez és a beállításjegyzék nyers, alacsony szintű olvasásával. Ez a látszólag egyszerű ötlet feltárja a rosszindulatú programok lehetőségét, amelyek megpróbálhatják kihasználni a rendszert. fájlok, kulcsok vagy értékek elrejtése csalás a rendszerhívások útján.

Mi az a RootkitRevealer és milyen rendszereken működik?

Ez egy fejlett eszköz a rootkitek jeleinek észlelésére mind a felhasználói mód, mint kernel módbanWindows XP és Windows Server 2003 (32 bites) rendszerekre készült, és általában ingyenesként szerepel, angol nyelven érhető el, mérete körülbelül 231 KB; sok lista azt is jelezte, hogy akkoriban kompatibilis volt a Windows NT/2000/XP/Vista rendszerekkel.

A tisztán parancssori verzióját végül eltávolították, mert néhány rosszindulatú program készítő elkezdte figyelni a futtatható fájl nevét; ennek megakadályozása érdekében a program szolgáltatásként indul el saját magáról egy véletlenszerűen elnevezett másolatból, ami megnehezíti a név szerinti észlelést és a megbízhatóság növelését. 100%-ban konzolos felület.

Mi az a rootkit? Kulcsfogalmak

A rootkit kifejezés olyan technikákra és mechanizmusokra utal, amelyek lehetővé teszik a rosszindulatú programok (vírusok, trójai programok, kémprogramok stb.) elterjedését. elrejtés a felhasználó elől és biztonsági eszközökTöbb család létezik: perzisztens (túléli az újraindítást), memóriarezidens (eltűnik az újraindításkor), felhasználói módú és kernel módú, valamint egyéb modern változatok.

Egy felhasználói módú rootkit képes elfogni olyan függvényeket, mint a FindFirstFile/FindNextFile, vagy a rendszer natív felsorolóit, hogy kiszivárogtassa azokat a bejegyzéseket, amelyek felfednék a fájljaidat, folyamataidat vagy egyéb adataidat. módosított rendszerleíró kulcsokTehát az Intéző, a Parancssor vagy a Beállításszerkesztő nem látja, hogy mi van ott valójában.

A kernel módú rootkitek ennél tovább mennek: a natív API elfogása mellett közvetlenül is manipulálhatják a kernel struktúráit, például eltávolíthatják a folyamatukat az aktív folyamatok listájáról, így nem jelenik meg a Feladatkezelőben vagy a Folyamatkezelőben még ha fut is.

Léteznek hibrid (részben felhasználó-alapú, részben kernel-alapú), firmware-alapú (BIOS/UEFI és egyéb komponensek), rendszerindító vagy bootkitek (MBR/UEFI), virtuális (amelyek a valódi operációs rendszert egy virtuális gépbe helyezik) és memóriás (nem perzisztens) rendszerindító készletek. Ez utóbbiak különösen nehezen hozzáférhetőek lehetnek, míg a firmware és a rendszerindító készletek az operációs rendszer újratelepítése után is megmaradnak. operációs rendszer a nulláról.

Hogyan működik a RootkitRevealer?

Az RKR két pillanatképet hasonlít össze: a Windows API nézetet (magas szint) és a kötet és a rendszerleíró adatbázis struktúráinak nyers olvasását alacsony szinten. Ha egy rootkit magas szintű hívásokkal manipulál valamit, hogy elrejtsen, az a manipuláció kiderül, mert a lemezen és a rendszerleíró adatbázisban lévő tartalom nem egyezik meg azzal, amit az API állít, így keletkezik a hiba. diagnosztizálható eltérések.

Elméletileg egy rootkit megpróbálhatna elrejtőzni a RootkitRevealer elől úgy, hogy lehallgatja annak nyers beolvasásait, és menet közben átírja az adatokat. Ehhez alapos ismeretekre lenne szüksége az NTFS, FAT és a beállításjegyzék formátumairól, és módosítaná a struktúrákat anélkül, hogy következetlenségeket vagy nyilvánvaló mellékhatásokat okozna. nagy technikai bonyolultság amit ritkán figyeltek meg. Ennek ellenére nincs bolondbiztos „univerzális detektor”: még egy külső környezetből indított csizma sem (például a legjobb Linux disztribúciók) speciálisan tervezett eszközökkel szabotálhatók kifinomult és kitartóA gyakorlatban a legmegbízhatóbb megközelítés az online elemzés és az offline ellenőrzés kombinálása megbízható környezetekben.

  Android System SafetyCore: Mi ez, és hogyan hat a telefonjára

Követelmények, bevált gyakorlatok és végrehajtás

A futtatáshoz a fióknak rendelkeznie kell a „Fájlok és könyvtárak biztonsági mentése”, az „Illesztőprogramok betöltése” és a „Kötetkarbantartás” jogosultságokkal (Windows XP és újabb verziók esetén a rendszergazdák alapértelmezés szerint rendelkeznek ezekkel). A téves riasztások minimalizálása érdekében ajánlott a vizsgálatot a következővel futtatni: a rendszer készenléti állapotban van, alkalmazások megnyitása nélkül.

A manuális futtatáshoz egyszerűen nyomja meg a vizsgálat gombot. A folyamat során a program jelentést készít a folyamat előrehaladásáról, és felsorolja az esetleges eltéréseket. Két releváns lehetőség van: „Fájlok elrejtése az NTFS metaadatok elől” (alapértelmezés szerint aktív, az NTFS által rejtett szabványos metaadatok nem jelennek meg) és „Vizsgálati napló” (alapértelmezés szerint aktív; a jelölőnégyzet törlése kihagyja a vizsgálatot). Windows Registry).

Az automatizáláshoz olyan paramétereket támogat, amelyek lehetővé teszik a beavatkozás nélküli indítást, bejelentkezést és kilépést: rootkitrevealer outputfile]. Az opció -a automatikusan elindul és befejeződik; -c az eredményt CSV formátumban kell kiírni; -m megjeleníti az NTFS metaadatokat; és -r letiltja a rendszerleíró adatbázis vizsgálatát. A kimeneti fájlnak egy elérhető helyi kötet.

A PsExec segítségével távoli végrehajtás is lehetséges. Például: psexec \\remote -c rootkitrevealer.exe -a c:\windows\system32\rootkit.log. a -c, a folyamat előrehaladása nem jelenik meg, az eltérések pedig CSV formátumban jelennek meg, ami megkönnyíti az importálást adatbázisokban vagy szkriptekben.

Az eredmények értelmezése és a tipikus eltérések

A „Windows API elől elrejtve” eltérések leggyakrabban akkor fordulnak elő, amikor egy rootkit elrejti a bejegyzéseket. Ha nem engedélyezte az NTFS metaadatok megtekintését, eltéréseket fog látni, mert az NTFS elrejti a belső fájljait az API elől. $MFT vagy $SecureNéhány víruskereső program alternatív adatfolyamokban is tárolja az adatokat, és elrejti azokat, hasonló hibákat okozva.

Íme néhány az NTFS-ben (Windows Server 2003) definiált szabványos metaadatok közül: $AttrDef, $BadClus, $BadClus:$Bad, $BitMap, $Boot, $LogFile, $Mft, $MftMirr, $Secure, $UpCase, $Volume, $Extend, $Extend\$Reparse, $Extend\$ObjId, $Extend\$UsnJrnl, $Extend\$UsnJrnl:$Max, $Extend\$Quota.

Az RKR három forrást korrelál a fájlrendszerben: a Windows API-t, a Master File Table-t (MFT) és a lemezen található könyvtárindexeket. Előfordulhatnak olyan kombinációk, mint a „Látható az API-ban, de nem az indexben vagy az MFT-ben”, a „Látható az MFT-ben, de nem az API-ban” stb., különösen akkor, ha egy fájl létrehozása vagy törlése a vizsgálat során történik, és a következőt eredményezi: időbeli inkonzisztencia ablak.

Példa létrehozásra szkennelés közben: C:\newfile.txt, 8 bájt méretű, a „Látható az API-ban, de nem az indexben vagy az MFT-ben” üzenettel. Ezek az esetek nem feltétlenül rootkitekre mutatnak, hanem egyidejű változások miközben vizsgálják.

Ha a „Hozzáférés megtagadva” üzenetet látja, akkor valami nincs rendben: A RootkitRevealer mechanizmusokat használ bármilyen fájl, könyvtár vagy kulcs eléréséhez, így ennek az üzenetnek normál körülmények között nem szabadna megjelennie. normál végrehajtás.

A beállításjegyzékben számos érdekes eltérés található: „A Windows API hossza nem egyezik a nyers adatokkal” (valószínűleg megpróbálták elrejteni a valódi tartalmat), „Típuseltérés” (pl. a REG_SZ meg van hirdetve, de REG_BINARY), „A kulcs neve beágyazott NULL értékeket tartalmaz” (ismert technika, amely a NULL-lal végződő karakterláncok és a számlálószámmal rendelkező karakterláncok közötti különbséget használja ki). Ez utóbbi esetben a segédprogram RegDelNull a Sysinternals-tól segít a beágyazott NULL-okat tartalmazó kulcsok tisztításában.

„Adateltérések” akkor fordulhatnak elő, ha egy érték megváltozik a vizsgálat során (pl. az SQL Server üzemideje, mint például HKLM\SOFTWARE\Microsoft\Microsoft SQL Server\RECOVERYMANAGER\MSSQLServer\uptime_time_utc). Ellenőriznie kell, hogy az érték a következőhöz tartozik-e: legitim összetevők amelyek valós időben frissítik az adatokat.

Szemléltető eset volt a HackerDefender rootkit: szolgáltatásai és illesztőprogramjai láthatatlanok voltak a Windows API számára, de jelen voltak a rendszerleíró adatbázis nyers olvasásában; ugyanez igaz volt a fájljaira is, amelyeket a fájlrendszer nem vizsgált közvetlenül. igen, észlelhető a lemezen.

Gyakori hibák és problémák a rootkitrevealer.exe fájllal forenzikus környezetekben

Néhány forenzikus készlet (pl. WinTaylor) felsorolja a következőhöz kapcsolódó tipikus hibákat: rootkitrevealer.exe, például: „nem érvényes Win32 alkalmazás”, „nem található”, „alkalmazáshiba” vagy „indítási probléma”. Ezek az üzenetek általában a rendszer telepítése, indításakor vagy leállításakor, illetve más alkalmazásokkal való ütközés miatt jelennek meg. rezidens kérelmek.

A leggyakoribb okok közé tartoznak a hiányzó vagy sérült fájlok, érvénytelen beállításjegyzékbeli bejegyzések, kártevőfertőzések, hiányos eltávolítások vagy ütközések más szoftverekkel. A forrás lehet egy sérült beállításjegyzékbeli bejegyzés, véletlen törlés egy másik eszköz által, sikertelen letöltés vagy egy korábbi fertőzés ami megváltoztatja a bináris kódot.

  Kültéri biztonsági kamerák: A technológia, amely megváltoztatja az otthoni felügyelet játékát

A leltár érdekessége, hogy egyes listák a végrehajtható fájl hozzávetőleges méretét 334 720 bájtként dokumentálják, és hash-ek, például SHA‑1 és MD5 (pl. SHA‑1 d39e8a3fe92adc7d7fbc5293edf8a7b965484a59, MD5 ee738fe9bcdd605821002cec8c7206db) és CRC32 98b1af0b; arra is utalnak, hogy 2.1-es verzió a konténeralkalmazásában és a „Forensic Toolkit/Operációs rendszer” kategória.

Rootkit-észlelési és -elhárítási módszerek

A rootkit-ek észlelése nem mindig triviális. A specifikus eszközökön túl olyan technikákat is kombinálnak, mint az ismert fenyegetések szignatúra-elemzése, a struktúrák hideg-összehasonlítása, a memóriakeresés hookok és módosítások után, valamint a memóriaképek áttekintése összeomlások után, hogy azonosítsák a rootkiteket. gyanús modulokAz is gyakori, hogy támaszkodnak rá megelőző rendszerek (IPS) a hálózat védelme és a fertőzési vektorok csökkentése érdekében.

A speciális segédprogramok közé tartozik a GMER (rejtett folyamatok és kernel-módosítások), a Kaspersky TDSSKiller (különösen a kernel bootkitek és rootkitek), a Malwarebytes Anti-Rootkit, a Microsoft Defender Offline (a Windows indítása előtti vizsgálat) és a RogueKiller. Futtassa őket USB flash meghajtóról. megbízható csomagtartó vagy csökkentett módban csökkenti az elkerülési felületet.

Rendszerindítási vagy firmware-fenyegetések esetén ajánlott mentőmédiát, például Kaspersky Rescue Disk-et használni, az MBR-t pedig a következővel visszaállítani: bootrec /fixmbr adott esetben és súlyos esetekben frissítse/flashelje a BIOS/UEFI-t egy tiszta verzióra a gyártótól a probléma megoldása érdekében alacsony szintű perzisztencia.

A Sysinternals segítségével történő monitorozás aranyat ér: Process Monitor (ProcMon) a folyamatok és fájlok aktivitásának ellenőrzéséhez, Autoruns az indításkor betöltődő fájlok ellenőrzéséhez és Rootkit Revealer magas/alacsony szintű eltérések esetén. SIEM platformok, mint például a Wazuh A vállalati környezetekben a telemetria váratlan hálózati viselkedést vagy integritási változásokat tárhat fel.

Ha a fertőzés megerősítést nyer, az ésszerű lépések a következők: leválasztja a gépet a hálózatról, átvizsgálja a külső környezetet, felméri a rendszerindítási/firmware integritását, és ha nincs garancia, akkor biztonsági másolatot készít az adatokról, teljesen törli a lemezt (például DBAN-nal) és újratelepíti ellenőrzött adathordozóról, lehetővé téve az utólagos intézkedéseket, mint például Biztonságos rendszerindítás és TPM.

Megelőzés: Ésszerű védelem a rootkitek ellen

A megelőzés kulcsfontosságú. Tartsa naprakészen rendszerét, javítsa ki a harmadik féltől származó szoftvereket, kerülje a kétes forrásokból származó futtatható fájlokat, és ne használjon feltöréseket vagy kulcsgenerátorokat: ezek a csomagok népszerű terjesztői. cseppentők és rakodók a rootkitek.

Letiltja az USB automatikus futtatását, a külső meghajtókat megnyitás előtt átvizsgálja, üzleti környezetben pedig korlátozza vagy blokkolja a portokat és érvényesíti azokat. tűzfalak amikor értelmes. Működik privilégiumok nélküli felhasználói fiókokkal, a legkisebb jogosultságok elvét alkalmazza, és rendszergazdai hitelesítő adatokat igényel a kritikus változtatásokhoz, csökkentve ezzel a valószínűségét. csendes mászások.

Kompatibilis hardvereken engedélyezze biztonságos rendszerindítás és az UEFI TPM-je a rendszerindító lánc és a kulcszár védelme érdekében. Rendszeresen készítsen offline vagy megváltoztathatatlan biztonsági mentéseket, és használjon pillanatképeket/visszaállítási pontokat a helyreállítási idő lerövidítésére, ha valami történik. sikerül beosonnia.

A rootkitek telepítése: dropperek, betöltők és vektorok

A támadók gyakran kevert fenyegetésként terjesztik a rootkiteket: egy „dropper”, amely kézbesíti a csomagot, és egy „betöltő”, amely kihasználja a sebezhetőségeket (például a puffer túlcsordulásait), hogy a beültetést oda helyezze, ahová nem kellene. Ez álcázott… adathalász e-mail, hamis telepítők vagy csalárd frissítések.

A klasszikus vektorok közé tartozik az üzenetküldő kliensek eltérítése rosszindulatú linkek terjesztése céljából, trójai szoftverek letöltési portálokon, más rosszindulatú programok használata hordozóként, valamint gazdag tartalmú dokumentumokba (pl. bizonyos PDF-ekbe) beágyazás, amelyek megnyitásakor támadást indítanak el. cseppentő automatikusan.

Támadási jelek és észlelési nyomok

A rootkit célja, hogy „észrevétlen” legyen. Azonban megfigyelhetők a felhasználói beavatkozás nélküli konfigurációs változások, a rejtett forgalom miatti szokatlan hálózati megszakítások, az ismeretlen folyamatok, a le nem állítható szolgáltatások és a biztonsági eszközök. magyarázat nélkül letiltva.

Egy másik támpont az olyan segédprogramok közötti ellentmondó információk, amelyek különböző elérési utakon listázzák a fájlokat, folyamatokat vagy beállításkulcsokat (API vs. nyers olvasás). Itt mutatkoznak meg az olyan megközelítések, mint a RootkitRevealer: ugyanaz az objektum, ami "van" a lemezen, és "nincs" az API számára. manipulációra utal.

  A parancssor megnyitása Windows 10 rendszerben: Teljes útmutató és minden trükk

A rootkitek főbb típusai

Felhasználói mód: Folyamat- és könyvtárszinten működnek. Stabilabbak és viszonylag könnyebben észlelhetők, bár elrejthetnek fájlokat, folyamatokat és kulcsokat. Egy klasszikus történelmi példa: HackerVédelmező.

Kernel mód: A magban élnek, teljes kontrollal és nagyfokú lopakodással; nehéz kiirtani őket, és rosszul megtervezett állapotban instabilitást okozhatnak. Családi példák: TDL/Alureon fejlődésében.

Hibridek: A felhasználói és a kernel komponenseket ötvözik a lopakodás és a stabilitás egyensúlyának megteremtése érdekében, ami népszerűvé teszi őket a támadók körében a... gyakorlati sokoldalúság.

Firmware/Bootkit-ek: Megfertőzik a BIOS-t/UEFI-t vagy a rendszerindító szektort (MBR/UEFI), hogy az operációs rendszer előtt töltsék be. Az olyan technológiák, mint a Secure Boot, számos klasszikus rendszerindító készletet elavulttá tettek, de újak jelentek meg. UEFI implantátumok modern.

Virtuális és memória: A VMBR-ek betöltenek egy hipervizort az operációs rendszer alá és virtualizálják azt; a memóriásak csak a RAM-ban tárolódnak és újraindításkor eltűnnek, ami nagyon hasznos a következőkhöz: rövid távú műveletek.

Példák és kiemelt kronológia

Az 90-es években fejlesztették ki az első SunOS rootkiteket; 1999-ben Greg Hoglund írta le az NTRootkit-et (Windows, kernel mód), majd 2003-ban... HackerVédelmező (Windows 2000/XP, felhasználói mód), ami kötélhúzást váltott ki olyan eszközökkel, mint a RootkitRevealer.

2004-ben az úgynevezett „görög Watergate” egy rootkitet használt, hogy több mint 100 telefont törjön be egy GSM-hálózaton; 2005-ben kiderült, hogy sony bmg Néhány CD-n egy kalózkodás elleni rootkitet is elhelyeztek, ami hatalmas biztonsági vitát váltott ki.

2008 óta olyan bootkitek fejlődtek, mint a TDL (TDL-1-től TDL-4-ig); 2009-ben „Machiavelli” bebizonyította, hogy a macOS (akkoriban Mac OS X) sem immunis; 2010-ben pedig Stuxnet rootkit komponenseket használt iráni ipari rendszerek szabotálására.

2012-ban jelent meg Láng, egy hatalmas moduláris kártevő; 2018-ban LoJax Ez volt az első vadonban észlelt UEFI rootkitek; és 2019-ben... SCRAN a hitelesítő adatok ellopását és a rejtett bevételszerzést kombinálta böngészőalapú kattintásfarmokkal tömegesen elkövetett.

Források és ajánlott olvasmányok

Mark Russinovich kutatása a Sony-ügyről és a Windows IT Pro folyóiratban megjelent „Unearthing Rootkits” (Rootkitek feltárása) című cikke segít megérteni az RKR jelenségét és mögötte álló technikát; Greg Hoglund és Jamie Butler „Rootkits: Subverting the Windows Kernel” (Rootkitek: A Windows kernel felforgatása) című könyve a meghatározó értekezés. mélyebben a témába.

A Phrack Archívum, Peter Szor „A számítógépes víruskutatás és -védelem művészete”, Ed Skoudis és Lenny Zeltser „Malware: Fighting Malicious Code” című művei, valamint a Windows Internals sorozat (a 4. kiadástól kezdődően) nélkülözhetetlen anyagok mindazok számára, akik mélyebben szeretnének elmerülni az architektúrában és a ... komoly ellenintézkedések.

RootkitRevealer a Sysinternals ökoszisztémában

Az RKR más, a vizsgálatokhoz hasznos Sysinternals segédprogramokkal együtt működik: AccessChk és AccessEnum (érvényes jogosultságok), Autoruns (minden, ami a rendszerrel kezdődik), Process Explorer (ki mit nyitott meg és milyen DLL-lel), PsExec/PsTools (távoli végrehajtás és adminisztráció), PsLogList és PsLoggedOn (események és munkamenetek), Sigcheck (digitális aláírások), SDelete (biztonságos törlés), ShareEnum (megosztott erőforrások) és Sysmon (speciális telemetria az eseménynaplóban).

Gyakori, hogy a korábbi adattárakban „Download 1.71” (1.71-es verzió letöltése) hivatkozásokat találunk, a Sysinternals Live-on pedig „Futtatás most” (Run Now) hivatkozásokat. Bár a projekt régi, a mentális modellje – a magas és az alacsony szint összehasonlítása – megmaradt. kulcs a rootkit-vadászathoz.

A RootkitRevealer mindenekelőtt a védekező mérnöki munka leckéje: ha valami manipulálja az API által visszaadott adatokat, akkor alá kell nézni, és össze kell hasonlítani a lemezen és a beállításjegyzékben található adatokkal; bevált gyakorlatokkal, megfelelő eszközökkel és szükség esetén offline ellenőrzéssel feltárható, hogy mi próbál megbújni ott, ahol gondoljuk. senki sem fog nézni.

A legjobb Linux disztribúciók biztonság szempontjából
Kapcsolódó cikk:
A legjobb Linux disztribúciók a biztonság és az adatvédelem védelmére