Руткиты в .NET Framework

image

Теги: .Net Framework, руткит

Эрез Метула (Erez Metula) опубликовал исследование, описывающее новую методику внедрения руткитов в .NET Framework.

.NET Framework давно вызывает интерес у создателей вредоносного ПО. Эрез Метула (Erez Metula) опубликовал исследование, описывающее новую методику внедрения руткитов в .NET Framework.

В документе описаны различные пути разработки руткитов для .NET Framework, позволяющие внести изменения в каждый EXE/DLL файл. Анализ кода не позволит определить наличие бекдора в .NET Framework, поскольку пейлоад находится не в самом коде, а в реализации самой фреймворк. Возможность написания руткитов для фреймворка позволит злоумышленнику установить реверсивный шелл внутри фреймворка и похитить потенциально важные данные, ключи шифрования, отключить проверки безопасности и другое.

Изменение фреймворка можно произвести путем перехвата dll и «отправки» ее обратно фреймворку. Сам процесс состоит из нескольких шагов, описанных в этом документе, и может быть применен ко всем версиям .NET Framework (1.0, 1.1, 2.0, 3.0 и 3.5):

  • Обнаружение DLL в GAC (Global Assembly Cache)
  • Анализ и декомпиляция DLL с помощью ildasm
  • Модификация MSIL кода
  • Рекомпиляция новой DLL с помощью ilasm
  • Обход механизма защиты подписи сборки (strong name protection) GAC
  • Преобразование из NGEN Native DLL
  • Перезапись оригинальной DLL

В документе также описывается брешь в способе загрузки библиотек и возможность обхода механизма подписей и предоставляется общему вниманию утилита для создания MSIL руткитов ".Net-Sploit".

Внимание, для успешного внедрения руткита злоумышленник должен иметь административные привилегии на системе.

Ссылки:

Исследование NET Framework rootkits - backdoors inside your framework 

Презентация

.NET-Sploit 1.0 beta

Исходный код  .NET-Sploit 1.0 beta

Модули к  .NET-Sploit 1.0 beta(опционально)


comments powered by Disqus