DLL nolaupīšanas neaizsargātības uzbrukumi, profilakse un atklāšana

Satura rādītājs:

DLL nolaupīšanas neaizsargātības uzbrukumi, profilakse un atklāšana
DLL nolaupīšanas neaizsargātības uzbrukumi, profilakse un atklāšana

Video: DLL nolaupīšanas neaizsargātības uzbrukumi, profilakse un atklāšana

Video: DLL nolaupīšanas neaizsargātības uzbrukumi, profilakse un atklāšana
Video: What is a Firewall? - YouTube 2024, Marts
Anonim

DLL apzīmē Dynamic Link bibliotēkas un ir ārējās to lietojumprogrammu daļas, kas darbojas sistēmā Windows vai citās operētājsistēmās. Lielākā daļa lietojumprogrammu paši par sevi nav pilnīgi un veikala kodu dažādos failos. Ja ir vajadzīgs kods, saistītais fails tiek ielādēts atmiņā un tiek izmantots. Tas samazina lietojumprogrammas faila lielumu, optimizējot RAM izmantošanu. Šajā rakstā ir paskaidrots, kas ir DLL nolaupīšana un kā to atklāt un novērst.

Kas ir DLL faili vai dinamiskās saišu bibliotēkas

DLL faili ir Dynamic Link bibliotēkas un, kā tas ir redzams pēc nosaukuma, ir dažādu lietojumprogrammu paplašinājumi. Jebkurš pieteikums, kuru mēs izmantojam, var vai nevar izmantot noteiktus kodus. Šādi kodi tiek glabāti dažādos failos, un tie tiek izsaukti vai ielādēti RAM tikai tad, ja ir nepieciešams saistītais kods. Tādējādi tiek saglabāts lietojumprogrammas fails kļūst pārāk liels un nepieļauj rīka resursu pietrūšanu.
DLL faili ir Dynamic Link bibliotēkas un, kā tas ir redzams pēc nosaukuma, ir dažādu lietojumprogrammu paplašinājumi. Jebkurš pieteikums, kuru mēs izmantojam, var vai nevar izmantot noteiktus kodus. Šādi kodi tiek glabāti dažādos failos, un tie tiek izsaukti vai ielādēti RAM tikai tad, ja ir nepieciešams saistītais kods. Tādējādi tiek saglabāts lietojumprogrammas fails kļūst pārāk liels un nepieļauj rīka resursu pietrūšanu.

DLL failu ceļu nosaka Windows operētājsistēma. Ceļš tiek iestatīts, izmantojot globālos vides mainīgos. Pēc noklusējuma, ja lietojumprogramma pieprasa DLL failu, operētājsistēma meklē to pašu mapi, kurā tiek saglabāts lietojumprogramma. Ja to šeit nenosaka, tas nonāk citās mapēs, kā to nosaka globālie mainīgie. Ceļiem ir prioritātes, un tas palīdz Windows noteikt, kuras mapes meklēt DLL. Šajā vietā tiek ievests DLL nolaupīšana.

Kas ir DLL nolaupīšana?

Tā kā DLL ir paplašinājumi un ir nepieciešams, lai gandrīz visas lietojumprogrammas izmantotu jūsu datorā, tās datorā atrodas dažādās mapēs, kā paskaidrots. Ja sākotnējais DLL fails tiek aizstāts ar viltus DLL failu, kurā ir ļaunprātīgs kods, tas tiek dēvēts par DLL nolaupīšana.

Kā minēts iepriekš, ir prioritātes attiecībā uz to, kur operētājsistēma meklē DLL failus. Pirmkārt, tā izskatās tajā pašā mapē kā lietojumprogrammas mapē un pēc tam iet meklēšanu, pamatojoties uz prioritātēm, kuras nosaka vides mainīgie lielumi operētājsistēmā. Tādējādi, ja failā good.dll atrodas SysWOW64 mapē, un kāds ievieto bad.dll mapē, kurai ir lielāka prioritāte salīdzinājumā ar SysWOW64 mapi, operētājsistēma izmantos failu bad.dll, jo tai ir tāds pats nosaukums kā DLL pieprasījums. Pēc operētājsistēmas RAM tā var izpildīt ļaundabīgo kodu, kas atrodas failā, un var apdraudēt jūsu datoru vai tīklus.

Kā noteikt DLL nolaupīšanu

Vienkāršākā metode, kā noteikt un novērst DLL noņemšanu, ir izmantot trešo pušu rīkus. Tirgū ir pieejami daži labie bezmaksas rīki, kas palīdz atklāt DLL kapacitātes mēģinājumu un novērš to.

Viena no šādām programmām ir DLL Hijack Auditors, bet tā atbalsta tikai 32 bitu lietojumprogrammas. Jūs varat to instalēt savā datorā un skenēt visas Windows lietojumprogrammas, lai noskaidrotu, kādas ir visas programmas, kuras neaizsargā pret DLL noņemšanu. Interfeiss ir vienkāršs un pašsaprotams. Vienīgais šī lietojuma trūkums ir tāds, ka nevarat skenēt 64 bitu lietojumprogrammas.

Vēl viena programma, lai noteiktu DLL noņemšanu, DLL_HIJACK_DETECT, ir pieejama, izmantojot GitHub. Šī programma pārbauda lietojumprogrammas, lai noskaidrotu, vai kāda no tām ir neaizsargāta pret DLL noņemšanu. Ja tā ir, programma informē lietotāju. Programmai ir divas versijas - x86 un x64, lai jūs varētu izmantot katru, lai skenētu attiecīgi gan 32 bitu, gan 64 bitu programmas.

Jāatzīmē, ka iepriekš minētās programmas vienkārši skenē Windows platformas lietojumprogrammas neaizsargātības dēļ un faktiski neaizkavē DLL failu ļaunprātīgu izmantošanu.

Kā novērst DLL nolaupīšanu

Vispirms programmētājiem jārisina šis jautājums, jo nav daudz, ko jūs varat darīt, izņemot, lai uzlabotu drošības sistēmas. Ja relatīvā ceļa vietā programmētāji sāk izmantot absolūtu ceļu, ievainojamība tiks samazināta. Absolūtais ceļš lasot, Windows vai jebkura cita operētājsistēma nebūs atkarīga no sistēmas mainīgajiem ceļiem un iet tieši attiecībā uz paredzēto DLL, tādējādi noraidot iespēju iekļaut to pašu nosaukumu DLL augstākas prioritātes ceļā. Šī metode arī nav neveiksmīga, jo, ja sistēma tiek apdraudēta un kibernoziegumi zina precīzu DLL ceļu, tie aizstās sākotnējo DLL ar viltus DLL. Tas tiktu pārrakstīts fails, lai sākotnējā DLL kļūtu par ļaunprātīgu kodu. Bet atkal kibernoziedzniekam būs jāzina precīzs absolūtais ceļš, kas norādīts lietojumprogrammā un kurā tiek pieprasīta DLL. Šis process ir grūts kibernoziedzniekiem, un tāpēc to var uzskatīt.

Atgriezieties pie tā, ko jūs varat darīt, vienkārši mēģiniet palielināt savas drošības sistēmas, lai labāk nodrošinātu Windows sistēmas drošību. Izmantojiet labu ugunsmūri. Ja iespējams, izmantojiet aparatūras ugunsmūri vai ieslēdziet maršrutētāja ugunsmūri. Izmantojiet labas ielaušanās atklāšanas sistēmas, lai jūs zināt, vai kāds mēģina spēlēt ar datoru.

Ja jūs nonākat problēmu novēršanā datoros, varat arī veikt šādas darbības, lai paaugstinātu jūsu drošību:

  1. Atspējojiet DLL ielādi no attālinātās tīkla daļas
  2. Atspējot DLL failu ielādi no WebDAV
  3. Atspējojiet WebClient pakalpojumu pilnībā vai uzstādiet to manuāli
  4. Bloķējiet TCP porti 445 un 139, jo tie visbiežāk tiek izmantoti, lai apdraudētu datorus
  5. Instalējiet jaunākos operētājsistēmas un drošības programmatūras atjauninājumus.

Microsoft ir izlaidis līdzekli, lai bloķētu DLL ielādes nolaupīšanas uzbrukumus. Šis rīks mazina DLL aizskāruma uzbrukumu risku, liedzot lietojumprogrammām nedroši ielādēt kodu no DLL failiem.

Ja jūs vēlaties pievienot visu rakstu, lūdzu, komentējiet zemāk.

Ieteicams: