Поддержка
Круглосуточная поддержка

Позвоните

Бесплатно по России:
8-800-333-79-32

ЧаВо | Форум

Ваши запросы

  • Все: -
  • Незакрытые: -
  • Последний: -

Позвоните

Бесплатно по России:
8-800-333-79-32

Свяжитесь с нами Незакрытые запросы: 

Профиль

Профиль

Trojan.Packed2.46324

Добавлен в вирусную базу Dr.Web: 2024-03-04

Описание добавлено:

  • sha1: 34a4c5f28c7df23662962c3eaa0a15b7ae48b488

Описание

Вредоносная программа-дроппер для ОС Windows, написанная на языке С++. Исполняемый файл обфусцирован шифром XOR и запакован самописным упаковщиком. Применяется для доставки на скомпрометированные ПК трояна Trojan.Siggen28.53599.

Структура упаковщика и распаковка

Для упаковки трояна используется неизвестный упаковщик, характерной особенностью которого являются нулевые физические размеры секций с «традиционными» названиями: .text, .rdata и др.

#drweb

При этом внутри одной из следующих секций с названием .(>@ содержится код. Там же находится точка входа.

#drweb

Исходный код с оригинальной точкой входа распаковывается в пустые секции.

Выполняемые действия

Инициализация

Троян читает структуру KUSER_SHARED_DATA, содержащую различную системную информацию. В самом начале в этой структуре проверяется значение поля NtMajorVersion, которое должно быть равно 10.

Далее загружаются библиотеки ntdll.dll, kernel32.dll, user32.dll, ole32.dll, wevtapi.dll и инициализируется структура с указателями на них. В будущем данную структуру троян использует для вызова WinAPI-функций, необходимых ему для работы. После происходит инициализация 3 потоков, отвечающих за антиотладку.

Работа с WinAPI

Троян опосредованно работает с системными функциями WinAPI через структуру-обертку, содержащую таблицу с функциями, указатели на библиотеки, адреса загрузки библиотек и флаг, отвечающий за противодействие отладке.

Таблица функций содержит:

  • функции для работы с WinAPI — нахождение указателя на функцию и ее вызова,
  • вспомогательные функции — собственная реализация LoadLibrary и GetProcAddress,
  • конфигурацию входных параметров для ряда функций.

В самом начале выполнения троян инициализирует основную структуру приложения. Для этого он с помощью модифицированного алгоритма CRC32 находит в структуре PEB_LDR_DATA адреса загрузки библиотек. Для получения функций из библиотек троян использует два способа:

  1. Собственная реализация вызовов LoadLibrary и GetProcAddress
    Троян имеет две функции, которые повторяют реализацию LoadLibrary и GetProcAddress. Данный способ применяется в тех случаях, когда требуется доступ к API, содержащемуся в ещё не загруженной в память процесса библиотеке.
  2. Поиск библиотек по хешам в PEB_LDR_DATA
    Троян ищет нужную библиотеку в структуре PEB_LDR_DATA посредством списка InMemoryOrderModuleList, который содержит в том числе указатели на все загруженные в память процесса библиотеки и их имена. При этом совпадение имени библиотеки вычисляется по совпадению значения хеша модифицированного алгоритма CRC32 с искомым. Далее через таблицу экспортируемых функций библиотеки находится нужная, при этом имена функций хешируются аналогичным способом.

Имена библиотеки и функции считываются с помощью модифицированного алгоритма CRC32.

Защита от отладки

Проверка отладочных регистров

Троян получает контекст родительского потока и проверяет, чтобы значение отладочных регистров Dr0–Dr7 было равно 0.

Проверка подключенного отладчика

В структуре KUSER_SHARED_DATA троян проверяет первые два бита в поле KdDebuggerEnabled, их значение должно быть равно 0.

С помощью функции NtQueryInformationProcess проверяет наличие отладчика, запрашивая следующие параметры из структуры PROCESSINFOCLASS: ProcessDebugFlags, ProcessDebugPort, ProcessDebugObjectHandle, ProcessTlsInformation.

Поиск драйверов отладчиков

Выполняет в директории %WINDIR%\System32\drivers поиск на предмет выявления файлов отладочного ПО. Считает хеши имен файлов с помощью модифицированного алгоритма CRC32 и сравнивает результат с хешами из черного списка.

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

Проверка окружения

Для защиты от запуска в виртуальной среде троян просматривает ряд журналов ОС, используя библиотеку wevtapi.dll.

  1. Поиск следующих строк в журналах Microsoft-Windows-Shell-Core/Operational, System, Application:
    
    \npcap.sys
    Wireshark
    API_Monitor
    apimonitor
    API Monitor
    rohitab.com
    hex-rays.com
    processhacker.sys
    ProcessHacker
    PROCMON2
    ida64.exe
    
  2. В журналах Microsoft-Windows-Storage-Storport/Operational, System, Microsoft-Windows-Storsvc/Diagnostic, Microsoft-Windows-StorageSpaces-Driver/Operational, Microsoft-Windows-Partition/Diagnostic, Microsoft-Windows-Kernel-PnP/Configuration, Application производится поиск следующих строк:
    
    VMTools
    VMUpgradeHelper
    VirtualBox Guest
    VBoxService.exe
    VBOX HARDDISK
    _FLOPPY_
    \VMWVM
    _VBOX&
    NECVMWar
    prl_
    VMware
    
  3. Дополнительно в журнале Application троян ищет следующие строки:
    
    VMware Player
    VMware NAT Service
    \Device\VBoxNet
    Oracle VM VirtualBox
    

После описанных проверок выполняется распаковка содержащейся в ресурсах полезной нагрузки — Trojan.Siggen28.53599. Для этого используется модифицированный алгоритм RC4, ключ для шифра имеет длину 8 байт. Затем происходит расшифровка конфигурации, зашифрованной шифром XOR. Полученная конфигурация сохраняется в строку, помеченную символами DANTEMARKER, которые перезаписываются.

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

Рекомендации по лечению

  1. В случае если операционная система способна загрузиться (в штатном режиме или режиме защиты от сбоев), скачайте лечащую утилиту Dr.Web CureIt! и выполните с ее помощью полную проверку вашего компьютера, а также используемых вами переносных носителей информации.
  2. Если загрузка операционной системы невозможна, измените настройки BIOS вашего компьютера, чтобы обеспечить возможность загрузки ПК с компакт-диска или USB-накопителя. Скачайте образ аварийного диска восстановления системы Dr.Web® LiveDisk или утилиту записи Dr.Web® LiveDisk на USB-накопитель, подготовьте соответствующий носитель. Загрузив компьютер с использованием данного носителя, выполните его полную проверку и лечение обнаруженных угроз.
Скачать Dr.Web

По серийному номеру

Выполните полную проверку системы с использованием Антивируса Dr.Web Light для macOS. Данный продукт можно загрузить с официального сайта Apple App Store.

На загруженной ОС выполните полную проверку всех дисковых разделов с использованием продукта Антивирус Dr.Web для Linux.

Скачать Dr.Web

По серийному номеру

  1. Если мобильное устройство функционирует в штатном режиме, загрузите и установите на него бесплатный антивирусный продукт Dr.Web для Android Light. Выполните полную проверку системы и используйте рекомендации по нейтрализации обнаруженных угроз.
  2. Если мобильное устройство заблокировано троянцем-вымогателем семейства Android.Locker (на экране отображается обвинение в нарушении закона, требование выплаты определенной денежной суммы или иное сообщение, мешающее нормальной работе с устройством), выполните следующие действия:
    • загрузите свой смартфон или планшет в безопасном режиме (в зависимости от версии операционной системы и особенностей конкретного мобильного устройства эта процедура может быть выполнена различными способами; обратитесь за уточнением к инструкции, поставляемой вместе с приобретенным аппаратом, или напрямую к его производителю);
    • после активации безопасного режима установите на зараженное устройство бесплатный антивирусный продукт Dr.Web для Android Light и произведите полную проверку системы, выполнив рекомендации по нейтрализации обнаруженных угроз;
    • выключите устройство и включите его в обычном режиме.

Подробнее о Dr.Web для Android

Демо бесплатно на 14 дней

Выдаётся при установке