TGViewer
purple shift purple shift @purpleshift · 3.05K subscribers
Post #189 2.02K
Техника подмены Network Provider DLL (T1556.008) используется злоумышленниками уже много лет, но до сих пор не потеряла актуальности. Совсем недавно, в мае этого года, команда Microsoft Incident Response опубликовала расследование инцидента, в котором атакующие применяли эту технику для кражи учётных данных; при этом использование легитимного ПО позволяло им долгое время оставаться незамеченными.

Суть атаки:

Network Provider DLL — это динамическая библиотека в Windows, которая позволяет ОС взаимодействовать с конкретными сетевыми протоколами. Она реализует набор функций (Network Provider API), которые использует Multiple Provider Router (MPR) для связи с разными сетями.

Компоненты данного типа автоматически загружаются при входе пользователя в систему и участвуют в процессах сетевой аутентификации, восстановления сетевых ресурсов и обработки учетных данных, что делает механизм привлекательным для persistence.

Злоумышленники могут зарегистрировать вредоносный Network Provider DLL, модифицировав ключ реестра:

HKLM\SYSTEM\CurrentControlSet\Control\NetworkProvider\Order 


Параметр ProviderOrder не хранит путь к DLL и не содержит информацию о модуле — он представляет собой только список имён провайдеров, которые Windows должна инициализировать через механизм MPR. Например:

ProviderOrder = LanmanWorkstation,RDPNP,webclient,EvilProvider 


В этом случае Windows будет воспринимать EvilProvider как нового провайдера и попытается найти его описание:

HKLM\SYSTEM\CurrentControlSet\Services\EvilProvider\NetworkProvider 


Из данного раздела система получает путь к библиотеке через параметр ProviderPath. Например:

ProviderPath = C:\ProgramData\evilprov.dll


После регистрации Windows начинает обращаться к этой DLL как к обычному провайдеру и автоматически загружает эту библиотеку при входе пользователя. При этом Windows не проверяет, является ли провайдер системным: механизм загружает все компоненты, перечисленные в ProviderOrder.

Как ловить атаку:

Детектируем изменения в ProviderOrder или создание ProviderPath для любого Network Provider, кроме штатных (LanmanWorkstation, RDPNP, webclient). Пример правила детектирования:

logsource:
product: windows
category: registry_event

detection:
Selection_order:
TargetObject|contains:
- '\Control\NetworkProvider\Order\ProviderOrder'

selection_provider:
TargetObject|contains:
- '\Services\'
- '\NetworkProvider'
- '\ProviderPath'

filter_main_system:
Details|contains:
- 'LanmanWorkstation'
- 'RDPNP'
- 'webclient'

condition: (selection_order or selection_provider) and not filter_main_system
  • 👍 17
  • 🔥 6
  • ❤ 2
More from @purpleshift
  1. Sep 23, 2026В конце 2024 года мы рассказывали о том, как детектировать атаки на основе компрометации г…
  2. Sep 21, 2026В конце лета число подписчиков нашего канала перевалило за 3 тысячи. Мы конечно же поздрав…
  3. Sep 16, 2026«Мир стоит на кодах и шифрах, Джон. Многомиллионные охранные системы в банках и простеньки…
  4. Sep 11, 2026Финал соревнований VolgaCTF 2026 пройдёт с 16 по 18 сентября в Самаре. И на этом мероприят…
  5. Sep 7, 2026В начале августа мы рассказали, что хакерская группировка Labooboo (Toy Ghouls, Bearlyfy,…
  6. Sep 4, 2026Атаки с использованием NTFS-потоков в Windows давно стали классикой. В Linux-средах про ра…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →