Активная эксплуатация CVE-2025-25249: взлом FortiGate через CAPWAP
Злоумышленники активно эксплуатируют уязвимость CVE-2025-25249 в демоне cw_acd, который работает в FortiOS и FortiSwitchManager и обрабатывает трафик CAPWAP на UDP-порту 5246. Ошибка связана с переполнением буфера в куче и позволяет выполнять код удаленно, без аутентификации, с помощью специально сформированных запросов.
Как работает атака
Восстановленный фреймворк эксплойта fortirun.bin определяет уязвимые системы FortiGate и FortiAP, после чего подготавливает кучу с помощью вредоносных сообщений CAPWAP Add Station. Затем он повреждает структуру списка освобожденной памяти и перехватывает поток управления, используя ROP-пивот для ARM64.
После получения контроля эксплойт запускает встроенный в систему runtime Node.js и создает обратный шелл. Атака доставляет JavaScript-стагер, который загружает второй этап, закодированный в Base64 и зашифрованный с помощью XOR. Сценарий расшифровывает его ключом pivot, записывает результат в /tmp/.i.js и запускает в фоновом режиме.
Возможности PivotC2
Полезная нагрузка PivotC2 представляет собой Node.js RAT для постэксплуатации FortiGate. Она устанавливает исходящее TLS-соединение с C2-сервером и использует мультиплексированный бинарный протокол. В нем предусмотрены каналы для выполнения команд, интерактивных оболочек, файловых операций и TCP-форвардинга.
Клиент поддерживает автоматическое переподключение и мониторинг heartbeat. Кроме того, он умеет работать с такими функциями:
- проксирование через SOCKS5 и HTTP;
- локальный и удаленный port forwarding;
- разрешение DNS;
- перечисление сетей;
- сканирование портов на основе CIDR.
PivotC2 может собирать конфигурационные файлы FortiGate, включая настройки VDOM и файл /data/etc/fsv_sync.dat, а затем расшифровывать сохраненные секреты. Восстановленные учетные данные могут включать:
- предопределенные VPN-ключи;
- учетные записи SSL-VPN;
- ключи беспроводных сетей;
- учетные данные LDAP;
- пароли администраторов.
C2-сервер поддерживает автоматический режим. В этом случае он собирает конфигурации, расшифровывает учетные данные, определяет внутренние сети и сканирует стандартные порты в обнаруженных и заранее заданных частных диапазонах.
Масштаб кампании
Кампания была направлена более чем на 30 000 IP-адресов FortiGate. Исследователи зафиксировали 178 подтвержденных зараженных сессий. Наибольшая концентрация жертв пришлась на Соединенные Штаты.
Две организации в США столкнулись с более масштабными вторжениями. Атаки включали создание внутренних туннелей, обнаружение хостов, кражу учетных данных из браузеров, перемещение внутри компании и эксфильтрацию данных.
Деятельность квалифицируется как операция киберкриминала с финансовой мотивацией, которую осуществляют русскоязычные злоумышленники. Кампания также включала атаки на другие уязвимости корпоративных систем.
Признаки компрометации
Обнаружить атаку могут помочь следующие признаки:
- несанкционированные процессы Node.js;
- наличие файла
/tmp/.i.js; - исходящие соединения с
46.151.29.58или146.103.99.177; - необычный доступ к конфигурации FortiGate;
- сетевое сканирование.
Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.
Ознакомиться подробнее с отчетом можно по ссылке.



