WinLol использует OneDrive для скрытого запуска RAT на Go
WinLol использует четырёхэтапную цепочку для доставки трояна удалённого доступа на Go. Она включает дроппер на Rust, загрузчик на C, DLL для подмены загрузки через OneDrive и агент `RiotClientServices.exe`. Агент передаёт изображение рабочего стола по WebRTC, но наблюдаемый поток позволяет только просматривать экран, без управления клавиатурой и мышью.
Этапы заражения и проверки дроппера
Цепочка начинается с 64-битного дроппера размером 5,9 МБ. Перед продолжением работы он проверяет, не запущен ли в среде анализа: проводит тест времени отклика длительностью 500 мс, ищет строку `abby` в имени пользователя и пути к профилю, а также сравнивает заголовки HTTP Date в запросах с задержкой. Последняя проверка помогает обнаруживать песочницы, ускоряющие функции сна.
Дроппер обращается к каждому настроенному C2-серверу за файлом `/payload.txt` и продолжает выполнение, только если ответ начинается с `ok`. Так оператор может отключить дальнейшую работу через серверный механизм. Конфигурация C2 зашифрована с помощью XOR и хранится в ресурсе, а DLL находится во встроенной базе данных SQLite и шифруется отдельно.
Дроппер ищет установленный OneDrive, копирует `OneDrive.exe` в `%TEMP%`, расшифровывает вредоносный `version.dll` и записывает его рядом с копией исполняемого файла. Следующий этап он загружает в память в виде шеллкода. Загрузчик на C работает в оперативной памяти и получает троян с пути `/download-agent`, сохраняет его под именем `RiotClientServices.exe` и устанавливает в реестре ключ запуска `RiotAgent` для закрепления.
Закрепление и запуск агента
Загрузчик добавляет входящее правило брандмауэра, разрешающее все соединения, удаляет метаданные Mark-of-the-Web и запускает скопированный исполняемый файл OneDrive. Кроме того, он пытается обойти UAC с помощью компонента `CMSTPLUA`, работающего с повышенными правами, чтобы агент мог запуститься с правами администратора.
При запуске OneDrive подгруженная DLL перенаправляет функции легитимной библиотеки версий в системную DLL. После небольшой задержки она запускает троян в виде скрытого дочернего процесса. В дереве процессов троян отображается как дочерний процесс подписанного исполняемого файла Microsoft.
Возможности агента и передача видео
Агент на Go захватывает изображение рабочего стола с помощью DXGI и передаёт его через WebRTC. Видео кодируется с помощью x264 или NVIDIA NVENC, а сигнализация WebRTC и данные ICE передаются через WebSockets. Оператор предоставляет инфраструктуру STUN/TURN и учётные данные через `/api/rtc/ice-config`.
Помимо передачи изображения рабочего стола, имплант поддерживает сокрытие процессов, запуск сессий и инъекцию DLL. Наблюдаемый поток WebRTC доступен только для просмотра и не позволяет управлять клавиатурой или мышью.
Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.
Ознакомиться подробнее с отчетом можно по ссылке.



