DLL sideloading — атака на устройства под управлением Windows, при которой злоумышленники распространяют вредоносную библиотеку DLL вместе с легитимным приложением, которое ее выполняет. Некоторые легальные программы не проверяют библиотеки, которые подгружаются в их адресное пространство. Поэтому злоумышленники могут подложить вместо штатной библиотеки вредоносную с таким же наименованием, и легитимное приложение ее загрузит.
DLL sideloading развивается следующим образом: злоумышленники сохраняют легитимное приложение и вредоносную библиотеку на устройстве жертвы, а затем запускают приложение. Когда ему понадобится библиотека с соответствующим названием, оно обнаружит вредоносную DLL и загрузит ее.
DLL sideloading — техника, смежная с техникой подмены DLL (DLL hijacking), при которой вредоносный код также содержится в библиотеке, загружаемой легитимным приложением. Основное различие между ними в том, что при DLL hijacking злоумышленники не распространяют легитимное приложение вместе с вредоносным кодом, а подменяют одну из библиотек уже установленной в системе жертвы программы.
DLL sideloading в цепочке атаки
Техника DLL sideloading нацелена на то, чтобы затруднить обнаружение вредоносной активности. Часто для загрузки вредоносной библиотеки используются подписанные легитимные программы, в том числе ПО разработчиков защитных решений, с действительными сертификатами, а чтобы затруднить обнаружение самой DLL, ее могут загружать в зашифрованном, сжатом или обфусцированном виде.
Злоумышленники могут доставлять жертве «пакет» из приложения и библиотеки различными способами: например, с помощью самораспаковывающихся архивов или макросов в зараженных офисных файлах. Вредоносная библиотека, в свою очередь, может представлять собой как финальную полезную нагрузку, так и один из промежуточных этапов атаки.
Примеры атак с использованием DLL sideloading
Технику DLL sideloading активно применяют APT-группировки в целевых атаках. Также ее взяли на вооружение операторы и партнеры шифровальщиков. Ниже приведены примеры атак с использованием DLL sideloading.
- Группировка APT10 применяла технику DLL sideloading для доставки на атакуемое устройство бэкдора LODEINFO в целях шпионажа.
- Группировка REvil использовала системный файл MsMpEng.exe, который принадлежит Защитнику Windows, чтобы с загружать вредоносную DLL-библиотеку, содержащую программу-шифровальщик.
- Группировка Babuk использовала для DLL sideloading отладчик NTSD.exe. Как и в предыдущем случае, с его помощью злоумышленники загружали на целевое устройство программу-шифровальщик.
- APT-группировка GhostEmperor помещала вредоносную DLL msedgeupdate.dll в одну директорию с легитимным компонентом meupdate.exe, отвечающим за обновление Edge.
- В атаке азиатской APT-группировки для загрузки бэкдора использовалась техника DLL sideloading — легитимное приложение OLEVIEW.exe загружало в адресное пространство вредоносную библиотеку iviewers.dll.
- APT-группировка ToddyCat ипользовала DLL sideloading для запуска RAT: легитимное приложение vlc.exe загружало в адресное пространство полезную нагрузку, которую злоумышленники сохраняли как libvlc.dll.