Кросс-платформенный троян на Python демонстрирует тревожную эффективность и широкий функционал

remote access Trojan

В современном цифровом мире кибератаки становятся все более распространенными и технически сложными. Особую озабоченность экспертов по безопасности вызывают угрозы, использующие популярные скриптовые языки, такие как Python, для создания доступного и эффективного вредоносного программного обеспечения. Детальный анализ недавно обнаруженного Remote Access Trojan (RАТ, троян удаленного доступа), написанного на Python, выявил его высокие показатели детектирования различными антивирусными движками, кроссплатформенность, устойчивые методы заражения и широкий набор функций для удаленного контроля.

Описание

Исследование образца в VirusTotal началось с бинарного файла в формате ELF (исполняемый файл Linux). Примечательно, что внутри находился код на широко используемом языке Python. Это обстоятельство побудило аналитиков к более глубокому изучению угрозы. С помощью инструмента pyinstxtractor из бинарного файла были извлечены скомпилированные Python-файлы (.pyc), главным из которых оказался "agent-svc.pyc". После декомпиляции удалось восстановить исходный код, представляющий собой единый класс "Agent".

Функциональный анализ показал, что троянец обладает комплексными возможностями. При запуске он сразу же выполняет сбор информации о системе (фингерпринтинг), включая данные об операционной системе, имени хоста и текущем пользователе. Для отслеживания жертвы создается уникальный идентификатор (UID), формируемый на основе имени пользователя и MAC-адреса. Это позволяет операторам вредоносной программы отслеживать зараженные системы даже при смене учетной записи, хотя идентификатор сбрасывается при замене аппаратного обеспечения.

Ключевой особенностью является реализация многопоточности (threading). Она предотвращает блокировку основного цикла связи с командным центром (C2, Command and Control), обеспечивая параллельное выполнение команд. Такой подход повышает стабильность и отзывчивость троянца, одновременно усложняя его динамический анализ и расследование. Однако, что критично, вся коммуникация с C2-сервером осуществляется по незащищенному протоколу HTTP. Данные, включая результаты выполнения команд, передаются в виде открытого текста в формате JSON, что делает их уязвимыми для перехвата и легко обнаруживаемыми сетевыми системами защиты (IDS).

Для обеспечения устойчивости (persistence) троянец использует разные методы в зависимости от операционной системы. На Linux он маскируется под легитимные инструменты, используя имена вроде "dpkgn", и прописывает себя в механизм автозапуска XDG, создавая файл "~/.config/autostart/dpkgn.desktop". На Windows вредоносная программа добавляет запись в реестр в раздел "Run" для текущего пользователя, что не требует прав администратора. Она также определяет операционную систему и ищет заранее заданную папку установки в домашнем каталоге пользователя для размещения своих файлов.

Набор команд, которые троянец может выполнять по указанию C2, обширен. Он включает выполнение произвольных системных команд с захватом вывода, навигацию по файловой системе, перечисление файлов с отправкой списков на сервер, а также загрузку и выгрузку файлов любого типа. Для удобства передачи данных реализована функция создания ZIP-архивов, которая рекурсивно упаковывает каталоги, сохраняя их структуру. Кроме того, троянец способен делать скриншоты экрана с помощью библиотеки PIL (ImageGrab) и автоматически загружать их на сервер злоумышленника.

Одной из примечательных возможностей является функция самоуничтожения и очистки ("clean"). При получении соответствующей команды троянец определяет ОС и удаляет все компоненты, обеспечивающие его устойчивость: записи в реестре Windows, файлы автозапуска Linux и собственную директорию установки. На Windows для полной очистки после перезагрузки может использоваться ключ "RunOnce". Это явная анти-форензическая мера, затрудняющая анализ.

Сетевые коммуникации троянца используют адаптивный режим маячков (beaconing). В состоянии простоя он связывается с C2 с большими интервалами, чтобы снизить свой сетевой профиль. Однако при получении команды на выполнение активных операций частота опроса сервера резко возрастает до одного запроса каждые 0.5 секунды, обеспечивая высокую отзывчивость.

Несмотря на отсутствие сложного шифрования и связи с известными APT (Advanced Persistent Threat, целенаправленная устойчивая угроза) группами, этот Python-троянец представляет собой значительный риск. Его кроссплатформенная природа, широкий функционал для удаленного управления и легкость развертывания делают его привлекательным инструментом для киберпреступников. Высокие показатели детектирования в VirusTotal подтверждают, что эта угроза активно используется в реальных атаках. Данный случай подчеркивает важность контроля за установкой и выполнением Python-скриптов в корпоративных средах, а также необходимость комплексной защиты, включающей анализ сетевого трафика и поведенческие сигнатуры, а не только статические антивирусные проверки.

Индикаторы компрометации

MD5

  • 0fed60850aa38127095f21182cc2c85d
Комментарии: 0