Зловреден софтуер

Атаки, предотвратяване и откриване на DLL отвличане на уязвимости

Атаки, предотвратяване и откриване на DLL отвличане на уязвимости

DLL е съкращение от Dynamic Link Libraries и са външни части на приложения, работещи под Windows или друга операционна система. Повечето приложения сами по себе си не са пълни и съхраняват код в различни файлове. Ако има нужда от кода, съответният файл се зарежда в паметта и се използва. Това намалява размера на файла на приложението, като същевременно оптимизира използването на RAM. Тази статия обяснява какво е Отвличане на DLL и как да го открием и предотвратим.

Какво представляват DLL файловете или динамичните библиотеки с връзки

DLL файловете са Dynamic Link Libraries и както се вижда от името, са разширения на различни приложения. Всяко приложение, което използваме, може или не може да използва определени кодове. Такива кодове се съхраняват в различни файлове и се извикват или зареждат в RAM само когато се изисква съответният код. По този начин той спестява файл на приложението да не стане твърде голям и за да предотврати натрупването на ресурси от приложението.

Пътят за DLL файлове се задава от операционната система Windows. Пътят е зададен с помощта на глобални екологични променливи. По подразбиране, ако дадено приложение поиска DLL файл, операционната система търси в същата папка, в която се съхранява приложението. Ако не е намерен там, той отива в други папки, определени от глобалните променливи. Към пътеките има свързани приоритети и това помага на Windows при определянето на папките, които да търси DLL файловете. Тук идва DLL отвличането.

Какво е DLL отвличане

Тъй като DLL са разширения и са необходими за използване на почти всички приложения на вашите машини, те се намират на компютъра в различни папки, както е обяснено. Ако оригиналният DLL файл е заменен с фалшив DLL файл, съдържащ злонамерен код, той е известен като Отвличане на DLL.

Както споменахме по-рано, има приоритети къде операционната система търси DLL файлове. Първо, той търси в същата папка като папката на приложението и след това преминава към търсене въз основа на приоритетите, зададени от променливите на околната среда на операционната система. По този начин, ако е добро.dll е в папката SysWOW64 и някой поставя лошо.dll в папка, която има по-висок приоритет в сравнение с папката SysWOW64, операционната система ще използва лошото.dll файл, тъй като има същото име като DLL, поискано от приложението. Веднъж попаднал в RAM, той може да изпълни злонамерения код, съдържащ се във файла, и може да компрометира вашия компютър или мрежи.

Как да открием DLL отвличане

Най-лесният метод за откриване и предотвратяване на отвличане на DLL е използването на инструменти на трети страни. На пазара се предлагат някои добри безплатни инструменти, които помагат при откриването на опит за хакване на DLL и предотвратяването му.

Една такава програма е DLL Hijack Auditor, но поддържа само 32-битови приложения. Можете да го инсталирате на вашия компютър и да сканирате всичките си приложения за Windows, за да видите кои всички приложения са уязвими за DLL отвличане. Интерфейсът е прост и разбираем. Единственият недостатък на това приложение е, че не можете да сканирате 64-битови приложения.

Друга програма за откриване на DLL отвличане, DLL_HIJACK_DETECT, е достъпна чрез GitHub. Тази програма проверява приложенията, за да види дали някое от тях е уязвимо за отвличане на DLL. Ако е така, програмата информира потребителя. Приложението има две версии - x86 и x64, така че можете да използвате всяка от тях, за да сканирате съответно 32-битови и 64-битови приложения.

Трябва да се отбележи, че горните програми просто сканират приложенията на платформата на Windows за уязвимости и всъщност не предотвратяват отвличането на DLL файлове.

Как да предотвратим отвличане на DLL

Проблемът трябва да бъде решен от програмистите на първо място, тъй като не можете да направите много, освен да подсилите системите си за сигурност. Ако вместо относителна пътека програмистите започнат да използват абсолютна пътека, уязвимостта ще бъде намалена. Четенето на абсолютния път, Windows или която и да е друга операционна система няма да зависи от системните променливи за път и ще премине направо към предвидената DLL, като по този начин ще отхвърли шансовете за зареждане на едноименната DLL в по-висок приоритет. Този метод също не е надежден, защото ако системата е компрометирана и киберпрестъпниците знаят точния път на DLL, те ще заменят оригиналната DLL с фалшива DLL. Това би заменило файла, така че оригиналната DLL да се промени в злонамерен код. Но отново киберпрестъпникът ще трябва да знае точния абсолютен път, споменат в приложението, което изисква DLL. Процесът е труден за киберпрестъпниците и следователно може да се разчита на него.

Връщайки се към това, което можете да направите, просто опитайте да увеличите вашите системи за сигурност, за да защитите по-добре вашата система Windows. Използвайте добра защитна стена. Ако е възможно, използвайте хардуерна защитна стена или включете защитната стена на рутера. Използвайте добри системи за откриване на проникване, за да знаете дали някой се опитва да играе с вашия компютър.

Ако се занимавате с компютри за отстраняване на неизправности, можете също да извършите следното, за да повишите сигурността си:

  1. Деактивирайте DLL зареждането от отдалечени мрежови споделяния
  2. Деактивирайте зареждането на DLL файлове от WebDAV
  3. Деактивирайте услугата WebClient напълно или я задайте на ръчно
  4. Блокирайте TCP портовете 445 и 139, тъй като те се използват най-вече за компрометиране на компютри
  5. Инсталирайте най-новите актуализации на операционната система и софтуера за сигурност.

Microsoft пусна инструмент за блокиране на DLL атаки за отвличане на натоварване. Този инструмент намалява риска от атаки за отвличане на DLL, като предотвратява несигурното зареждане на приложения от DLL файлове.

Ако искате да добавите нещо към статията, моля, коментирайте по-долу.

Как да промените левия и десния бутон на мишката на компютър с Windows 10
Напълно нормално е всички устройства на компютърни мишки да са ергономично проектирани за десничари. Но има налични устройства за мишка, които са спец...
Емулирайте кликванията на мишката, като задържите курсора на мишката с кликаща мишка в Windows 10
Използването на мишка или клавиатура в неправилна поза при прекомерна употреба може да доведе до много здравословни проблеми, включително напрежение, ...
Добавете жестове на мишката към Windows 10, като използвате тези безплатни инструменти
През последните години компютрите и операционните системи значително се развиха. Имаше време, когато потребителите трябваше да използват команди за на...