Kártevőirtó vizsgálati felület (AMSI) integrációja Microsoft Defender víruskeresővel
A következőkre vonatkozik:
- Microsoft Defender XDR
- Microsoft Defender víruskereső
- P1 & P2 Végponthoz készült Microsoft Defender
- Microsoft Defender Vállalati verzió
- Microsoft Defender egyéni felhasználók számára
Platformok:
- Windows 10 és újabb
- Windows Server 2016 és újabb
Végponthoz készült Microsoft Defender a kártevőirtó vizsgálati felület (AMSI) segítségével fokozza a fájl nélküli kártevők, a dinamikus szkriptalapú támadások és más nem célzott kiberfenyegetések elleni védelmet. Ez a cikk az AMSI-integráció előnyeit, az általa támogatott szkriptnyelvek típusait, valamint az AMSI jobb biztonság érdekében történő engedélyezését ismerteti.
Mi az a fájl nélküli kártevő?
A fájl nélküli kártevők kritikus szerepet játszanak a modern kibertámadásokban, és lopakodó technikákat használnak az észlelés elkerülése érdekében. Számos nagy zsarolóprogram-kitörés fájl nélküli módszereket használt a leölési láncok részeként.
A fájl nélküli kártevők olyan meglévő eszközöket használnak, amelyek már megtalálhatók egy feltört eszközön, például PowerShell.exe vagy wmic.exe. A kártevők beszivároghatnak egy folyamatba, kódokat hajthatnak végre a memóriában, és meghívást kaphatnak ezekre a beépített eszközökre. A támadók jelentősen csökkentik a lábnyomukat, és elkerülik a hagyományos észlelési mechanizmusokat.
Mivel a memória változékony, és a fájl nélküli kártevők nem helyezik el a fájlokat a lemezen, a fájl nélküli kártevők használatával történő adatmegőrzés bonyolult lehet. A fájl nélküli kártevők megőrzésének egyik példája egy olyan beállításjegyzék-futtatási kulcs létrehozása volt, amely elindít egy "egysoros" PowerShell-parancsmagot. Ez a parancs egy rejtjelezett PowerShell-szkriptet indított el, amely a beállításjegyzék BLOB-jában lett tárolva. A rejtjelezett PowerShell-szkript tartalmazott egy tükröző hordozható végrehajtható (PE) rakodót, amely betöltött egy Base64 kódolású PE-t a beállításjegyzékből. A beállításjegyzékben tárolt szkript gondoskodott arról, hogy a kártevő továbbra is megmaradhasson.
A támadók számos fájl nélküli technikát használnak, amelyekkel a kártevőimplantátumok lopakodóvá és kitérővé tehetik a kártevőket. Ezek a technikák a következők:
Tükröző DLL-injektálás: A tükröző DLL-injektálás magában foglalja a rosszindulatú DLL-ek manuális betöltését a folyamatmemóriába anélkül, hogy az említett DLL-eknek lemezen kellene lenniük. A rosszindulatú DLL egy távoli, támadó által vezérelt gépen üzemeltethető, és szakaszos hálózati csatornán (például Transport Layer Security (TLS) protokollon) keresztül, vagy rejtvekezett formában, például makrókban és szkriptekben található fertőzési vektorokba ágyazható be. Ez a konfiguráció az operációs rendszer mechanizmusának megkerülésére vezet, amely figyeli és nyomon követi a végrehajtható modulok betöltését. Példa a Reflektív DLL-injektálást használó kártevőkre:
HackTool:Win32/Mikatz!dha
.Memória kiaknázása: Az támadók fájl nélküli memóriakihasználtságokkal futtatnak tetszőleges kódot távolról az áldozati gépeken. Az UIWIX-fenyegetés például a Petya és a WannaCry által is használt EternalBlue biztonsági rést használja a DoublePulsar backdoor telepítéséhez, és teljes egészében a kernel memóriájában (SMB Dispatch Table) él. A Petyával és a Wannacryvel ellentétben az UIWIX nem dob el fájlokat a lemezen.
Szkriptalapú technikák: A szkriptnyelvek hatékony eszközöket biztosítanak a csak a memóriában végrehajtható hasznos adatok továbbításához. A szkriptfájlok olyan kódolt rendszerhéjkódokat vagy bináris fájlokat ágyazhatnak be, amelyeket menet közben visszafejthetnek, és .NET-objektumokkal vagy közvetlenül API-kkal hajthatnak végre anélkül, hogy lemezre kellene írni őket. Maguk a szkriptek elrejthetők a beállításjegyzékben, olvashatnak hálózati streamekből, vagy manuálisan futtathatják a parancssorban egy támadó anélkül, hogy valaha is megérintenék a lemezt.
Megjegyzés:
Ne tiltsa le a PowerShellt a fájl nélküli kártevők blokkolásának eszközeként. A PowerShell egy hatékony és biztonságos felügyeleti eszköz, amely számos rendszer- és informatikai funkció számára fontos. A támadók rosszindulatú PowerShell-szkripteket használnak a kihasználás utáni technikaként, amely csak akkor történhet meg, ha már megtörtént a kezdeti biztonsági rés. A visszaélés olyan támadás tünete, amely más rosszindulatú műveletekkel kezdődik, például szoftverhasználattal, szociális tervezéssel vagy hitelesítő adatokkal való lopással. A kulcs annak megakadályozása, hogy a támadók olyan helyzetbe kerüljenek, ahol visszaélhetnek a PowerShell-lel.
Tipp
Az aláíratlan PowerShell-szkriptek számának csökkentése a környezetben segít a biztonsági helyzet növelésében. Az alábbiakban útmutatást talál arra vonatkozóan, hogyan adhat aláírást a környezetében használt PowerShell-szkriptekhez Hey, Scripting Guy! Hogyan írhatok alá Windows PowerShell szkripteket vállalati Windows PKI-vel? (2/ 2. rész) | Szkriptelési blog
WMI-adatmegőrzés: Egyes támadók a Windows Management Instrumentation (WMI) adattárat használják a rosszindulatú szkriptek tárolására, amelyeket a rendszer rendszeresen meghív WMI-kötések használatával. Microsoft Defender víruskereső általános, heurisztikus és viselkedésalapú észlelések, valamint helyi és felhőalapú gépi tanulási modellek használatával blokkolja a legtöbb kártevőt. Microsoft Defender víruskereső az alábbi képességekkel véd a fájl nélküli kártevők ellen:
- Szkriptalapú technikák észlelése az AMSI használatával, amely lehetővé teszi a PowerShell és más szkripttípusok vizsgálatát akár több réteg elfedés esetén is
- WMI-adatmegőrzési technikák észlelése és szervizelése a WMI-adattár rendszeres időközönkénti vizsgálatával, illetve rendellenes viselkedés észlelése esetén
- Reflektív DLL-injektálás észlelése továbbfejlesztett memóriavizsgálati technikákkal és viselkedésmonitorozással
Miért az AMSI?
Az AMSI mélyebb szintű ellenőrzést biztosít a kártékony szoftverek számára, amelyek rejtjelezési és kijátszási technikákat alkalmaznak a Windows beépített szkriptelési gazdagépén. Az AMSI integrálásával a Végponthoz készült Microsoft Defender további védelmi rétegeket biztosít a speciális fenyegetések ellen.
Támogatott szkriptnyelvek
- PowerShell-
- Jscript
- VBScript
- Windows-szkriptgazda (wscript.exe és cscript.exe)
- .NET-keretrendszer 4.8 vagy újabb (az összes szerelvények vizsgálata)
- Windows Management Instrumentation (WMI)
Ha Microsoft 365-alkalmazások használ, az AMSI a JavaScriptet, a VBA-t és az XLM-et is támogatja.
Az AMSI jelenleg nem támogatja a Pythont és a Perl-t.
Az AMSI engedélyezése
Az AMSI engedélyezéséhez engedélyeznie kell a szkriptek vizsgálatát. Lásd: A Microsoft Defender víruskereső vizsgálati beállításainak konfigurálása.
Lásd még: Defender Policy CSP – Windows-ügyfélkezelés.
AMSI-erőforrások
A kártevőirtó vizsgálati felület (AMSI) API-jai fejlesztők és víruskereső gyártók számára érhetők el a implementáláshoz.
Más Microsoft-termékek, például az Exchange és a SharePoint is AMSI-integrációt használnak.
További forrásanyagok a fájl nélküli támadások elleni védelemhez
A Windows Defender alkalmazásvezérlése és az AppLocker. Erős kódintegritási szabályzatokat kényszerít ki, és csak megbízható alkalmazások futtatását engedélyezi. A fájl nélküli kártevők környezetében a WDAC zárolja a PowerShellt a Korlátozott nyelvi módba, ami korlátozza azokat a kiterjesztett nyelvi funkciókat, amelyek ellenőrizhető kódvégrehajtáshoz vezethetnek, például közvetlen .NET-szkriptelést, Win32 API-k meghívását a Add-Type parancsmagon keresztül, valamint a COM-objektumokkal való interakciót. Ez lényegében csökkenti a PowerShell-alapú tükröző DLL-injektálási támadásokat.
A támadási felület csökkentése segít a rendszergazdáknak megvédeni a gyakori támadási vektorokat.
Engedélyezze a kódintegritás virtualizáláson alapuló védelmét. Csökkenti a kernelmemória biztonsági réseit a hipervizor kódintegritásával (HVCI), ami megnehezíti a rosszindulatú kódok kernelmódú szoftveres biztonsági rések használatával történő beszúrását.