Sårbarhedsangreb, forebyggelse og detektion af DLL-kapring

DLL står for Dynamic Link Libraries og er eksterne dele af applikationer, der kører på Windows eller et hvilket som helst andet operativsystem. De fleste applikationer er ikke komplette i sig selv og gemmer kode i forskellige filer. Hvis der er behov for koden, indlæses den relaterede fil i hukommelsen og bruges. Dette reducerer applikationsfilstørrelsen og optimerer samtidig brugen af ​​RAM . Denne artikel forklarer, hvad der er DLL-kapring(DLL Hijacking) , og hvordan man opdager og forhindrer det.

Hvad er DLL- filer(Files) eller Dynamic Link Libraries

DLL-kapring

DLL- filer er Dynamic Link Libraries og som det fremgår af navnet, er de udvidelser af forskellige applikationer. Enhver applikation, vi bruger, bruger muligvis visse koder eller ikke. Sådanne koder gemmes i forskellige filer og kaldes eller indlæses kun i RAM , når den relaterede kode er påkrævet. Således sparer det en applikationsfil fra at blive for stor og forhindrer ressource-hogging af applikationen.

Stien til DLL - filer er angivet af Windows -operativsystemet. Stien indstilles ved hjælp af Global Environmental Variables . Som standard, hvis et program anmoder om en DLL -fil, kigger operativsystemet ind i den samme mappe, som programmet er gemt i. Hvis det ikke findes der, går det til andre mapper som angivet af de globale variabler. Der er prioriteter knyttet til stier, og det hjælper Windows med at bestemme, hvilke mapper der skal kigge efter DLL'erne(DLLs) . Det er her, DLL -kapringen kommer ind.

Hvad er DLL-kapring

Da DLL'er(DLLs) er udvidelser og nødvendige for at bruge næsten alle programmer på dine maskiner, er de til stede på computeren i forskellige mapper som forklaret. Hvis den originale DLL -fil erstattes med en falsk DLL -fil, der indeholder ondsindet kode, er den kendt som DLL Hijacking .

Som tidligere nævnt er der prioriteter for, hvor operativsystemet leder efter DLL - filer. Først(First) kigger den ind i den samme mappe som applikationsmappen og søger derefter baseret på de prioriteter, der er angivet af operativsystemets miljøvariabler. Så hvis en good.dll-fil er i mappen SysWOW64 , og nogen placerer en bad.dll i en mappe, der har højere prioritet sammenlignet med mappen SysWOW64 , vil operativsystemet bruge bad.dll-filen, da den har samme navn som DLL -filen. anmodet om af ansøgningen. Når den først er i RAM , kan den udføre den ondsindede kode indeholdt i filen og kan kompromittere din computer eller netværk.

Sådan opdager du DLL-kapring

Den nemmeste metode til at opdage og forhindre DLL -kapring er at bruge tredjepartsværktøjer. Der er nogle gode gratis værktøjer tilgængelige på markedet, der hjælper med at opdage et DLL -hackforsøg og forhindre det.

Et sådant program er DLL Hijack Auditor , men det understøtter kun 32-bit applikationer. Du kan installere det på din computer og scanne alle dine Windows-applikationer for at se, hvad alle applikationer er sårbare over for DLL -kapring. Grænsefladen er enkel og selvforklarende. Den eneste ulempe ved denne applikation er, at du ikke kan scanne 64-bit applikationer.

Et andet program, til at opdage DLL - kapring,  DLL_HIJACK_DETECT, er tilgængeligt via GitHub . Dette program kontrollerer applikationer for at se, om nogen af ​​dem er sårbare over for DLL - kapring. Hvis det er, informerer programmet brugeren. Applikationen har to versioner - x86 og x64 , så du kan bruge hver til at scanne henholdsvis 32-bit og 64-bit applikationer.

Det skal bemærkes, at ovenstående programmer bare scanner applikationerne på Windows -platformen for sårbarheder og faktisk ikke forhindrer kapringen af ​​DLL- filer.

Sådan forhindrer du DLL-kapring

Problemet bør løses af programmørerne i første omgang, da der ikke er meget du kan gøre bortset fra at forbedre dine sikkerhedssystemer. Hvis programmører i stedet for en relativ sti begynder at bruge en absolut sti, vil sårbarheden blive reduceret. Læsning af den absolutte sti, Windows eller ethvert andet operativsystem afhænger ikke af systemvariabler for sti og vil gå direkte til den tilsigtede DLL , og derved afvise chancerne for at indlæse (DLL)DLL med samme navn i en højere prioritet sti. Denne metode er heller ikke fejlsikker, fordi hvis systemet er kompromitteret, og cyberkriminelle kender den nøjagtige sti til DLL , vil de erstatte den originale DLL med den falske DLL. Det ville være at overskrive filen, så den originale DLL ændres til ondsindet kode. Men igen, den cyberkriminelle skal kende den nøjagtige absolutte sti, der er nævnt i applikationen, der kalder på DLL'en(DLL) . Processen er hård for cyberkriminelle og kan derfor regne med.

For at komme tilbage til, hvad du kan gøre, prøv bare at opskalere dine sikkerhedssystemer for bedre at sikre dit Windows-system(secure your Windows system) . Brug en god firewall . Hvis det er muligt, skal du bruge en hardware-firewall eller tænde for routerens firewall. Brug gode systemer til registrering af indtrængen, så du ved, om nogen forsøger at lege med din computer.

Hvis du er til fejlfinding på computere, kan du også udføre følgende for at øge din sikkerhed:

  1. Deaktiver DLL -indlæsning fra eksterne netværksshares
  2. Deaktiver indlæsning af DLL- filer fra WebDAV
  3. Deaktiver WebClient -tjenesten helt, eller indstil den til manuel
  4. Bloker (Block)TCP - portene 445 og 139, da de bruges mest til at kompromittere computere
  5. Installer de seneste opdateringer til operativsystemet og sikkerhedssoftwaren.

Microsoft har udgivet et værktøj til at blokere DLL - load-kapringangreb. Dette værktøj mindsker risikoen for DLL -kapringangreb ved at forhindre applikationer i at indlæse kode fra DLL - filer på en usikker måde.

Hvis du gerne vil tilføje noget til artiklen, bedes du kommentere nedenfor.(If you would like to add anything to the article, please comment below.)



About the author

Jeg arbejder som konsulent for Microsoft. Jeg har specialiseret mig i udvikling af mobile apps til Apple og Android enheder, og er desuden involveret i udvikling af Windows 7 apps. Min erfaring med smartphones og Windows 7 gør mig til en ideel kandidat til denne stilling.



Related posts