DLL hijacking je běžný a obtížně odhalitelný kybernetický útok, který umožňuje hackerům spustit škodlivý kód pomocí souboru Dynamic Link Library. Tento typ útoku lze použít k exfiltraci dat, eskalaci privilegií a nastolení perzistence na účtu, což z něj činí vážnou hrozbu pro organizace i jednotlivce.
Takže co je vlastně DLL únos? Jak můžete zabránit tomu, abyste se stali obětí?
Co je soubor DLL?
DLL je zkratka pro Dynamic Link Library. Soubor Dynamic Link Library obsahuje pokyny a pravidla, které ostatní programy v počítači nebo zařízení používají ke spuštění a efektivnímu fungování.
DLL soubor je jako manuál pro sestavení hračky. Tento návod obsahuje všechny pokyny, které potřebujete k sestavení a sestavení. Skvělé na tom je, že návod je napsán tak, že si ho může přečíst i jiná osoba a sestavit si vlastní hračku.
Takto funguje soubor DLL. Soubor DLL sdílí více než jeden program, protože obsahují pokyny, které lze použít pro jiné programy. Soubor DLL může obsahovat pokyny pro zobrazení určitého typu obrázku na obrazovce nebo pro připojení k databázi.
Soubory DLL se používají v operačních systémech Windows a mají připojenou příponu .dll.
Co je DLL Hijacking?
DLL hijacking je kybernetický útok, který umožňuje útočníkovi spustit škodlivý kód nahrazením legitimních souborů DLL škodlivými. Tento útok je obtížné odhalit a zabránit mu, protože často zahrnuje použití legitimních souborů a procesů. Téměř všechny programy ve vašem počítači používají jeden nebo více souborů DLL a mnoho z nich se načte po spuštění počítače. Pokud je ve vašem systému spuštěn škodlivý soubor DLL, pravděpodobně to povede k porušení.
Existuje několik způsobů, jak může dojít k únosu knihovny DLL, například prostřednictvím phishing nebo taktika sociálního inženýrství které přimějí uživatele ke stažení a spuštění škodlivého souboru. Jakmile je tento soubor spuštěn, může zneužít zranitelnosti v systému nebo programu, který využívá soubor DLL, což umožňuje útočníkovi krást data, eskalovat oprávnění nebo převzít kontrolu nad systémem.
Únos DLL může být obzvláště nebezpečný, protože funguje bez povšimnutí a může způsobit značné škody. Je důležité si být vědom tohoto typu útoku a podniknout kroky k ochraně proti němu.
Jak funguje DLL únos?
Typický útok DLL hijacking funguje takto:
- Kybernetický útočník identifikuje program, který dynamicky načítá soubory DLL, místo aby na ně staticky odkazoval v době kompilace.
- Útočník určuje pořadí hledání, které program používá k nalezení souborů DLL. To může zahrnovat aktuální pracovní adresář, systémový adresář a další adresáře zadané v proměnné prostředí PATH.
- Hacker umístí škodlivý soubor DLL do umístění, které program prohledá před legitimním souborem. Mohou například umístit škodlivou knihovnu DLL do aktuálního pracovního adresáře, pokud program prohledá aktuální adresář před systémovým adresářem.
- Když oběť spustí program, pokusí se načíst požadovaný soubor DLL. Vzhledem k tomu, že škodlivá knihovna DLL je umístěna v adresáři, který je prohledán dříve než ta legitimní, program místo toho načte škodlivou knihovnu DLL.
- Škodlivá knihovna DLL pak může spustit libovolný kód, který chce, a potenciálně tak útočníkovi umožnit převzít kontrolu nad počítačem oběti.
K únosu DLL může také dojít v důsledku sociálního inženýrství a phishingových útoků namísto toho, aby byl hacker již v systému. Nic netušící osoba může být podvedena ke stažení škodlivého dokumentu. Protože název zůstává nezměněn, operační systém nic netuší. Útočník v systému může také vložit kód do již existujícího souboru DLL a změnit způsob, jakým má soubor fungovat, čímž napomůže kybernetickému útoku.
Útoky DLL hijacking mohou být velmi nebezpečné. Lze je použít k:
- Ukrást citlivé informace, jako jsou přihlašovací údaje nebo finanční údaje.
- Převezměte kontrolu nad systémem a spusťte libovolný kód.
- Použijte kompromis k útoku na jiné systémy nebo sítě.
- Zajistěte stálost v systému, což hackerovi umožní zachovat přístup i po odhlášení uživatele nebo restartování systému.
- Eskalace oprávnění, umožňující únosci přístup k oblastem systému, kam by za normálních okolností nebyl schopen.
Jak zabránit únosu DLL
Útokům DLL hijacking se lze vyhnout dodržením následujících postupů.
Využijte plně kvalifikované cesty
K únosu knihovny DLL dochází, protože je škodlivý soubor DLL umístěn do umístění, které systém Windows prohledává před legitimním souborem. Použití plně kvalifikovaných cest při načítání knihoven DLL může zabránit systému Windows v hledání knihoven DLL v neočekávaných umístěních.
Používejte pouze důvěryhodný software
Používejte pouze software, který je digitálně podepsaný a ověřený důvěryhodným zdrojem. To ukazuje, že se softwarem nebylo manipulováno. Také se ujistěte, že váš software a operační systém jsou vždy aktuální, což znamená, že jsou opraveny všechny známé chyby zabezpečení.
Dalším doporučením je použít white-listing aplikací, který umožňuje v systému spouštět pouze určené programy; to pomáhá zabránit spuštění jakékoli nedůvěryhodné aplikace.
Použití firewallu a antiviru
Je důležité použít a firewall nebo jiný bezpečnostní software jako antivirus, který zabrání neoprávněnému přístupu k vašemu systému a neustále jej monitoruje, zda nevykazuje jakoukoli podezřelou nebo škodlivou aktivitu.
Implementace správné kontroly přístupu
Dalším důležitým postupem, který může pomoci zabránit únosu DLL, je použití řízení přístupu k adresářům, kde jsou uloženy soubory DLL. To může pomoci zajistit, že pouze oprávnění uživatelé mohou číst nebo zapisovat do těchto adresářů a mohou zabránit útočníkovi v umístění škodlivé knihovny DLL do adresáře, kam ji může načíst zranitelný uživatel program.
Také se vyhněte používání administrátorských nebo privilegovaných účtů ke spouštění softwaru, zejména nedůvěryhodných aplikací třetích stran.
Mezi další metody prevence patří provádění pravidelných bezpečnostních auditů ve vašich systémech za účelem kontroly jakýchkoli potenciálních zranitelností a programování s ohledem na zabezpečení.
Implementujte správný bezpečnostní postoj
Dobrá úroveň zabezpečení ve vaší organizaci nejen zabraňuje útokům, jako jsou únosy knihoven DLL, ale také chrání vaši organizaci před jinými kybernetickými útoky. Je důležité pravidelně provádět školení v oblasti povědomí o bezpečnosti, udržovat systémy aktuální a provádět další osvědčené bezpečnostní postupy, aby byla vaše organizace v bezpečí.