filecheck .ru
Вот так, вы сможете исправить ошибки, связанные с RNDBWM.exe
Информация о файле RNDBWM.exe
Описание: RNDBWM.exe не является необходимым для Windows. Файл RNDBWM.exe находится в подпапках «C:\Program Files». Известны следующие размеры файла для Windows 10/8/7/XP 2,417,320 байт (44% всех случаев), 2,479,272 байт, 2,469,032 байт или 785,064 байт. 
Это файл, подписанный Verisign. Это не файл Windows. Поставлена цифровая подпись. Приложение не видно пользователям. Процесс использует порт, чтобы присоединится к сети или интернету. Вы можете деинсталлировать эту программу из панели инструментов. RNDBWM.exe способен манипулировать другими программами и мониторить приложения. Поэтому технический рейтинг надежности 24% опасности.
Это позволяет удалить соответствующую программу (Пуск > Панель управления > Установка и удаление программ > SmartByte Drivers and Services).
Важно: Некоторые вредоносные программы маскируют себя как RNDBWM.exe, особенно, если они расположены в каталоге c:\windows или c:\windows\system32. Таким образом, вы должны проверить файл RNDBWM.exe на вашем ПК, чтобы убедиться, что это угроза. Мы рекомендуем Security Task Manager для проверки безопасности вашего компьютера.
Комментарий пользователя
Лучшие практики для исправления проблем с RNDBWM
Если у вас актуальные проблемы, попробуйте вспомнить, что вы делали в последнее время, или последнюю программу, которую вы устанавливали перед тем, как появилась впервые проблема. Используйте команду resmon, чтобы определить процесс, который вызывает проблемы. Даже если у вас серьезные проблемы с компьютером, прежде чем переустанавливать Windows, лучше попробуйте восстановить целостность установки ОС или для Windows 8 и более поздних версий Windows выполнить команду DISM.exe /Online /Cleanup-image /Restorehealth. Это позволит восстановить операционную систему без потери данных.
RNDBWM сканер
Security Task Manager показывает все запущенные сервисы Windows, включая внедренные скрытые приложения (например, мониторинг клавиатуры или браузера, авто вход). Уникальный рейтинг надежности указывает на вероятность того, что процесс потенциально может быть вредоносной программой-шпионом, кейлоггером или трояном.
Бесплатный aнтивирус находит и удаляет неактивные программы-шпионы, рекламу, трояны, кейлоггеры, вредоносные и следящие программы с вашего жесткого диска. Идеальное дополнение к Security Task Manager.
Reimage бесплатное сканирование, очистка, восстановление и оптимизация вашей системы.
What is KNDBWM.exe?
KNDBWM.exe is part of SmartByte and developed by Rivet Networks LLC according to the KNDBWM.exe version information.
KNDBWM.exe’s description is «Rivet Networks Dynamic Bandwidth Manager«
KNDBWM.exe is digitally signed by Rivet Networks LLC.
KNDBWM.exe is usually located in the ‘C:\Windows\System32\drivers\RivetNetworks\Killer\’ folder.
None of the anti-virus scanners at VirusTotal reports anything malicious about KNDBWM.exe.
If you have additional information about the file, please share it with the FreeFixer users by posting a comment at the bottom of this page.
Vendor and version information [?]
The following is the available information on KNDBWM.exe:
| Property | Value |
|---|---|
| Product name | SmartByte |
| Company name | Rivet Networks LLC |
| File description | Rivet Networks Dynamic Bandwidth Manager |
| Internal name | RNDBWM.exe |
| Original filename | RNDBWM.exe |
| Legal copyright | Copyright (C) 2016 |
| Product version | 2.2.3217.0 |
| File version | 2.2.3217.0 |
Here’s a screenshot of the file properties when displayed by Windows Explorer:
| Product name | SmartByte |
| Company name | Rivet Networks LLC |
| File description | Rivet Networks Dynamic Bandwidth Man.. |
| Internal name | RNDBWM.exe |
| Original filename | RNDBWM.exe |
| Legal copyright | Copyright (C) 2016 |
| Product version | 2.2.3217.0 |
| File version | 2.2.3217.0 |
Digital signatures [?]
KNDBWM.exe has a valid digital signature.
| Property | Value |
|---|---|
| Signer name | Rivet Networks LLC |
| Certificate issuer name | Symantec Class 3 SHA256 Code Signing CA |
| Certificate serial number | 55747fc3cf0818c2c20be224cdded04e |
VirusTotal report
None of the 72 anti-virus programs at VirusTotal detected the KNDBWM.exe file.
Sandbox Report
The following information was gathered by executing the file inside Cuckoo Sandbox.
Summary
Successfully executed process in sandbox.
Generic
Signatures
Network
Screenshots
TCP/UDP Listening Ports [?]
KNDBWM.exe has been reported to listen on the following TCP/UDP ports.
| Port | Protocol | # Occurrences |
|---|---|---|
| 12700 | UDP v4 | 2 |
Hashes [?]
| Property | Value |
|---|---|
| MD5 | 006c6363265d260621c4bd201b3a8462 |
| SHA256 | 3d681dd0e81e27ba41611eaba75471213060183dfcdeb1814be1c20222c7db0a |
Error Messages
These are some of the error messages that can appear related to kndbwm.exe:
kndbwm.exe has encountered a problem and needs to close. We are sorry for the inconvenience.
Rivet Networks Dynamic Bandwidth Manager has stopped working.
kndbwm.exe is not a valid Win32 application.
What will you do with KNDBWM.exe?
To help other users, please let us know what you will do with KNDBWM.exe:
What did other users do?
The poll result listed below shows what users chose to do with KNDBWM.exe. 83% have voted for removal. Based on votes from 29 users.
NOTE: Please do not use this poll as the only source of input to determine what you will do with KNDBWM.exe.
Malware or legitimate?
If you feel that you need more information to determine if your should keep this file or remove it, please read this guide.
And now some shameless self promotion 😉

If you have questions, feedback on FreeFixer or the freefixer.com website, need help analyzing FreeFixer’s scan result or just want to say hello, please contact me. You can find my email address at the contact page.
Comments
Please share with the other users what you think about this file. What does this file do? Is it legitimate or something that your computer is better without? Do you know how it was installed on your system? Did you install it yourself or did it come bundled with some other software? Is it running smoothly or do you get some error message? Any information that will help to document this file is welcome. Thank you for your contributions.
I’m reading all new comments so don’t hesitate to post a question about the file. If I don’t have the answer perhaps another user can help you.
Борьба за производительность или кто отнимал процессорное время
Началось все с «Неваляшки». О том, что это такое и для чего это было надо описано тут: http://habrahabr.ru/company/oktell/blog/108726/. То есть, мы имели четыре работающих сервера call-центра, одинаково настроенных и с примерно одинаковой конфигурацией внешних и внутренних линий, пользователей и настройкой внутренней БД. На каждый из серверов со стороны оператора связи поступала равномерная звонковая нагрузка, но сервера реагировали на это по разному!
N Конфигурация сервера и операционная система
1 T1300 @ 1.66 1 Гб ОЗУ, Windows 2003 Standard Ed. R2 SP1 32 bit
2 Intel Core Duo E8400 @ 3000 4 Гб ОЗУ, Windows 2003 Standard Ed.SP1 32 bit
3 Intel Pentium 4 3GHz 2 Гб ОЗУ, Windows 2003 Standard Ed. SP2 32 bit
4 E3400 @ 2.60 2 Гб ОЗУ, Windows 2003 Standard Ed. R2 SP2 32 bit
Столкнулись с жалобами на качество связи. Причем, жаловались не на каждый звонок, а на «некоторые». Жаловались на «кваки», очень характерные для VoIP телефонии. Довольно оперативно было выяснено, что причиной появления «кваков» было непредсказуемый рост занятости процессора на одном (первом) из серверов call-центр при возрастании нагрузки. И это при всем притом, что другие сервера такой нагрузки вообще не замечали, и никакого роста нагрузки на процессор при таком же количестве вызовов не наблюдалось. Даже, несмотря на то, что первый сервер был значительно слабее всех остальных, такой картины — роста занятости процессора до 100% — наблюдаться не должно было.
Не стоит, наверное, говорить, что мы прошли стандартный путь «протирки фар», «пинания колес» и пр. В конечном итоге пришли к мнению, что ни настройки самого call-центр, ни его СУБД, на поведение сервера не влияет. Отправной точкой для понимания сущности проблемы послужил тот факт, что в диспетчере задач в списке процессов ни один из процессов не занимал процессорного времени, вместе с тем, на мониторинге быстродействия хронология загрузки процессора показывала непрерывную загрузку процессора ядра на уровне 20%.

Задались целью получить ответ на вопрос чем же занято ядро в том случае, когда нагрузки на все остальные сервисы отсутствуют. Process Explorer — штатная утилита от Microsoft — подсказала, что основным потребителем ресурсов является «Hardware Interrupts». Для дальнейшего анализа причин такого потребления была скачана другая штатная утилита от Microsoft — «Kernrate View». Как и было описано в рекомендациях по использованию, в командной строке выполнили «C:\Program Files\KrView\Kernrates\Kernrate_i386_XP.exe >> log.txt» и, спустя некоторое время, нажав Ctrl-C, остановили. Получили файл log.txt, содержащий информацию вида:
/==============================\
\==============================/
Date: 2010/12/08 Time: 1:09:14
Machine Name: RESERVCC
Number of Processors: 1
PROCESSOR_ARCHITECTURE: x86
PROCESSOR_LEVEL: 6
PROCESSOR_REVISION: 0e08
Physical Memory: 1015 MB
Pagefile Total: 2450 MB
Virtual Total: 2047 MB
PageFile1: \??\C:\pagefile.sys, 1524MB
OS Version: 5.2 Build 3790 Service-Pack: 1.0
WinDir: C:\WINDOWS
Kernrate User-Specified Command Line:
Kernrate_i386_XP.exe
Kernel Profile (PID = 0): Source= Time,
Using Kernrate Default Rate of 25000 events/hit
P0 K 0:00:36.671 (28.5%) U 0:00:09.671 ( 7.5%) I 0:01:22.343 (64.0%) DPC 0:00:29.484 (22.9%) Interrupt 0:00:00.281 ( 0.2%)
Interrupts= 136809, Interrupt Rate= 1063/sec.
Total Profile Time = 128687 msec
Total Avg. Rate
Context Switches, 609407, 4736/sec.
System Calls, 5078088, 39461/sec.
Page Faults, 119817, 931/sec.
I/O Read Operations, 11671, 91/sec.
I/O Write Operations, 209479, 1628/sec.
I/O Other Operations, 229216, 1781/sec.
I/O Read Bytes, 39981700, 3426/ I/O
I/O Write Bytes, 19240135, 92/ I/O
I/O Other Bytes, 7130204725, 31107/ I/O
— Results for Kernel Mode:
— OutputResults: KernelModuleCount = 99
Percentage in the following table is based on the Total Hits for the Kernel
Time 44651 hits, 25000 events per hit — Module Hits msec %Total Events/Sec
intelppm 27457 128685 61 % 5334149
hal 12284 128685 27 % 2386447
ntkrnlpa 2868 128685 6 % 557174
win32k 525 128685 1 % 101993
alder9xp 427 128685 0 % 82954
tcpip 254 128685 0 % 49345
Ntfs 251 128685 0 % 48762
afd 120 128685 0 % 23312
RDPDD 109 128685 0 % 21175
e1e5132 109 128685 0 % 21175
iaStor 97 128685 0 % 18844
NDIS 39 128685 0 % 7576
RDPWD 31 128685 0 % 6022
fltMgr 26 128685 0 % 5051
amon 12 128685 0 % 2331
termdd 10 128685 0 % 1942
CLASSPNP 10 128685 0 % 1942
ftdisk 7 128685 0 % 1359
ipsec 3 128685 0 % 582
Npfs 2 128685 0 % 388
USBPORT 2 128685 0 % 388
volsnap 2 128685 0 % 388
TDTCP 1 128685 0 % 194
rdbss 1 128685 0 % 194
ws2ifsl 1 128685 0 % 194
netbt 1 128685 0 % 194
watchdog 1 128685 0 % 194
PartMgr 1 128685 0 % 194
Далее определяем какой именно драйвер загружает процесс «Hardware Interrupts». В списке лога «Kernrate View» он будет верхним, и рядом в процентах будет показана его доля занимания ядра. Тут стоит обратить внимание, что проценты показывают не общий процент от загрузки системы, а процент загрузки серверного ядра драйверами.
Определили, что этим драйвером является Intelppm (Intel processor power manager). Дальше — google нам в помощь. Интернет велик, могуч и безграничен. Довольно быстро поняли, что проблема с Intelppm возникает, не так уж и часто, вместе с тем, мы были не одни столкнувшиеся с такой бедой. Результат не замедлил себя обнаружить, нашлась статья, в которой не только описывается сама проблема, но и обозначается путь ее решения (Постоянный адрес оригинала статьи тут: http://www.osp.ru/text/print/302/5818429.html)
Далее следуя рекомендациям Стивена Догерти понимаем, что intelppm, является драйвером управления электропитанием процессора, который не нужен на сервере, где питание от аккумулятора и не используется вовсе. Вариантов решений было предложено несколько: переустановка, обновление или остановка неисправного драйвера. Какой варианты выберете вы — смотрите сами, вполне логично тут следовать оригинальным рекомендациям Догерти.
Мы полезли в реестр. Данные драйвера процессора Intel находятся в разделе реестра HKEY_LOCAL_MACHINE/SYSTEM/Current Control Set/Services/intelppm. Для отключения драевера intelppm изменили значение параметра Start с 1 на 4. Специалисты Microsoft, конечно, рекомендуют делать резервную копию реестра, но мы то с вами русские люди, да и что там один параметр поменять с 1 на 4. 
Рестарт помог убедиться, что загрузка процессора в среднем находится в пределах 60-70% даже при полной(!) загрузке сервера call-центр звонками.
Очень интересно выглядит при этом диспетчер устройств: 
Жалуется, ябедничает, плачет: «Драйвер для этого устройства был отключен. Возможно, необходимые функции исполняет другой драйвер. (Код 32), Нажмите кнопку „Диагностика“, чтобы запустить мастер диагностики для данного устройства.» Но на безопасность полетов это уже не влияет 😉
Пока расследование не разлучит нас: малварь, которая может сидеть в сети компании годами
Недавно мы расследовали АРТ-атаку на одну российскую компанию и нашли много занятного софта. Сначала мы обнаружили продвинутый бэкдор PlugX, популярный у китайских группировок, АРТ-атаки которых обычно нацелены на похищение конфиденциальной информации, а не денег. Затем из скомпрометированной сети удалось вытащить несколько других схожих между собой бэкдоров (nccTrojan, dnsTrojan, dloTrojan) и даже общедоступных утилит.
Программы, используемые в этой преступной кампании, не отличаются сложностью, за исключением, может быть, PlugX. К тому же три из четырех вредоносов использовали при запуске давно известную технику DLL hijacking. Тем не менее, как показало наше исследование, даже при таких условиях злоумышленники могут годами оставаться в скомпрометированных сетях.
Мы решили изучить обнаруженный софт и поделиться своими наблюдениями.
PlugX
PlugX — сложная вредоносная программа. Мы постараемся рассказать о ее основных функциях, а более подробное описание малвари можно найти в отчете Dr. Web.
Запуск PlugX
PlugX, как правило, распространяется в виде самораспаковывающихся архивов, содержащих:
Такой набор характерен для техники DLL hijacking, при которой злоумышленник заменяет легитимную DLL на вредоносную. При этом малварь получает возможность работать от имени легитимного процесса и обходить таким образом средства защиты (рис. 1).
Рис. 1. Наглядное представление техники DLL hijacking
Рассмотрим в качестве примера один из экземпляров PlugX, характеристики которого приведены в табл. 1.
| Свойство | EXE | DLL | Зашифрованная нагрузка |
|---|---|---|---|
| Имя файла | mcut.exe | mcutil.dll | mcutil.dll.bbc |
| Тип файла | PE32 executable (EXE) | PE32 executable (DLL) | None |
| Размер (в байтах) | 140 576 | 4 096 | 180 358 |
| Время компиляции | 13 июня 2008 года 02:39:28 | 9 декабря 2014 года 10:06:14 | — |
| MD5 | 884d46c01c762ad6ddd2759fd921bf71 | e9a1482a159d32ae57b3a9548fe8edec | 2d66d86a28cd28bd98496327313b4343 |
| SHA-1 | d201b130232e0ea411daa23c1ba2892fe6468712 | a2a6f813e2276c8a789200c0e9a8c71c57a5f2d6 | 7bcf4f196578f2a43a2cd47f0b3c8d295120b646 |
| SHA-256 | 3124fcb79da0bdf9d0d1995e37b06f7929d83c1c4b60e38c104743be71170efe | 2f81cf43ef02a4170683307f99159c8e2e4014eded6aa5fc4ee82078228f6c3c | 0c831e5c3aecab14fe98ff4f3270d9ec1db237f075cd1fae85b7ffaf0eb2751 |
Вот что происходит при запуске невредоносного исполняемого файла (EXE) из пакета.
Сначала одна из импортируемых им библиотек (отдельная DLL) заменяется вредоносной. После загрузки в память процесса DLL открывает третий файл из пакета PlugX, который обходит средства защиты за счет отсутствия видимого исполняемого кода. Тем не менее он содержит шелл-код, после исполнения которого в памяти расшифровывается еще один дополнительный шелл-код. Он с помощью функции RtlDecompressBuffer() распаковывает PlugX (DLL). При открытии мы видим, что сигнатуры MZ и PE в исполняемом файле PlugX заменены на XV (рис. 2) — скорее всего, это тоже нужно, чтобы скрыть модуль от средств защиты.
Рис. 2. Исполняемый файл PlugX в распакованном виде с измененными сигнатурами MZ и PE
Наконец, запускается распакованная вредоносная библиотека, и управление передается ей.
В другом экземпляре PlugX мы обнаружили интересную особенность: малварь пыталась скрыть некоторые библиотечные вызовы от песочниц. При восстановлении импортов вместо адреса импортируемой функции сохранялся адрес тремя байтами ранее. Результат для функции SetFileAttributesW() виден на рис. 3.
Рис. 3. При получении адреса функции SetFileAttributesW() сохраняется адрес 0x7577D4F4
В табл. 2 приведены характеристики этого экземпляра.
| Свойство | EXE | DLL | Зашифрованная нагрузка |
|---|---|---|---|
| Имя файла | mcut.exe | mcutil.dll | mcutil.dll.bbc |
| Тип файла | PE32 executable (EXE) | PE32 executable (DLL) | None |
| Размер | 140 576 | 4 096 | 179 906 |
| MD5 | 884d46c01c762ad6ddd2759fd921bf71 | 12ee1f96fb17e25e2305bd6a1ddc2de9 | e0ae93f9cebcba2cb44cec23993b8917 |
| SHA-1 | d201b130232e0ea411daa23c1ba2892fe6468712 | bf25f1585d521bfba0c42992a6df5ac48285d763 | f0efdb723a65e90afaebd56abe69d9f649ca094c |
| SHA-256 | 3124fcb79da0bdf9d0d1995e37b06f7929d83c1c4b60e38c104743be71170efe | 97ad6e95e219c22d71129285299c4717358844b90860bb7ab16c5178da3f1686 | 81e53c7d7c8aa8f98c951106a656dbe9c931de465022f6bafa780a6ba96751eb |
б)
Рис. 4. Фрагмент декомпилированного кода (а) и соответствующий ему фрагмент листинга перехваченных инструкций (б), где встречается вызов функции SetFileAttributesW()
Основная нагрузка PlugX не сохраняется в расшифрованном виде на диске.
Работа PlugX
После запуска вредоносная программа расшифровывает конфигурацию, которая содержит адреса серверов управления, а также информацию, необходимую для дальнейшего функционирования (например, способ закрепления в системе или путь, по которому копируются файлы малвари).
При этом данные для конфигурации могут браться из основного загрузчика или из отдельного файла в текущей рабочей директории. Из того же файла может быть подтянута новая конфигурация при ее обновлении в ходе взаимодействия с сервером управления.
То, как вредонос будет вести себя дальше, во многом определяет его конфигурация.
В зависимости от значения check_flag в конфигурации PlugX вредоносная программа может начать поиск в зараженной системе сетевого адаптера, MAC-адрес которого совпадает с адресом, заданным в самой малвари. В случае совпадения вредоносная программа завершит свое исполнение. Вероятно, таким образом она пытается обнаружить виртуальную среду.
Если значение mode_flag равно 0, вредоносная программа закрепляется в системе (подробнее в разделе «Закрепление в системе»). Затем она переходит к инициализации плагинов и взаимодействию с сервером управления (подробнее в разделе «Функциональность плагинов и исполнение команд»).
Если значение mode_flag равно 2, вредоносная программа сразу переходит к инициализации плагинов и взаимодействию с сервером управления.
Если значение mode_flag равно 3, вредоносная программа внедряет шелл-код в Internet Explorer. Передача управления вредоносному коду осуществляется с помощью функции CreateRemoteThread(). Также производится инициализация плагинов, и создается именованный пайп, через который вредоносная программа получает команды, предназначенные для исполнения плагинами.
Закрепление в системе
Если конфигурация PlugX предусматривает закрепление вредоноса в зараженной системе, то в ней прописан каталог, в который будут скопированы компоненты малвари.
Анализируемый образец выбирает одну из следующих директорий в зависимости от разрядности малвари:
В зависимости от persistence_flag PlugX может закрепляться:
Помним, что малварь может и не закрепляться вовсе.
В зависимости от конфигурации вредоносная программа может также попытаться создать процесс с повышенными привилегиями с последующим внедрением в него кода. В конфигурации могут быть перечислены до четырех целевых процессов.
Функциональность плагинов PlugX и исполняемые команды
Основная функциональность бэкдора реализована с помощью так называемых плагинов. Фрагмент функции, в которой производится инициализация плагинов, приведен на рис. 5.
Рис. 5. Фрагмент инициализации плагинов PlugX
PlugX может управлять процессами и службами, работать с файловой системой, вносить изменения в реестр. Он также имеет компоненты кейлоггера и скринлоггера и может получать удаленный доступ к зараженной системе — все это дает обширные возможности злоумышленникам в скомпрометированной сети.
Полный перечень функций вредоносной программы, доступной через плагины, приведен в табл. 3.
Табл. 3. Функциональность PlugX, доступная через плагины
| Плагин | Команда | Функциональные возможности |
| DISK | Собрать информацию по всем дискам (тип и свободное пространство) | |
| Перечислить файлы в директории | ||
| Перечислить файлы | ||
| Прочитать файл | ||
| Создать директорию и сохранить в нее файл | ||
| Создать директорию | ||
| Создать новый рабочий стол и запустить процесс | ||
| Копировать, переместить, переименовывать или удалить файл | ||
| Получить значение переменной окружения | ||
| KeyLogger | Отправить данные кейлоггера на сервер управления | |
| Nethood | Перечислить сетевые ресурсы | |
| Установить соединение с сетевым ресурсом | ||
| Netstat | Получить таблицу TCP | |
| Получить таблицу UDP | ||
| Установить состояние TCP | ||
| Option | Заблокировать экран компьютера | |
| Отключить компьютер (принудительно) | ||
| Перезагрузить компьютер | ||
| Отключить компьютер (безопасно) | ||
| Показать окно с сообщением | ||
| PortMap | Возможно, запустить маппинг портов | |
| Process | Получить информацию о процессах | |
| Получить информацию о процессе и модулях | ||
| Завершить процесс | ||
| Regedit | Перечислить подразделы ключа реестра | |
| Создать ключ реестра | ||
| Удалить ключ реестра | ||
| Скопировать ключ реестра | ||
| Перечислить значения ключа реестра | ||
| Задать значение ключа реестра | ||
| Удалить значение из ключа реестра | ||
| Получить значение из ключа реестра | ||
| Screen | Использовать удаленный рабочий стол | |
| Сделать скриншот | ||
| Найти скриншоты в системе | ||
| Service | Получить информацию о сервисах в системе | |
| Изменить конфигурацию сервиса | ||
| Запустить сервис | ||
| Управлять сервисом | ||
| Удалить сервис | ||
| Shell | Запустить cmd-шелл | |
| SQL | Получить список баз данных | |
| Получить список описаний драйверов | ||
| Выполнить SQL-команду | ||
| Telnet | Настроить Telnet |
Фрагмент функции обработки команд, полученных от сервера управления приведена на рис. 6.
Рис. 6. Команды сервера управления, которые получает PlugX
Описание команд приведено в табл. 4.
Табл. 4. Команды сервера управления, которые получает PlugX
| Команда | Описание |
|---|---|
| 0x1 | Отправить на сервер управления данные о зараженной системе: — имя компьютера; — имя пользователя; — информация о CPU; — текущее использование памяти системой; — информация об операционной системе; — системные дата и время; — системная информация; — язык системы |
| 0x5 | Самоудалиться (удалить службу, очистить реестр) |
| 0x3 | Передать команды плагинам со сменой протокола взаимодействия |
| 0x6 | Отправить текущую конфигурацию PlugX на сервер управления |
| 0x7 | Получить с сервера управления новую конфигурацию и обновить текущую |
| 0x8 | Отправить список процессов с внедренным шелл-кодом |
| default | Передать команды плагинам |
nccTrojan
Один из обнаруженных нами бэкдоров найден в отчете VIRUS BULLETIN и назван авторами nccTrojan по константному значению в коде основного пейлоада. Характеристики попавшегося нам образца малвари приведены в табл. 5.
| Свойство | EXE | DLL |
|---|---|---|
| Имя файла | instsrv.exe | windowsreskits.dll |
| Тип файла | PE32 executable (EXE) | PE32 executable (DLL) |
| Размер (в байтах) | 83 968 | 514 048 |
| Время компиляции | 18 декабря 2019 года 03:13:03 | 21 марта 2020 года 15:19:04 |
| MD5 | c999b26e4e3f15f94771326159c9b8f9 | 056078b1c424667e6a67f9867627f621 |
| SHA-1 | ec12c469463029861bd710aec3cb4a2c01907ad2 | 5bd080285a09c0abf742fb50957831310d9d9769 |
| SHA-256 | 07d728aa996d48415f64bac640f330a28e551cd565f1c5249195477ccf7ecfc5 | 3be516735bafbb02ba71d56d35aee8ce2ef403d08a4dc47b46d5be96ac342bc9 |
Запуск nccTrojan
Работа nccTrojan
nccTrojan расшифровывает конфигурацию, хранящуюся по определенному смещению в оверлее. Конфигурация зашифрована с помощью алгоритма AES-CFB-256, он же используется для шифрования взаимодействия с сервером управления. Пары «ключ шифрования + вектор инициализации» захардкоржены и различны для шифрования конфигурации и взаимодействия с сервером управления.
Расшифрованная конфигурация содержит информацию о сервере управления и выглядит следующим образом:
Если соединение установлено, то на сервер управления отправляется следующая информация:
При этом из собранных данных формируется строка, которая дальше зашифровывается и отправляется на сервер управления. Формат создаваемой строки:
Далее вредоносная программа переходит к взаимодействию с сервером управления и может исполнять команды, приведенные в табл. 6.
Табл. 6. Команды, исполняемые nccTrojan
| Команда | Назначение |
|---|---|
| 0x2 | Запустить сmd-шелл |
| 0x3 | Выполнить команду через cmd-шелл |
| 0x4 | Записать данные в файл |
| 0x5 | Получить информацию о дисках C-Z (тип, свободный объем памяти) |
| 0x6 | Получить информацию о файлах |
| 0x8 | Запустить процесс |
| 0xA | Удалить файл или директорию |
| 0xC | Прочитать файл |
| 0xF | Проверить наличие файла |
| 0x11 | Сохранить файл |
| 0x13 | Получить список запущенных процессов |
| 0x15 | Завершить процесс |
| 0x17 | Скопировать файл |
| 0x1A | Переместить файл |
| 0x1D | Запустить cmd-шелл с правами пользователя |
dnsTrojan
Следующий бэкдор мы обнаружили впервые: на момент расследования мы не нашли упоминаний о нем в отчетах других экспертов. Его отличительная особенность — общение с сервером управления через DNS. В остальном по своей функциональности вредоносная программа схожа с бэкдором nccTrojan. Чтобы сохранить единообразие в названиях найденной малвари, назвали ее dnsTrojan.
| Свойство | EXE |
|---|---|
| Имя | a.exe.ok |
| Тип файла | PE32 executable (EXE) |
| Размер (в байтах) | 417 280 |
| Время компиляции | 13 октября 2020 года 20:05:59 |
| MD5 | a3e41b04ed57201a3349fd42d0ed3253 |
| SHA-1 | 172d9317ca89d6d21f0094474a822720920eac02 |
| SHA-256 | 826df8013af53312e961838d8d92ba24de19f094f61bc452cd6ccb9b270edae5 |
Запуск dnsTrojan
После запуска вредоносная программа извлекает из ресурсов, распаковывает и сохраняет в рабочей директории два файла:
Работа dnsTrojan
Все свои действия вредоносная программа логирует в файл %ProgramData%\logD.dat, при этом записанные данные похожи на отладочную информацию для злоумышленников (рис. 7).
Рис. 7. Фрагмент файла logD.dat
Взаимодействие с сервером управления осуществляется с использованием DNS-туннелирования. Данные передаются серверу управления в виде DNS-запроса TXT-записи в зашифрованном виде.
Сразу после запуска на сервер управления отправляются следующие данные:
Из них формируется сообщение вида 8SDXCAXRZDJ;O0V2m0SImxhY;6.1.1;1;00-13-d2-e3-d6-2e;2020113052831619.
Все передаваемые на сервер управления данные преобразуются следующим образом:
При формировании домена, для которого запрашивается TXT-запись, после каждого 64-го символа ставится точка. Запросы, отправляемые вредоносной программой, можно увидеть на рис. 8.
В ответ на запрос, отправленный на предыдущем шаге из TXT-записей, dnsTrojan получает команды сервера и может исполнить их (табл. 8).
| Команда | Назначение |
|---|---|
| 0x1 | Получить онлайн-данные |
| 0x2 | Запустить сmd-шелл |
| 0x3 | Выполнить команду через cmd-шелл |
| 0x4 | Получить информацию о дисках C–Z (тип, свободный объем памяти) или файлах |
| 0x6 | Прочитать файл |
| 0x7 | Скопировать файл |
| 0x8 | Удалить файл |
| 0x9 | Проверить наличие файла |
| 0xA | Сохранить файл |
| 0xB | Установить время бездействия программы (в минутах) |
| 0xD | Самоудалиться (очистить реестр) |
dloTrojan
dloTrojan — еще одна обнаруженная в процессе расследования вредоносная программа, которую мы классифицировали как бэкдор. Эта малварь не относится ни к одному из известных семейств вредоносов.
Характеристики файлов исследуемого нами образца приведены в табл. 9.
| Свойство | EXE | DLL |
|---|---|---|
| Имя | ChromeFrameHelperSrv.exe | chrome_frame_helper.dll |
| Тип файла | PE32 executable (EXE) | PE32 executable (DLL) |
| Размер (в байтах) | 82 896 | 240 128 |
| Время компиляции | 12 июля 2013 года 19:11:41 | 14 сентября 2020 года 16:34:44 |
| MD5 | 55a365b1b7c50887e1cb99010d7c140a | bd23a69c2afe591ae93d56166d5985e1 |
| SHA-1 | 6319b1c831d791f49d351bccb9e2ca559749293c | 3439cf6f9c451ee89d72d6871f54c06cb0e0f1d2 |
| SHA-256 | be174d2499f30c14fd488e87e9d7d27e0035700cb2ba4b9f46c409318a19fd97 | f0c07f742282dbd35519f7531259b1a36c86313e0a5a2cb5fe1dadcf1df9522d |
Запуск dloTrojan
На сцену опять выходит DLL hijacking.
Итак, вредоносная программа dloTrojan состоит из двух компонентов:
После запуска исполняемого EXE-файла подгружается код вредоносной DLL. При этом библиотека проверяет имя процесса, в который она загружена, и оно должно соответствовать имени ChromeFrameHelperSrv.exe. В противном случае, вредоносный код завершит свое исполнение.
Далее библиотека расшифровывает вредоносный исполняемый файл, код которого внедряется в еще один запущенный процесс ChromeFrameHelperSrv.exe с использованием техники Process Hollowing.
Работа dloTrojan
Вредоносная программа пытается получить данные значения с именем TID из одного из двух ключей реестра (это зависит от имеющихся привилегий в системе):
Если же значение в реестре отсутствует, создается один из указанных ключей реестра. В параметре TID прописывается строка из 16 произвольных символов, которую в дальнейшем можно рассматривать как ID зараженной системы.
Строки во вредоносной программе зашифрованы методом простого сложения по модулю двух с одним байтом (отличается для различных строк).
Затем малварь расшифровывает адрес сервера управления. В зависимости от конфигурации вредоносная программа может иметь несколько адресов, в текущей конфигурации адрес сервера управления один.
Теперь dloTrojan устанавливает соединение с сервером управления. Если подключиться к серверу не удалось, малварь пытается найти настроенные прокси-серверы одним из способов:
Далее на сервер управления отправляется следующая информация о зараженной системе:
Данные передаются на сервер управления в зашифрованном виде.
В конце концов вредоносная программа получает возможность исполнять команды сервера управления: запускать cmd-шелл, создавать и удалять файлы, собирать информацию о дисках.
Перечень возможных команд приведен в табл. 10.
Табл. 10. Команды, исполняемые dloTrojan
| Команда | Назначение |
|---|---|
| 0x1 | Получить количество миллисекунд, прошедших с момента запуска системы |
| 0x2 | Запустить сmd-шелл |
| 0x3 | Выполнить команду через cmd-шелл |
| 0x4 | Закрыть cmd-шелл |
| 0x5 | Проверить существование файла. Если файла нет, создать его |
| 0x6 | Создать файл |
| 0x7 | Получить данные файла (размер, временные метки) |
| 0x8 | Прочитать файл |
| 0x9 | Получить информацию о дисках C–Z (тип, объем свободной памяти) |
| 0xA | Перечислить файлы |
| 0xB | Удалить файл |
| 0xC | Переместить файл |
| 0xD | Запустить процесс |
| 0xE | Сделать скриншот |
| 0xF | Перечислить сервисы |
| 0x10 | Запустить сервис |
| 0x11 | Перечислить процессы и модули |
| 0x12 | Завершить процесс, затем перечислить процессы и модули |
| 0x13 | Закрыть сокет |
И еще несколько программ, которые мы раскопали в ходе расследования
Вернемся к общедоступным утилитам, найденным на зараженных системах. С их помощью можно залезть в систему, утащить конфиденциальные данные и выполнить другие вредоносные действия. Ловите краткое описание каждой.
GetPassword
GetPassword предназначена для получения паролей из зараженной системы. Раньше исходный код утилиты лежал в репозитории MimikatzLite, но сейчас его почему-то удалили. Можем только поделиться скриншотом на рис. 9.
Рис. 9. Скриншот работы утилиты GetPassword
Quarks PwDump
Еще одна утилита для извлечения паролей из ОС Windows.
Исходный код можно найти в репозитории 0daytool-quarkspwdump. Скриншот утилиты приведен на рис. 10.
Рис. 10. Скриншот работы утилиты Quarks PwDump
wpmd v 2.3 (beta)
wpmd (windows password and masterkey decrypt) также предназначена для получения паролей в ОС Windows. Увы, источник мы не нашли, поэтому можем только показать скриншот (рис. 11).
Рис. 11. Скриншот работы утилиты wpmd v 2.3 (beta)
os.exe
os.exe позволяет определить версию ОС Windows (рис. 12). Источник тоже не найден 🙁
Рис. 12. Скриншот работы утилиты os.exe
nbtscan 1.0.35
nbtscan — утилита командной строки, предназначенная для сканирования открытых серверов имен NETBIOS в локальной или удаленной TCP/IP-сети. Она обеспечивает поиск открытых общих ресурсов (рис. 13). Доступна на ресурсе Unixwiz.net.
Рис. 13. Скриншот работы утилиты nbtscan
Это расследование в очередной раз убедило нас, что даже заезженные и понятные техники способны доставить жертвам много неприятностей. Злоумышленники могут годами копаться в IT-инфраструктуре жертвы, которая и подозревать ничего не будет. Думаем, выводы вы сделаете сами 🙂
PlugX (SHA256: EXE, DLL, Shell-code)
PlugX-executor: (SHA256: EXE)
nccTrojan (SHA256: EXE, DLL)
dnsTrojan (SHA256: EXE)
dloTrojan (SHA256: EXE, DLL)










