Підтримка
Цілодобова підтримка | Правила звернення

Зателефонуйте

Глобальна підтримка:
+7 (495) 789-45-86

Поширені запитання |  Форум |  Бот самопідтримки Telegram

Ваші запити

  • Всі: -
  • Незакриті: -
  • Останій: -

Зателефонуйте

Глобальна підтримка:
+7 (495) 789-45-86

Зв'яжіться з нами Незакриті запити: 

Профіль

Профіль

Вирусная библиотека

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

Win32.Sector в вирусной библиотеке:

Файловый вирус, предназначенный для загрузки других модулей с использованием протокола P2P. Полезная нагрузка представляет собой исполняемый файл, упакованный UPX, который при запуске инициализирует данные — порт UDP:

GetComputerNameA((LPSTR)&buf[1], &size);
if ( lstrlenA((LPCSTR)&buf[1]) > 2 )
{
    B1 = buf[1];
    Bn = buf[lstrlenA((LPCSTR)&buf[1])];
    LOWORD(PORT) = Bn * B1 + 1060;
}

и порт TCP:

TCP_PORT=PORT+19

Открывает расшаренную память, созданную ранее шелл-кодом с именем purity_control_4428, в которой содержатся актуальные конфигурационные данные и пары IP-адрес – порт (ноды) для подключения к P2P-сети. Открывает расшаренную память hh8geqpHJTkdns6, в которую заносит список нод во время работы модуля. В процессе работы сохраняет ноды в системном реестре Windows:

HKEY_CURRENT_USER\Software\<[a-z]*>\%c%d_%d
%c - PC_SEED
%d - номер параметра (addr,port,id_peer,count_answer)
%d - индекс ноды

Конфигурационные данные большого объема сохраняет в файлах:

%SYSTEM32%\<[a-z]*>\[a-z]*.log

или

%TEMP%\<[a-z]*>\[a-z]*.log

Также сохраняет в реестре список URL:

HKEY_CURRENT_USER\Software\PC_SEED*PC_SEED\%d\
%d - номер параметра (список url, подпись, размер данных и т.д.)

Инициализирует публичный ключ:

E=
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00  00 00 00 00 00 01 00 01
 
 
N=
BB D2 96 8E ED 0B 93 8A  82 E4 E9 BC C3 C5 32 72
4C 08 AA 56 9F 2D 64 0F  1B 86 68 0E 2B 62 E9 C6
35 6D 75 B6 32 2D 4F A8  B8 D9 2A 44 8B F0 7F E0
D9 8E BE 66 9D A6 7A 9A  6D E1 45 F1 D3 48 01 0D
39 2E 9D 2A 45 FB 0B FB  1D 96 F3 B7 4F 55 E5 E1
16 5B F7 A1 CC 7C 87 C0  C8 9C EF 4E CE 29 58 E2
99 BD 8A 7A 55 BE B4 1C  D9 79 52 25 D8 28 86 7B
81 39 98 5F 2C 6F 14 BB  A5 6B CE 44 E5 91 93 38
8B 9A C1 74 46 84 E1 26  EC 04 94 96 75 09 E3 B5
88 D6 08 F0 4A B7 84 D3  13 2F 00 CC D5 2A 8C 17
07 09 DE 6F B0 D3 D6 2B  C6 A6 9D 38 18 8C 74 9D
86 16 D5 48 6E 97 32 DB  E1 4E F8 04 A6 00 7C 16
2E 70 1C 23 37 DD 5A 52  76 62 70 D4 86 66 6E DF
0C E9 A1 68 F9 5E E8 DD  09 0C 02 7D 35 D0 54 E7
00 C0 14 9F CE 4A 9F F3  99 50 1A 0B CD CC FF 05
B9 04 12 E2 11 76 2F FF  A4 6E 64 18 E0 D0 7B 3B

Затем вирус запускает несколько тредов, в которых реализованы перечисленные ниже подсистемы.

Инжекты

Встраивает себя во все запущенные процессы с использованием функций VirtualAllocEx/WriteProcessMemory/CreateRemoteThread.

Остановка процессов и удаление системных служб

Пытается установить в системе собственный драйвер:

SYSTEM32\drivers\[a-z]*.sys

С использованием данного драйвера, либо путем вызова функции TerminateProcess, пытается остановить следующие процессы (если они запущены):

  • AVPM
  • 2GUARD
  • A2CMD
  • A2SERVICE
  • A2FREE
  • AVAST
  • ADVCHK
  • AHPROCMONSERVER
  • AIRDEFENSE
  • ALERTSVC
  • AVIRA
  • AMON
  • TROJAN
  • AVZ
  • ANTIVIR
  • APVXDWIN
  • ARMOR2NET
  • ASHAVAST
  • ASHDISP
  • ASHENHCD
  • ASHMAISV
  • ASHPOPWZ
  • ASHSERV
  • ASHSIMPL
  • ASHSKPCK
  • ASHWEBSV
  • ASWUPDSV
  • ASWSCAN
  • AVCIMAN
  • AVCONSOL
  • AVENGINE
  • AVESVC
  • AVEVAL
  • AVEVL32
  • AVGAM
  • AVGCC.AVGCHSVX
  • AVGCSRVX
  • AVGNSX
  • AVGCC32
  • AVGCTRL
  • AVGEMC
  • AVGFWSRV
  • AVGNT
  • AVCENTER
  • AVGNTMGR
  • AVGSERV
  • AVGTRAY
  • AVGUARD
  • AVGUPSVC
  • AVGWDSVC
  • AVINITNT
  • AVKSERV
  • AVKSERVICE
  • AVKWCTL
  • AVP
  • AVP32
  • AVPCC
  • AVAST
  • AVSERVER
  • AVSCHED32
  • AVSYNMGR
  • AVWUPD32
  • AVWUPSRV
  • AVXMONITOR
  • AVXQUAR
  • BDSWITCH
  • BLACKD
  • BLACKICE
  • CAFIX
  • BITDEFENDER
  • CCEVTMGR
  • CFPCONFIG
  • CCSETMGR
  • CFIAUDIT
  • CLAMTRAY
  • CLAMWIN
  • CUREIT
  • DEFWATCH
  • DRVIRUS
  • DRWADINS
  • DRWEB
  • DEFENDERDAEMON
  • DWEBLLIO
  • DWEBIO
  • ESCANH95
  • ESCANHNT
  • EWIDOCTRL
  • EZANTIVIRUSREGISTRATIONCHECK
  • F-AGNT95
  • FAMEH32
  • FILEMON
  • FIREWALL
  • FORTICLIENT
  • FORTITRAY
  • FORTISCAN
  • FPAVSERVER
  • FPROTTRAY
  • FPWIN
  • FRESHCLAM
  • EKRN
  • FSAV32
  • FSAVGUI
  • FSBWSYS
  • F-SCHED
  • FSDFWD
  • FSGK32
  • FSGK32ST
  • FSGUIEXE
  • FSMA32
  • FSMB32
  • FSPEX
  • FSSM32
  • F-STOPW
  • GCASDTSERV
  • GCASSERV
  • GIANTANTISPYWARE
  • GUARDGUI
  • GUARDNT
  • GUARDXSERVICE
  • GUARDXKICKOFF
  • HREGMON
  • HRRES
  • HSOCKPE
  • HUPDATE
  • IAMAPP
  • IAMSERV
  • ICLOAD95
  • ICLOADNT
  • ICMON
  • ICSSUPPNT
  • ICSUPP95
  • ICSUPPNT
  • IPTRAY
  • INETUPD
  • INOCIT
  • INORPC
  • INORT
  • INOTASK
  • INOUPTNG
  • IOMON98
  • ISAFE
  • ISATRAY
  • KAV
  • KAVMM
  • KAVPF
  • KAVPFW
  • KAVSTART
  • KAVSVC
  • KAVSVCUI
  • KMAILMON
  • MAMUTU
  • MCAGENT
  • MCMNHDLR
  • MCREGWIZ
  • MCUPDATE
  • MCVSSHLD
  • MINILOG
  • MSSECES
  • MSSEOOBE
  • MYAGTSVC
  • MYAGTTRY
  • NAVAPSVC
  • NAVAPW32
  • NAVLU32
  • NAVW32
  • NEOWATCHLOG
  • NEOWATCHTRAY
  • NISSERV
  • NISUM
  • NMAIN
  • NOD32
  • NORMIST
  • NOTSTART
  • NPAVTRAY
  • NPFMNTOR
  • NPFMSG
  • NPROTECT
  • NSCHED32
  • NSMDTR
  • NSSSERV
  • NSSTRAY
  • NTRTSCAN
  • NTOS
  • NTXCONFIG
  • NUPGRADE
  • NVCOD
  • NVCTE
  • NVCUT
  • NWSERVICE
  • OFCPFWSVC
  • OUTPOST
  • ONLINENT
  • OPSSVC
  • OP_MON
  • PAVFIRES
  • PAVFNSVR
  • PAVKRE
  • PAVPROT
  • PAVPROXY
  • PAVPRSRV
  • PAVSRV51
  • PAVSS
  • PCCGUIDE
  • PCCIOMON
  • PCCNTMON
  • PCCPFW
  • PCCTLCOM
  • PCTAV
  • PERSFW
  • PERTSK
  • PERVAC
  • PESTPATROL
  • PNMSRV
  • PREVSRV
  • PREVX
  • PSIMSVC
  • QUHLPSVC
  • QUHLPSVC
  • QHONLINE
  • QHONSVC
  • QHWSCSVC
  • QHSET
  • RFWMAIN
  • RTVSCAN
  • RTVSCN95
  • SALITY
  • SAPISSVC
  • SCANWSCS
  • SAVADMINSERVICE
  • SAVMAIN
  • SAVPROGRESS
  • SAVSCAN
  • SCANNINGPROCESS
  • SDRA64
  • SDHELP
  • SHSTAT
  • SITECLI
  • SPBBCSVC
  • SPHINX
  • SPIDERCPL
  • SPIDERML
  • SPIDERNT
  • SPIDERUI
  • SPYBOTSD
  • SPYXX
  • SS3EDIT
  • STOPSIGNAV
  • SWAGENT
  • SWDOCTOR
  • SWNETSUP
  • SYMLCSVC
  • SYMPROXYSVC
  • SYMSPORT
  • TAUMON
  • TMLISTEN
  • TMNTSRV
  • TMPROXY
  • TNBUTIL
  • TRJSCAN
  • VBA32ECM
  • VBA32IFS
  • VBA32LDR
  • VBA32PP3
  • VBSNTW
  • VCRMON
  • VRFWSVC
  • VRMONNT
  • VRMONSVC
  • VRRW32
  • VSECOMR
  • VSHWIN32
  • VSMON
  • VSSERV
  • VSSTAT
  • WATCHDOG
  • WEBSCANX
  • WINSSNOTIFY
  • WRCTRL
  • XCOMMSVR
  • ZLCLIENT
  • ZONEALARM

Пытается удалить следующие системные службы:

  • AVP
  • Agnitum Client Security Service
  • Amon monitor
  • aswUpdSv
  • aswMon2
  • aswRdr
  • aswSP
  • aswTdi
  • aswFsBlk
  • acssrv
  • AV Engine
  • avast! iAVS4 Control Service
  • avast! Antivirus
  • avast! Mail Scanner
  • avast! Web Scanner
  • avast! Asynchronous Virus Monitor
  • avast! Self Protection
  • AVG E-mail Scanner
  • Avira AntiVir Premium Guard
  • Avira AntiVir Premium WebGuard
  • Avira AntiVir Premium MailGuard
  • BGLiveSvc
  • BlackICE
  • CAISafe
  • ccEvtMgr
  • ccProxy
  • ccSetMgr
  • COMODO Firewall Pro Sandbox Driver
  • cmdGuard
  • cmdAgent
  • Eset Service
  • Eset HTTP Server
  • Eset Personal Firewall
  • F-Prot Antivirus Update Monitor
  • fsbwsys
  • FSDFWD
  • F-Secure Gatekeeper Handler Starter
  • FSMA
  • Google Online Services
  • InoRPC
  • InoRT
  • InoTask
  • ISSVC
  • KPF4
  • KLIF
  • LavasoftFirewall
  • LIVESRV
  • McAfeeFramework
  • McShield
  • McTaskManager
  • MpsSvc
  • navapsvc
  • NOD32krn
  • NPFMntor
  • NSCService
  • Outpost Firewall main module
  • OutpostFirewall
  • PAVFIRES
  • PAVFNSVR
  • PavProt
  • PavPrSrv
  • PAVSRV
  • PcCtlCom
  • PersonalFirewal
  • PREVSRV
  • ProtoPort Firewall service
  • PSIMSVC
  • RapApp
  • SharedAccess
  • SmcService
  • SNDSrvc
  • SPBBCSvc
  • SpIDer FS Monitor for Windows NT
  • SpIDer Guard File System Monitor
  • SPIDERNT
  • Symantec Core LC
  • Symantec Password Validation
  • Symantec AntiVirus Definition Watcher
  • SavRoam
  • Symantec AntiVirus
  • Tmntsrv
  • TmPfw
  • UmxAgent
  • UmxCfg
  • UmxLU
  • UmxPol
  • vsmon
  • VSSERV
  • WebrootDesktopFirewallDataService
  • WebrootFirewall
  • wscsvc
  • XCOMM

Блокировка доступа к сайтам

Драйвер создает устройство:

\Device\amsint32
\DosDevices\amsint32

Затем расшифровывает список адресов веб-сайтов:

  • kaspersky
  • eset.com
  • f-secure.
  • mcafee.
  • symantec.
  • etrust.com
  • trendmicro.
  • sophos.
  • virustotal.
  • agnmitum.
  • pandasoftware.
  • bitdefender.
  • spywareguide.
  • windowsecurity.
  • virusscan.
  • ewido.
  • spywareinfo.
  • onlinescan.
  • drweb.
  • cureit.
  • virusinfo.
  • sality-remov
  • upload_virus

Устанавливает IRP-обработчики для общения с драйвером из пользовательского режима. Позволяет выполнять следующие команды:

  • DWORD = 777: включить блокировку сайтов;
  • DWORD = 888: отключить блокировку сайтов;
  • DWORD = PID: убить соответствующий процесс с указанным PID.

Если DWORD=666, буфер содержит адреса KeServiceDescriptorTable, которые бот ранее нашел в usermode (таблица необходима для поиска NtTerminateProcess).

Устанавливает функцию — обработчик драйвера на \Device\IPFILTERDRIVER.
Таким образом:

IoBuildDeviceIoControlRequest(0x128058u, DeviceObject, &pfunc, 4u, 0, 0, 0, 0, &IoStatusBlock);

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

Процесс заражения

Вирус инфицирует дисковые накопители, размещая на них файл автозапуска autorun.inf:

;xmMgM
[AutoRun]
;foXjogjgAirFrJaIWvWCFYOjVdeptddJqu
;qxltVAjtFsQy 
SHell\Open\defAult=1
OPeN =eromp.exe
;
ShelL\open\cOmmAND =eromp.exe
;elrktM
ShEll\ExploRe\ComMAnD=eromp.exe
;rtLT xwoG 
shElL\autOplAy\ComManD =eromp.exe
;pbmyU igvQEdlfgtjgTs

[AutoRun]
;kWxFMtJjds ntDcm JsyqrhIKdiyp
;flpkohOJMJ
shEll\oPen\dEfauLt=1
;
SHeLl\opeN\CoMMaNd=xsvsf.pif
;
oPEn =xsvsf.pif
SHelL\EXploRe\COmmand = xsvsf.pif
;vWgFu HkdyJEhwpgeiEdbvSCyiYmisLkvq
shell\AuToplaY\coMMaND=xsvsf.pif

Заражает все файлы, зарегистрированные в следующих ветвях системного реестра:

  • Software\Microsoft\Windows\ShellNoRoam\MUICache
  • Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\MuiCache
  • Software\Microsoft\Windows\CurrentVersion\Run
  • Заражает все файлы, обнаруженные на диске C.

Заражает все файлы, обнаруженные в открытых на запись сетевых папках:

    WNetOpenEnum
  • WNetEnumResource
  • WNetCloseEnum

Загрузка и запуск файлов

После заражения ПК вирус устанавливает соединения с P2P-ресурсами по ранее полученному списку адресов, загружает исполняемые файлы и после проверки цифровой подписи сохраняет их в файл:

%SYSTEM32%\<[a-z]*>\[a-z]*.log или %TEMP%\<[a-z]*>\[a-z]*.log

Затем при каждом запуске извлекает модули из файла конфигурации и запускает их из временной папки %temp%.

Загружаемые модули:

  • Trojan.DownLoader10.49375
  • Trojan.Proxy.26841
  • Trojan.Rbrute

P2P-загрузчик и протокол

Протокол состоит из UDP-сервера, отвечающего за обмен нодами (списками «адрес-порт» P2P-сети), и TCP-сервера, ответственного за загрузку конфигурационных данных. Структура хранения списка нод реализована следующим образом:

struct tnode
{
  DWORD addr; //ip
  WORD port; //udp port
  WORD w1;
  DWORD id_peer; //id бота если бот имеет внешний ip то id больше 16000000
  DWORD count_answer; //количество успешных запросов
  DWORD time; //время GetTickCount
};

UDP-сервер

Каждый UDP-пакет имеет заголовок вида:

struct P2P_HEAD
{
  WORD crc16; //контрольная сумма сообщения crc16
  WORD len; //длина сообщения
};

и шифруется с использованием алгоритма RC4, где в качестве ключа – значение P2P_HEAD.

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

OP_03 — запрос ID конфигурации.

Пакет имеет следующую структуру:

struct OP_03
{
  BYTE ver; //версия протокола 4
  DWORD id; //id конфигурации
  BYTE op; //0x03 команда
  BYTE b4Fh; //0x4F
  BYTE b4Bh; //0x4B
  DWORD size_cfg; //0xFEFEFEFE или размер пакета
  WORD w1; // 0x0
};

В ответ приходит такой же пакет с ID конфигурации ноды. Если полученный ID меньше текущего, то выполняется следующий запрос конфигурации:

struct OP_23{
  BYTE ver; //4
  DWORD id; //id cfg
  BYTE op; //0x23
  BYTE b4Fh; //0x4F
  BYTE b4Bh; //0x4B
  BYTE b1; //-2
  BYTE b2; //-2
  BYTE b3; //-2
  BYTE b4; //-2
  DWORD size_cfg; //размер url
};

В ответ приходит пакет следующей структуры:

struct tcfg_head
{
  DWORD size; //размер конфигурации
  DWORD crc32; //crc32
};
 
 
struct tcfg_sign
{
  BYTE sign[0x100]; //цифровая подпись
};
 
 
struct tcfg_info
{
  DWORD id; //id конфигурации
  BYTE b1; 
  BYTE b2;
  WORD w1;
  DWORD size_cfg; //размер конфигурации
};
 
struct tcfg{
  tcfg_head head;  
  tcfg_sign sign;
  tcfg_info info;
  WORD count; //количество url в пакете
  BYTE urls[754];//адреса
};

С использованием протокола UDP передаются только конфигурационные данные небольшого размера. Если объем данных превышает 0x400, то выполняется запрос на загрузку конфигурации к TCP-серверу.

Если IP конфигураций равны, но не равны размеры, происходит либо загрузка конфигурационных данных с узла P2P-сети, либо его загрузка на сервер по протоколу TCP.

Проверка NAT

Для проверки NAT используется следующий запрос:

struct OP_FLAG
{
  BYTE ver;// 4
  DWORD id; //id cfg
  BYTE op; //0x1
  DWORD status; //текущий статус NAT
  WORD port; //свой udp port
};

Получив такой пакет, сервер пытается отправить запрос источнику, используя для этого новый сокет, соответственно, с новым адресом локального порта, и выполняет отправку пакета OP_03. Если ответ последовал, то сервер считает, что NAT отсутствует, и присваивает боту значение ID выше 16000000, после чего добавляет такого бота в собственный список. Ответный пакет имеет следующую структуру:

struct OP_01
{
  BYTE ver; //4
  DWORD id; //id cfg
  BYTE op; //0x01
  DWORD id_peer; //присвоенный id боту
};

Обмен адресами

Для запроса нового IP-адреса узла P2P-сети бот отправляет команду OP_FLAG с op=0x02. В ответ сервер направляет следующий пакет:

struct OP_02
{
  BYTE ver; //4
  DWORD id; //id cfg
  BYTE op; //0x02
  DWORD addr; //случайный IP из списка нод
  WORD port; //порт из списка нод
  DWORD id_peer; //id ноды из списка нод
};

TCP-сервер

Протокол TCP используется для обмена конфигурационными данными большого объема. Для получения конфигурационных данных с сервера используется следующий запрос:

struct P2P_CFG_REQ{
    DWORD rnd1;
    DWORD rnd2;
};

Ответ имеет описанную ранее структуру tcfg, которая зашифрована с использованием алгоритма RC4 с ключом purity_control_%x , где %x - head.size.

Хранилище базовых настроек

Так как бот не может изменять полезную нагрузку, она упакована UPX, а конфигурационные данные и список P2P-узлов должны обновляться в каждом новом инфицированном файле. Для этого используется шелл-код, который создает и инициализирует расшаренную память со списком адресов и конфигурационными данными, а также выполняет «сырую загрузку» в память полезной нагрузки вируса:

screen

screen

Win32.Sector в вирусной библиотеке:

Win32.Sector
Win32.Sector.12
Win32.Sector.16
Win32.Sector.23
Win32.Sector.28
Win32.Sector.28684
Win32.Sector.28684.origin
Win32.Sector.29
Win32.Sector.30
Win32.Sector.31
Win32.Sector.33
Win32.Sector.34
Win32.Sector.5

Уязвимости для Android

По статистике каждая пятая программа для ОС Android — с уязвимостью (или, иными словами, — с «дырой»), что позволяет злоумышленникам успешно внедрять мобильных троянцев на устройства и выполнять нужные им действия.

Аудитор безопасности в Dr.Web для Android произведет диагностику и анализ безопасности мобильного устройства, предложит решения для устранения выявленных проблем и уязвимостей.