Skip to content
KitploitKITPLOIT
ИнструментыБлог
Log in
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Formbook-Payload-Extraction-XOR-Decryption-Net-Assembly-Analysis — Обратно-инженерный анализ Formbook, инфостилера, использующего манипуляции со сборками .NET и XOR-дешифрование. Полная полезная нагрузка извлечена через x32dbg, включая цикл XOR-дешифрования, инициализацию CLR, приманку SQLExpress и API кейлоггера/буфера обмена. | Kitploit
Инструменты/GitHubGitHub/kaandemir993/formbook-payload-extraction-xor-decryption-net-assembly-analysis
Статический анализДинамический анализ (песочница)Обратная инженерияОтладчикиСбор информацииАнализ вредоносных программЦифровая криминалистикаАнализ Бинарных ФайловСтатьи и Исследования
GitHubkaandemir993/formbook-payload-extraction-xor-decryption-net-assembly-analysis

Formbook-Payload-Extraction-XOR-Decryption-Net-Assembly-Analysis

Обратно-инженерный анализ Formbook, инфостилера, использующего манипуляции со сборками .NET и XOR-дешифрование. Полная полезная нагрузка извлечена через x32dbg, включая цикл XOR-дешифрования, инициализацию CLR, приманку SQLExpress и API кейлоггера/буфера обмена.

Репозиторий
652 дней назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

1. x32dbg – Расшифровка зашифрованной конфигурации и выделение памяти

Дамп памяти x32dbg показывает, что Formbook расшифровывает данные своей конфигурации и выделяет для них память с помощью NtAllocateVirtualMemory.

Ключевые наблюдения:

  • NtAllocateVirtualMemory – выделяет память для расшифрованной полезной нагрузки.
  • mov edx, dword ptr ds:[esi+1C] – извлекает размер зашифрованных данных из регистра ESI.
  • push 0x1000 – использует MEM_COMMIT для выделения памяти.
  • push 0 – указывает тип выделения или флаг защиты.
  • mov edx, dword ptr ds:[esi+4] – извлекает другое значение конфигурации.
  • lea ecx, [ebp-4] – загружает указатель на локальную переменную.
  • test ecx, ecx – проверяет, является ли указатель допустимым.
  • mov ecx, [esi+1C] – снова извлекает размер зашифрованных данных.
  • push 0x1000 – повторяет флаг MEM_COMMIT.
  • push 0 – повторяет флаг выделения.

Нижняя часть дампа:

  • ConnectionStrings – ключ конфигурации .NET для адресов C2.
  • system.data, DbProviderFactories – разделы конфигурации .NET (вероятно, приманка).
  • system.serviceModel – раздел модели служб .NET.
  • <DbProviderFactories /> – пустой XML-элемент (приманка).

Почему это важно:

  • Расшифровка конфигурации: Formbook расшифровывает свою конфигурацию в памяти.
  • Адреса C2: ConnectionStrings, вероятно, содержит URL-адреса C2.
  • Уклонение: использование ключевых слов конфигурации .NET помогает избежать обнаружения.

Визуальная ссылка:

Formbook Encrypted Configuration & Memory Allocation Вид x32dbg, показывающий NtAllocateVirtualMemory и расшифровку ConnectionStrings.

2. x32dbg – Манипуляция сборками .NET, XOR-расшифровка и инициализация CLR

Этот вид x32dbg показывает, что Formbook использует манипуляцию сборками .NET, XOR-расшифровку и инициализацию CLR (Common Language Runtime) для выполнения своей полезной нагрузки.

Ключевые наблюдения:

  • xor eax, eax – очищает EAX, что указывает на XOR-расшифровку.
  • call 0x6C6E7F60 – вызывает функцию расшифровки или обработки.
  • call 0x6C6EE8B0 – вызывает другую функцию обработки.
  • DllCanUnloadNowInternal – управляет загрузкой/выгрузкой сборок .NET.
  • PublicKeyToken=31bf3856ad364e35 – выдаёт себя за сборку Microsoft.
  • system.serviceModel – конфигурация модели служб .NET (связь с C2).
  • System.Web – веб-конфигурация .NET (C2 на основе HTTP).
  • clr.NGenCreateNGenWorker – создаёт рабочий процесс .NET Native Image Generator.
  • clr.GetCLRFunction – извлекает функции CLR.
  • return to clr.Initialize – инициализирует среду выполнения .NET.

Почему это важно:

  • XOR-расшифровка: xor eax, eax и последующие вызовы call подтверждают XOR-расшифровку.
  • Выполнение .NET: Formbook использует CLR для запуска своей полезной нагрузки.
  • Выдача себя за другое: PublicKeyToken придаёт ему вид сборки Microsoft.
  • Конфигурация C2: system.serviceModel и System.Web хранят настройки C2.

Визуальная ссылка:

Formbook .NET Assembly, XOR Decryption & CLR Вид x32dbg, показывающий XOR-расшифровку, DllCanUnloadNowInternal и инициализацию CLR.

3. x32dbg – Приманка SQLExpress и инициализация CLR

Этот вид x32dbg показывает, что Formbook использует строку, связанную с SQLExpress, в качестве приманки и инициализирует .NET CLR для выполнения своей полезной нагрузки.

Ключевые наблюдения:

  • L"ce=..\SQLEXPR" – строка-приманка, не связанная с кражей данных SQL. Она используется, чтобы вредоносное ПО выглядело как легитимный компонент SQL Server Express
  • clr.InitializeFusion – инициализирует загрузчик сборок .NET Fusion, который используется для загрузки полезной нагрузки .NET в память.
  • clr.GetCLRFunction – извлекает функции CLR для выполнения управляемого кода.
  • clr.NGenCreateNGenWorker – создаёт рабочий процесс .NET Native Image Generator, позволяя полезной нагрузке выполняться без JIT-компиляции.
  • return to clr.InitializeFusion+1751 – возвращается к процедуре инициализации CLR.

Почему это важно:

  • Выдача себя за другое: строка SQLEXPR — это приманка для уклонения от обнаружения средствами безопасности.
  • Выполнение .NET: Formbook использует CLR для загрузки и запуска своей полезной нагрузки непосредственно в памяти
  • Уклонение: инициализация CLR помогает вредоносному ПО обходить статический анализ.

Визуальная ссылка:

Formbook SQLExpress Decoy & CLR Initialization Вид x32dbg, показывающий L"ce=..\SQLEXPR", clr.InitializeFusion и функции CLR.

4. x32dbg – Начало полезной нагрузки и цикл XOR-расшифровки

Этот вид x32dbg показывает начало полезной нагрузки Formbook, расположенное после стандартного сообщения заглушки PE DOS. Вредоносное ПО использует цикл XOR-расшифровки для расшифровки своей полезной нагрузки в памяти.

Ключевые инструкции ассемблера:

  • This program cannot be run in DOS mode – стандартное сообщение заглушки PE DOS.
  • xor dword ptr ds:[edi], eax – выполняет XOR данных по адресу EDI с EAX (расшифровка).
  • mov al, byte ptr ds:[edi+1] – загружает байт из EDI+1 в AL.
  • xor al, byte ptr ds:[edx+1] – выполняет XOR AL с байтом по адресу EDX+1 (ключ расшифровки).
  • mov byte ptr ds:[edi], al – записывает расшифрованный байт обратно в EDI.
  • call ntdll.77DDE45C – вызывает RtlIsCurrentThreadAttachExempt (антиотладка).
  • cmp dword ptr ds:[esi+4], 0 – проверяет, равен ли счётчик (ESI+4) нулю.
  • sub dword ptr ds:[esi+4], eax – уменьшает счётчик.
  • test edx, edx – проверяет EDX на ноль.
  • jne ntdll.77DDF9F4 – выполняет переход назад, если не ноль (цикл расшифровки).

Почему это важно:

  • Начало полезной нагрузки: полезная нагрузка начинается после стандартной заглушки PE DOS.
  • XOR-расшифровка: Formbook расшифровывает свою полезную нагрузку в памяти с помощью XOR.
  • Антиотладка: вызывает RtlIsCurrentThreadAttachExempt для уклонения от отладчиков.
  • Цикл: цикл расшифровки продолжается до тех пор, пока счётчик не достигнет нуля.

Визуальная ссылка:

Formbook Payload XOR Decryption Loop Вид x32dbg, показывающий цикл XOR-расшифровки после стандартного сообщения заглушки PE DOS.

5. Binary Ninja – API кейлоггера, буфера обмена и повышения привилегий

Анализ извлечённой полезной нагрузки в Binary Ninja выявляет обширный список API, используемых Formbook для кейлоггинга, перехвата буфера обмена и повышения привилегий.

Ключевые наблюдаемые API:

Скачать инструмент