Windows

Säkerhetsproblem för DLL-kapacitetsattacker

Senators, Governors, Businessmen, Socialist Philosopher (1950s Interviews)

Senators, Governors, Businessmen, Socialist Philosopher (1950s Interviews)

Innehållsförteckning:

Anonim

DLL står för dynamiska länkbibliotek och är externa delar av program som körs på Windows eller något annat operativsystem. De flesta applikationer är inte fullständiga i sig och lagras i olika filer. Om det behövs koden laddas den relaterade filen i minnet och används. Detta minskar applikationsfilens storlek samtidigt som du optimerar användningen av RAM. I den här artikeln beskrivs vad som är DLL-kapring och hur man upptäcker och förhindrar det.

Vad är DLL-filer eller Dynamiska länkbibliotek?

DLL-filer är Dynamiska länkbibliotek och som framgår av namnet, är tillägg av olika applikationer. Alla tillämpningar som vi använder kan eller kanske inte använda vissa koder. Sådana koder lagras i olika filer och påkallas eller laddas endast i RAM när den relaterade koden krävs. Således sparar den en applikationsfil från att bli för stor och för att förhindra att resursen svängs av programmet.

Stigen för DLL-filer ställs in av Windows-operativsystemet. Banan är inställd med Global Environmental Variables. Som standard, om en applikation begär en DLL-fil, ser operativsystemet ut i samma mapp som applikationen är lagrad. Om den inte hittas finns den till andra mappar enligt de globala variablerna. Det finns prioriteringar kopplade till sökvägar och det hjälper Windows att bestämma vilka mappar som ska leta efter DLL: erna. Det här är DLL-kapringen.

Vad är DLL-kapring

Eftersom DLL-filer är tillägg och nödvändiga för att använda nästan alla program på dina maskiner, är de närvarande på datorn i olika mappar som förklaras. Om den ursprungliga DLL-filen ersätts med en falsk DLL-fil som innehåller skadlig kod, kallas den för DLL Hijacking.

Som tidigare nämnts finns det prioriteringar för var operativsystemet söker efter DLL-filer. Först ser det ut i samma mapp som applikationsmappen och söker sedan, baserat på prioriteringarna som fastställs av miljövariablerna i operativsystemet. Således om en good.dll-fil finns i SysWOW64-mappen och någon placerar en bad.dll i en mapp som har högre prioritet jämfört med SysWOW64-mappen, kommer operativsystemet att använda filen bad.dll, eftersom den har samma namn som DLL begärt av ansökan. En gång i RAM kan den köra den skadliga koden i filen och kan äventyra din dator eller nätverk.

Så här upptäcker du DLL-kapning

Den enklaste metoden för att upptäcka och förhindra DLL-kapning är att använda verktyg från tredje part. Det finns några bra gratis verktyg tillgängliga på marknaden som hjälper till att upptäcka ett DLL-hackförsök och förhindra det.

Ett sådant program är DLL Hijack Auditor, men det stöder bara 32-bitars applikationer. Du kan installera den på din dator och skanna alla dina Windows-program för att se vad alla program är sårbara för DLL-kapning. Gränssnittet är enkelt och självförklarande. Den enda nackdelen med den här applikationen är att du inte kan skanna 64-bitars applikationer.

Ett annat program, för att upptäcka DLL-kapning, DLL_HIJACK_DETECT, är tillgänglig via GitHub. Detta program kontrollerar program för att se om någon av dem är sårbar för DLL-kapning. Om det är, informerar programmet användaren. Applikationen har två versioner - x86 och x64 så att du kan använda var och en för att skanna både 32 bitar och 64 bitars applikationer.

Det bör noteras att ovanstående program bara skannar programmen på Windows-plattformen för sårbarheter och faktiskt inte förhindra kapning av DLL-filer.

Hur man förhindrar DLL-kapning

Problemet bör hanteras av programmörerna i första hand eftersom det inte finns mycket du kan göra förutom att sätta upp dina säkerhetssystem. Om, istället för en relativ sökväg, programmerare börjar använda en absolut sökväg, kommer sårbarheten att minskas. Om du läser den absoluta sökvägen, kommer Windows eller något annat operativsystem inte att bero på systemvariablerna för sökvägen och kommer att gå direkt till den avsedda DLL: n, vilket därigenom avvisar chanserna att ladda samma DLL-namn i en högre prioritetsväg. Den här metoden är inte felsäker eftersom om systemet är äventyrat och cyberkriminella känner till den exakta sökvägen för DLL, kommer de att ersätta den ursprungliga DLL med den falska DLL. Det skulle skriva över filen så att den ursprungliga DLL-filen ändras till skadlig kod. Men igen, den cybercriminal måste veta exakt den absoluta vägen som nämns i programmet som kräver DLL. Processen är hård för cyberkriminella och kan därmed räknas.

Kommer tillbaka till vad du kan göra, försök bara att skala upp dina säkerhetssystem för att bättre säkra ditt Windows-system. Använd en bra brandvägg. Använd om möjligt en hårdvarubrandväg eller sätt på routerns brandvägg. Använda bra system för intrångsdetektering så att du vet om någon försöker spela med datorn.

Om du befinner dig i felsökningsdatorer kan du också göra följande för att öka säkerheten:

  1. Inaktivera DLL-laddning från fjärrnätverksandelar
  2. Inaktivera laddning av DLL-filer från WebDAV
  3. Inaktivera WebClient-tjänsten helt eller sätt den till manuellt
  4. Blockera TCP-portarna 445 och 139 eftersom de används mest för att kompromissa med datorer
  5. Installera de senaste uppdateringarna till driften system och säkerhetsprogram.

Microsoft har släppt ett verktyg för att blockera DLL-laddningshackningsattacker. Det här verktyget mildrar risken för DLL-kapningsattacker genom att förhindra applikationer från otryckt inmatning av kod från DLL-filer.

Om du vill lägga till något i artikeln, var god kommentar nedan.