Короткий вывод Что можно утверждать с высокой вероятностью
Это Windows-угроза, связанная с кейлоггингом.
Распространение связано с поддельными установщиками.
Образцы встречаются в malware-коллекциях, например в MalwareBazaar.
Семейство, вероятно, нацелено на перехват ввода пользователя и последующую передачу данных.
Может использоваться как самостоятельный кейлоггер или как один из модулей в цепочке загрузки других вредоносов.
────────────────────
Что требует дополнительной проверки
Без конкретного образца нельзя уверенно утверждать:
написан ли он на native C/C++, .NET, AutoIt, Delphi, Electron или другом стеке;
использует ли user-mode hook, raw input, GetAsyncKeyState, SetWindowsHookEx, драйвер, accessibility API или другой метод;
есть ли у него скриншоты, перехват буфера обмена, кража браузерных данных, запись микрофона;
как именно передаёт логи: HTTP/HTTPS, SMTP, Telegram, FTP, XMPP, DNS, WebSocket или через локальный файл;
есть ли панель управления, лицензирование, builder, антианализ, обход EDR/AV;
кто автор, продаётся ли он, используется ли одним актором или несколькими.
────────────────────
Коммерческий ли это кейлоггер?
Если под «коммерческим» понимать легальный продукт, то признаки легального мониторингового ПО обычно такие:
есть официальный сайт и документация;
бинарник подписан валидным сертификатом известной компании;
установщик имеет нормальное имя продукта, версию, лицензионное соглашение;
программа видна в Programs and Features, службах, автозагрузке;
есть понятный механизм удаления;
логи хранятся локально или в администрируемой панели;
нет скрытного дропа из поддельного установщика, упаковщиков, обфускации и подозрительных сетевых каналов.
У
VIPKeylogger в текущем контексте таких признаков не видно. Наоборот, связь с поддельными установщиками указывает на вредоносную дистрибуцию.
Но это не исключает, что семейство может быть:
приватным кейлоггером;
билдером, который продают или сдают в аренду;
модулем в составе инфостилера;
форком старого коммерческого или учебного keylogger-кода;
detection-названием для группы похожих образцов.
────────────────────
Как он распространяется
Основной заявленный вектор —
поддельные установщики .
Типичная схема выглядит так:
Пользователь ищет популярное ПО:
браузер;
VPN-клиент;
мессенджер;
игру;
чит, мод, кряк, активатор;
утилиту для удалённого доступа;
криптокошелёк или трейдинг-приложение;
«бесплатную» версию платного ПО.
Попадает на:
фейковый сайт-клон;
SEO-отравленную выдачу;
торрент-трекер;
файловый хостинг;
Telegram-канал;
Discord-сервер;
вредоносную рекламу;
фишинговое письмо;
поддельную страницу обновления.
Скачивает архив или установщик:
setup.exe
install.exe
installer.exe
patch.exe
crack.exe
keygen.exe
activator.exe
update.exe
app-setup.msi
image.iso
document.lnk
archive.zip
archive.rar
Запускает файл вручную.
Установщик может показывать правдоподобный интерфейс, например:
окно установки;
прогресс-бар;
ошибку «нужно закрыть антивирус»;
запрос на отключение Defender;
просьбу запустить от администратора;
фейковое лицензионное соглашение.
Параллельно или после установки происходит:
дроп кейлоггера;
создание persistence;
запуск полезной нагрузки;
загрузка дополнительных модулей;
отправка данных на C2.
────────────────────
Типичная цепочка заражения
Упрощённо:
Код:Скопировать в буфер обмена
Фишинг / фейковый сайт / торрент / Telegram
↓
Поддельный установщик или архив
↓
Запуск пользователем
↓
Дроп payload в %APPDATA%, %LOCALAPPDATA%, %ProgramData% или Temp
↓
Закрепление через Run, Scheduled Task, Service, WMI или COM
↓
Перехват клавиатуры
↓
Локальное накопление логов
↓
Эксфильтрация через HTTP/HTTPS/SMTP/Telegram/другой канал
────────────────────
Какие контейнеры и приёмы могут использоватьсяПоддельные установщики часто распространяются не как чистый EXE, а через промежуточные форматы:
ZIP/RAR/7z-архивы;
ISO/IMG-образы;
LNK-файлы;
MSI-пакеты;
MSIX/AppInstaller;
BAT/CMD-скрипты;
PowerShell-загрузчики;
CHM-файлы;
HTA-файлы;
DLL для side-loading;
JS/VBS-скрипты;
документы с макросами, если цепочка начинается с фишингового письма.
Цель таких приёмов:
обойти SmartScreen;
обойти Mark-of-the-Web;
обойти почтовые фильтры;
обойти Application Control;
заставить пользователя вручную запустить файл;
усложнить автоматический анализ.
────────────────────
Что может делать кейлоггер после запуска
Для Windows-кейлоггера типичны следующие возможности:
Перехват клавиатурыВозможные техники:
SetWindowsHookEx с WH_KEYBOARD_LL;
GetAsyncKeyState;
GetKeyState;
GetRawInputData;
polling клавиш в цикле;
accessibility/UI Automation API;
перехват сообщений окна;
kernel-mode driver, если образец более сложный.
Сбор контекстаЧасто логируется не только нажатие клавиши, но и:
время;
имя активного окна;
заголовок окна;
имя процесса;
URL браузера, если есть отдельный модуль;
буфер обмена;
скриншоты;
язык раскладки;
специальные клавиши;
вставка из буфера обмена.
Хранение логовЛоги могут писаться:
в %APPDATA%;
в %LOCALAPPDATA%;
в %ProgramData%;
в %TEMP%;
в скрытые файлы;
в альтернативные потоки NTFS;
в реестр;
в зашифрованный файл;
в память до отправки.
ЭксфильтрацияПередача может идти через:
HTTP POST;
HTTPS;
SMTP;
Telegram Bot API;
Discord Webhook;
FTP;
DNS-туннелирование;
WebSocket;
облачные хранилища;
кастомный TCP/UDP-протокол.
ЗакреплениеВозможные точки persistence:
HKCU\Software\Microsoft\Windows\CurrentVersion\Run
HKLM\Software\Microsoft\Windows\CurrentVersion\Run
HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce
Scheduled Tasks
службы Windows
WMI Event Subscription
COM hijacking
Startup folder
AppInit_DLLs, если применимо
Image File Execution Options, чаще для отладки или перехвата, но встречается в malware
DLL search order hijacking
────────────────────
На что смотреть при анализе образцаЕсли есть конкретный файл, сначала стоит проверить базовые атрибуты.
Хеш и подпись
Код:Скопировать в буфер обмена
Get-FileHash .\sample.exe -Algorithm SHA256
Get-AuthenticodeSignature .\sample.exe | Format-List *
Если есть Sysinternals:
Код:Скопировать в буфер обмена
.\sigcheck.exe -accepteula -h -nobanner .\sample.exe
Тревожные признаки:
нет подписи;
подпись невалидна;
подпись отозвана;
имя подписанта не совпадает с заявленным продуктом;
сертификат недавно выпущен;
сертификат украден или относится к неизвестной компании;
оригинальное имя файла не совпадает с отображаемым.
Строки и импортыДля native-образа стоит искать:
Код:Скопировать в буфер обмена
SetWindowsHookEx
WH_KEYBOARD_LL
GetAsyncKeyState
GetKeyState
GetRawInputData
GetForegroundWindow
GetWindowTextA
GetWindowTextW
WriteFile
InternetOpenA
InternetOpenUrlA
HttpSendRequestA
HttpSendRequestW
URLDownloadToFileW
WSASend
CreateServiceA
CreateServiceW
RegSetValueExW
Для .NET-образцов в decompiler стоит искать:
Код:Скопировать в буфер обмена
System.Windows.Forms.Keys
SetWindowsHookEx
KeyboardHook
LowLevelKeyboardProc
GetAsyncKeyState
GetForegroundWindow
Process.GetCurrentProcess
HttpClient
SmtpClient
WebClient
Telegram
bot
token
SendAsync
Быстрый поиск строк
Bash:Скопировать в буфер обмена
strings -el sample.exe | grep -Ei 'vip|keylog|hook|keyboard|smtp|http|telegram|bot|token|password|log'
strings -a sample.exe | grep -Ei 'vip|keylog|hook|keyboard|smtp|http|telegram|bot|token|password|log'
Для .NET лучше использовать:
dnSpy;
ILSpy;
dotPeek;
ilspycmd.
Для native:
Detect It Easy;
PE-bear;
CFF Explorer;
x64dbg;
IDA/Ghidra;
capa.
────────────────────
Если нужно проверить хост на заражение Автозагрузка
Код:Скопировать в буфер обмена
reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Run"
reg query "HKLM\Software\Microsoft\Windows\CurrentVersion\Run"
reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce"
reg query "HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce"
Более полный вариант:
Код:Скопировать в буфер обмена
Get-CimInstance Win32_StartupCommand |
Select-Object Name, command, location, user |
Format-List
Scheduled Tasks
Код:Скопировать в буфер обмена
schtasks /query /fo LIST /v
Или через PowerShell:
Код:Скопировать в буфер обмена
Get-ScheduledTask |
Where-Object {$_.State -ne "Disabled"} |
Select-Object TaskName, TaskPath, State, Author |
Format-Table -AutoSize
Службы
Код:Скопировать в буфер обмена
Get-Service |
Where-Object {$_.Status -eq "Running"} |
Select-Object Name, DisplayName, Status, StartType |
Sort-Object Name
Подозрительные файлы
Проверить каталоги:
Код:Скопировать в буфер обмена
%APPDATA%
%LOCALAPPDATA%
%ProgramData%
%TEMP%
C:\Users\Public
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
Искать:
недавно созданные EXE/DLL;
файлы со случайными именами;
файлы с иконками известных приложений;
.log, .txt, .dat, .db файлы рядом с подозрительным EXE;
скрытые файлы;
файлы с двойным расширением;
LNK-файлы в Startup.
Сетевая активность
Если есть PCAP:
Bash:Скопировать в буфер обмена
tshark -r capture.pcap -Y "http.request or tls.handshake.type == 1" \
-T fields -e frame.time -e ip.dst -e http.host -e tls.handshake.extensions_server_name
Искать:
недавно зарегистрированные домены;
динамические DNS;
IP без домена;
нестандартные User-Agent;
POST с большими объёмами текста;
обращения к api.telegram.org, если используется Telegram-эксфильтрация;
SMTP-соединения с подозрительными серверами;
периодические beacon-запросы.
────────────────────
Поведенческие признаки для EDR/Sysmon
Для кейлоггера важны не только имена файлов, но и поведение.
Типичные поведенческие сигналы
процесс устанавливает global keyboard hook;
процесс читает активные заголовки окон;
процесс пишет данные в скрытый файл в AppData;
процесс из AppData запускается после reboot;
браузер или офисное приложение неожиданно порождает cmd.exe, powershell.exe, rundll32.exe, regsvr32.exe, mshta.exe;
установщик из временной папки запускает другой исполняемый файл;
процесс без подписи стартует из %APPDATA% или %TEMP%;
процесс обращается к сети shortly after startup;
есть попытки отключить Defender или добавить exclusion;
есть изменение Run-ключей, служб или scheduled tasks.
Полезные Sysmon Event ID
Event ID 1 — Process Create;
Event ID 3 — Network Connect;
Event ID 7 — Image Loaded;
Event ID 10 — Process Access;
Event ID 11 — File Create;
Event ID 12/13/14 — Registry Event;
Event ID 22 — DNS Query;
Event ID 23 — File Delete;
Event ID 25 — Process Tampering, если включён и применим.
Что искать в локах
Для process creation:
Код:Скопировать в буфер обмена
powershell.exe -enc
powershell.exe -nop -w hidden
rundll32.exe
regsvr32.exe /s /u /i
mshta.exe
certutil.exe -urlcache
bitsadmin.exe
schtasks /create
reg add ... Run
Для network:
Код:Скопировать в буфер обмена
POST /gate
POST /log
POST /panel
api.telegram.org/bot
smtp.
mail.
dynamic-dns.net
duckdns.org
no-ip
ddns
────────────────────
Простая YARA-заготовка для охоты
Это не гарантия детектирования всех вариантов, а стартовая rule для лабораторной проверки.
Код:Скопировать в буфер обмена
rule Windows_Keylogger_VIPKeylogger_Generic_Hunt
{
meta:
description = "Generic hunt for VIPKeylogger-like Windows keylogger samples"
author = "analyst"
reference = "internal lab hunt"
date = "2026-08-11"
strings:
$mz = { 4D 5A }
$name1 = "VIPKeylogger" nocase wide ascii
$api1 = "SetWindowsHookEx" nocase wide ascii
$api2 = "GetAsyncKeyState" nocase wide ascii
$api3 = "GetRawInputData" nocase wide ascii
$api4 = "WH_KEYBOARD_LL" nocase wide ascii
$api5 = "GetForegroundWindow" nocase wide ascii
$net1 = "InternetOpen" nocase wide ascii
$net2 = "HttpSendRequest" nocase wide ascii
$net3 = "URLDownloadToFile" nocase wide ascii
condition:
$mz at 0 and
(
$name1 or
(2 of ($api*) and any of ($net*)) or
(3 of ($api*))
)
}
Перед использованием нужно прогнать rule по чистой коллекции, чтобы оценить false positives.
────────────────────
Лабораторный анализ без риска для рабочей системы
Если нужно исследовать образец, лучше делать это в изолированной VM.
Минимальная подготовка
отдельная Windows VM;
snapshot до запуска;
отключённые shared folders;
отключённый clipboard с хостом;
отдельная виртуальная сеть или INetSim/FakeNet;
отсутствие корпоративных учётных данных;
отсутствие реальных браузерных профилей;
отсутствие реальных токенов и SSH-ключей.
Инструменты
Process Monitor;
Process Explorer / System Informer;
Autoruns;
TCPView;
Regshot;
API Monitor;
x64dbg / x32dbg;
Ghidra / IDA;
dnSpy / ILSpy для .NET;
Detect It Easy;
PE-sieve;