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

Позвоните

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

ЧаВо | Форум

Ваши запросы

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

Позвоните

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

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

Профиль

Профиль

BackDoor.PlugX.93

Добавлен в вирусную базу Dr.Web: 2021-10-22

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

Упаковщик: отсутствует

Дата компиляции: 2020-08-13

  • SHA1-хеш: a8bff99e1ea76d3de660ffdbd78ad04f81a8c659

Описание

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

Принцип действия

В начале работы бэкдор получает по хешу адрес функции VirtualProtect(), которую использует для изменения прав доступа на PAGE_EXECUTE_READWRITE, начиная с функции по адресу 0x10001000 и заканчивая всей секцией .text:

#drweb

Функция получения адреса функции по хешу, переданному в качестве параметра:

#drweb

#drweb

Скрипт для получения функции по хешу:


import pefile
 
ror = lambda val, r_bits, max_bits: \
    ((val & (2**max_bits-1)) >> r_bits%max_bits) | \
    (val << (max_bits-(r_bits%max_bits)) & (2**max_bits-1))
 
max_bits = 32
 
library_path_list = [...] # absolute path dlls
 
def get_func_addr(hash):
    for library_path in library_path_list:
        library = library_path.split('\\')
        name_dll = library[len(library) - 1].upper() + b'\x00'
 
        hash_name_dll = 0
        for i in name_dll:
            hash_name_dll = ord(i) + ror(hash_name_dll, 0x0D, max_bits)
            hash_name_dll = 0 + ror(hash_name_dll, 0x0D, max_bits)
 
        pe = pefile.PE(library_path)
        for exp in pe.DIRECTORY_ENTRY_EXPORT.symbols:
            func_name = exp.name + b'\x00'
 
            hash_name_func = 0
            for i in func_name:
                hash_name_func = ord(i) + ror(hash_name_func, 0x0D, max_bits)
 
            if (hash_name_dll + hash_name_func == hash):
                print '{}-> 0x{:08x} -> {}'.format(name_dll, hash, exp.name)
                return

Изменение прав доступа на PAGE_EXECUTE_READWRITE нужно было для того, чтобы дешифровать код с помощью операции XOR:

#drweb

Также существует версия бэкдора с динамическим XOR-шифрованием. С дешифрованием в начале функции:

#drweb

#drweb

И с шифрованием в конце функции:

#drweb

#drweb

Облегчающий работу скрипт для IDAPython:


import idaapi
 
def xor_dec(address, count, key):
    for i in xrange(count):
        idaapi.patch_dword(address, idaapi.get_dword(address) ^ key)   
        key += idaapi.get_dword(address)
        address += 4

Перед тем как начать выполнять вредоносные действия, бэкдор, как в случае с VirtualProtect(), получает адреса других нужных для работы функций:

#drweb

Полученные функции:

Имя функции Хеш
CloseHandle0x528796C6
CreateFileA0x4FDAF6DA
DeleteFileA0x13DD2ED7
ExitProcess0x56A2B5F0
GetAdaptersInfo0x62C9E1BD
GetModuleFileNameA0xFE61445D
GetSystemDirectoryA0x60BCDE05
LoadLibraryA0x726774C
ReadFile0xBB5F9EAD
RegCloseKey0x81C2AC44
RegDeleteValueA0x3846A3A8
RegEnumValueA0x2EC95AA4
RegOpenKeyExA0x3E9E3F88
RegQueryValueExA0x8FF0E305
VirtualAlloc0xE553A458
VirtualFree0x300F2F0B
VirtualProtect0xC38AE110
WinExec0x876F8B31
WriteFile0x5BAE572D

Помимо этого, бэкдор проверяет, исполняется ли он в песочнице:

#drweb

После получения адресов функций и проверки на исполнение в песочнице BackDoor.PlugX.93 удаляет задачу updatecfgSetup из планировщика задач:

#drweb

Ключом для шифрования шелл-кода является MD5 от следующих значений ключей реестра:

 
HKLM\Software\Microsoft\Windows NT\CurrentVersion\InstallDate
HKLM\System\ControlSet001\Control\ComputerName\ComputerName

#drweb

Шелл-код сохраняется в следующих ключах реестра:


HKLM\Software\BINARY
HKCU\Software\BINARY

#drweb

Перед запуском шелл-кода он будет расшифрован в 2 этапа — сначала с помощью алгоритма RC4:

#drweb

А затем с помощью XOR:

#drweb

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

  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 дней

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