Дві критичні вразливості в Citrix NetScaler ADC і NetScaler Gateway — CVE-2026-88772 і CVE-2026-88771 (обидві з CVSS 9.5) — уже активно експлуатуються для обходу автентифікації та отримання root-доступу на прикордонних пристроях, з подальшим встановленням прихованих web shell і тунелів у корпоративні мережі; організації в держсекторі, фінансовій, технологічній, освітній та юридичній галузях у Північній Америці та Європі вже стали жертвами, тому всім власникам Citrix NetScaler необхідно негайно встановити патчі, перевірити ознаки компрометації та, у разі неможливості оновлення, розглянути тимчасове вимкнення або ізоляцію пристроїв.
Технічні деталі вразливостей і ланцюжків атак
CVE-2026-88772: переповнення пам’яті в DTLS і шлях до root-shell без автентифікації
CVE-2026-88772 — переповнення пам’яті в обробці протоколу DTLS у компоненті NetScaler Packet Processing Engine (NSPPE). Вразливість зачіпає Citrix NetScaler ADC і NetScaler Gateway, що використовуються як контролери доставки застосунків і VPN-шлюзи. Оцінка 9.5 відображає те, що це передавтентифікаційний вектор: зловмисник може віддалено досягти виконання коду без наявності облікових даних.
Ключовий дефект пов’язаний з тим, як NSPPE обробляє фрагментовані DTLS handshake-повідомлення. Як показано в розборі watchTowr Labs, NetScaler:
- довіряє полю
fragment_lengthу заголовку DTLS, сприймаючи його як реальний розмір фрагмента; - одночасно орієнтується на поле
lengthяк на розмір усього повідомлення (наприклад, 120 байт); - реасемблює handshake-повідомлення з множини фрагментів, не перевіряючи, чи вміщуються дані в загальний буфер.
Практично це означає, що зловмисник може надіслати, наприклад, 120 фрагментів, кожен із length=120, але fragment_length=1 і послідовними зміщеннями 0–119. З погляду логіки реасемблювання це 120-байтове повідомлення, однак кожен реальний пакет (близько 1459 байт) зберігається в NetScaler Buffers (NSB) і зшивається в загальний scratch buffer розміром 35 840 байт. Оскільки у вразливій версії відсутня перевірка, чи поміщається черговий NSB у scratch buffer, ланцюжок NSB (~174 КБ даних) переповнює його межі — виникає класичне переповнення буфера в купі.
Дослідники продемонстрували, що за допомогою контрольованого переповнення можливо змінити потік виконання та передати керування довільному shellcode з root-привілеями. Для обходу захисту NX використовується системний виклик mprotect(), описаний в офіційній man-сторінці, щоб позначити ділянку пам’яті як виконувану. Це дає зловмисникам надійний pre-auth RCE на базі FreeBSD, що лежить в основі NetScaler.
Вразливість уже включена CISA до каталогу активно експлуатованих вразливостей (Known Exploited Vulnerabilities), а подробиці й оцінка ризику доступні й у NVD: запис CVE-2026-88772.
CVE-2026-88771: передавтентифікаційна командна ін’єкція
CVE-2026-88771 — вразливість некоректної валідації вхідних даних, що призводить до віддаленого виконання команд без автентифікації в NetScaler ADC і Gateway. Вона також оцінена як 9.5 (CVSS) і, згідно з аналізом команди Threat Hunt Operations & Research (THOR) компанії LevelBlue, експлуатується через атаки на механізм автентифікації із використанням спеціально сформованих імен користувачів.
LevelBlue відзначає появу в логах NetScaler підозрілих спроб входу з керованими зловмисником значеннями полів автентифікації, що містять рядки pitboss і NSPPE, які корелюють з експлуатацією CVE-2026-88771. Після успішної командної ін’єкції зловмисники:
- запускають команди перевірки на кшталт
whoami; - використовують
curl/wgetдля завантаження вторинних скриптів за адресами:https://64.94.85[.]67:443/update_c08937.plhttp://31.56.197[.]72:9090/lula(зафіксовано понад один раз)http://23.27.143[.]20:9000/main.py
- витягують конфігурацію NetScaler і архівують директорію
/flash/nsconfigдля подальшого виведення даних.
Огляд вразливості й виявлених артефактів експлуатації наведено в блозі LevelBlue: детальний звіт щодо CVE-2026-88771, а формальний опис міститься в записі CVE-2026-88771 у NVD.
Інструментарій post-exploitation: WHIPSHOT, SLAPSHOT і Perl-пейлоад
Після отримання початкового доступу через CVE-2026-88772 зловмисники розгортають зв’язку легковагових засобів post-exploitation, детально описану в блозі Google Threat Intelligence Group (огляд атак на NetScaler):
- WHIPSHOT — PHP web shell, що маскується під файли з розширеннями
.debабо.sig. Він витягує команди й корисне навантаження, закодовані в Base64, з HTTP-заголовків, виконує їх і повертає результат. Це дозволяє приховати керування в «звичайному» HTTP-трафіку. - SLAPSHOT — Python-інструмент тунелювання TCP, що виступає в ролі внутрішнього мережевого моста. Він приймає команди від WHIPSHOT і перенаправляє довільні TCP-потоки до внутрішніх хостів, полегшуючи розвідку, бічне переміщення й крадіжку облікових даних. За відсутності активності понад 10 хвилин видаляє свої артефакти (порт, lock-файли) і завершує роботу, мінімізуючи сліди.
Інший виявлений пейлоад — Perl-скрипт update_c08937.pl, завантажуваний з 64.94.85[.]67:443, виконує одразу кілька критичних дій:
- редагує
/flash/nsconfig/ns.conf, створюючи локальний обліковий записsec_monitorз роллю superuser; - архівує
/flash/nsconfigу/tmp/update_result_3567cs.tgz, надсилає архів на віддалений сервер, потім видаляє його й сам себе для зменшення артефактів; - змінює права на
/bin/shна6555, фактично перетворюючи оболонку на setuid-root бінарник для подальшої ескалації; - розгортає PHP web shell за шляхом
/var/netscaler/logon/LogonPoint/.local_journalдля віддаленого виконання команд і операцій із файлами; - вносить зміни до
/etc/httpd.conf, зокрема додає підтримку PHP і карту URL, що імітують легітимні CSS-ресурси NetScaler, на встановлений web shell.
Окремо Google фіксує цікавий трюк маскування: конфігурацію веб-сервера змінено так, щоб:
- запити до
/vpn/media/*.icoперенаправлялися на відповідні.sig-файли в/var/netscaler/gui/vpn/scripts/linux/; - ці
.sig-файли оброблялися як PHP-скрипти (після ввімкненняmod_php).
У результаті клієнт, який звертається, наприклад, до /vpn/media/e6ee7c85.ico, насправді обслуговується PHP web shell e6ee7c85.sig. При цьому в логах можуть залишатися відповіді HTTP 404, але з помітно збільшеною тривалістю обробки та розміром тіла відповіді — індикатор прихованого виконання коду.
Контекст загроз і масштаб експлуатації
Експлуатанти в публічних звітах не атрибутовані до відомих угруповань. Водночас активність має ознаки як цільових атак (ручна розвідка через SLAPSHOT, створення суперкористувачів, вибіркове викрадення конфігурацій), так і масових кампаній.
Згідно з даними GreyNoise (цитуються в вихідному матеріалі), 28 вересня 2026 року незабаром після 8:30 EDT зафіксовано фазу масового сканування NetScaler на предмет вразливостей CVE-2026-88771 і CVE-2026-88772, а до 22:30 того ж дня це переросло в масштабну експлуатацію багатьма незалежними акторами. Цілі варіюються від:
- рекрутування до ботнетів;
- брокерства доступу (продаж точок входу іншим кримінальним групам);
- до глибокої компрометації інфраструктури з довготривалою присутністю.
Google Threat Intelligence і Mandiant фіксують ураження десятків організацій з держсектору, фінансової сфери, технологій, освіти, юридичних і професійних послуг. Особливість NetScaler як прикордонного пристрою — перебування поза зоною покриття типових EDR-рішень і одночасна робота з чутливими обліковими даними, що робить його привабливою точкою початкового проникнення для подальшого руху в мережі.
Оцінка впливу для організацій
Найбільшому ризику піддаються:
- організації, що публікують NetScaler в інтернет без актуальних патчів;
- сегменти, де NetScaler використовується як VPN-шлюз і точка автентифікації (доступ до доменних облікових даних, токенів, конфігурацій);
- інфраструктури з обмеженим моніторингом прикордонних пристроїв і без централізованого збору логів NetScaler.
Наслідки бездіяльності включають:
- повний контроль зловмисника над пристроєм з правами root, зміну конфігурації й прошивки;
- тихе впровадження web shell і бекдорів під виглядом легітимних ресурсів (
.deb,.sig,.ico, псевдо-CSS); - експорт конфігурації, що включає IP-адреси внутрішніх сервісів, параметри LDAP/RADIUS і, можливо, секрети;
- створення прихованих суперкористувачів (
sec_monitor) і setuid-оболонок (/bin/shз правами 6555), які забезпечують стійку присутність навіть після часткового відновлення; - використання SLAPSHOT та аналогічних тунелів для непомітної для більшості засобів захисту розвідки й крадіжки облікових даних усередині мережі.
З погляду бізнесу це означає ризик компрометації доменної інфраструктури, тривалої прихованої присутності противника, втрати даних клієнтів і порушень регуляторних вимог, пов’язаних з управлінням доступом і захистом мережевої прикордонної інфраструктури.
Практичні рекомендації щодо захисту й виявлення
1. Негайні заходи (перші 24 години)
- Встановити офіційні патчі Citrix для вразливостей CVE-2026-88772 і CVE-2026-88771 на всі NetScaler ADC/Gateway, доступні з інтернету.
- Якщо оновлення просто зараз неможливе:
- розглянути тимчасове вимкнення DTLS або всього VPN-функціонала для зовнішніх користувачів;
- обмежити доступ до NetScaler через VPN/адміністративні IP-списки й фільтрацію брандмауером.
- Зіставити свій список CVE з каталогом CISA KEV (Known Exploited Vulnerabilities) й переконатися, що вразливі NetScaler не залишаються в експлуатації.
2. Пошук ознак компрометації
Рекомендується проактивний threat hunting за такими ознаками:
- Підозрілі користувачі й автентифікація
- пошук у логах NetScaler спроб входу з іменами користувачів, що містять рядки
pitbossабоNSPPE; - нестандартні схеми автентифікації, які призводять до запуску оболонки або системних команд.
- пошук у логах NetScaler спроб входу з іменами користувачів, що містять рядки
- Файлова система й конфігурація
- наявність файлів:
/var/netscaler/logon/LogonPoint/.local_journal(PHP web shell);/var/netscaler/gui/vpn/scripts/linux/*.sigі*.debз нетиповим PHP-кодом;
- рядки, що реєструють
.debабо.sigяк PHP-скрипти, у/etc/httpd.confта інших конфігураціях веб-сервера; - переналаштування
/vpn/media/*.icoна виконання відповідних.sig-файлів; - наявність у
/flash/nsconfig/ns.confлокального облікового записуsec_monitorз роллю суперкористувача; - права
/bin/sh, відмінні від стандартних (перевірити, чи немає режиму6555).
- наявність файлів:
- Мережевий трафік і процеси
- вихідні з’єднання з адресами:
64.94.85[.]67:44331.56.197[.]72:909023.27.143[.]20:900045.141.21[.]130:443(для Python-скриптаmain.py— reverse shell);
- тривалі або об’ємні HTTP-відповіді 404 на запити до
/vpn/media/*.ico; - запущені Python/Perl-процеси, особливо пов’язані з тунелюванням (порт-лісенери, нетипові директорії запуску).
- вихідні з’єднання з адресами:
3. Посилення захисту та довгострокові заходи
- Запровадити регулярний процес перевірки вразливостей за CVE з опорою на NVD:
- CVE-2026-88772 в NVD
- CVE-2026-88771 в NVD
- Централізувати збір логів NetScaler і налаштувати кореляцію за:
- аномальними HTTP-відповідями (404 з великим тілом відповіді, повільна обробка);
- змінами ключових конфігурацій (
ns.conf,httpd.conf); - створенням/зміною локальних облікових записів адміністратора.
- Обмежити адміністративний доступ до NetScaler (management-інтерфейс) лише з виділених сегментів керування.
- Періодично звіряти файлову систему пристроїв із еталонним станом (baseline), щоб виявляти появу нових скриптів і зміну прав.
- Врахувати численні технічні деталі експлуатації, наведені в технічному аналізі watchTowr і їх PoC-репозиторії на GitHub, під час розробки сигнатур IDS/IPS і правил WAF для DTLS-трафіку.
Ключовий висновок: NetScaler уже активно експлуатується як точка входу й опорна точка для довготривалої присутності в мережі, тому в найближчий час необхідно: оновити всі доступні з інтернету Citrix NetScaler до виправлених версій, провести цілеспрямований пошук описаних індикаторів компрометації (обліковий запис sec_monitor, аномальні .sig/.deb/.ico-файли й налаштування httpd.conf, підозрілі вихідні з’єднання), а у разі виявлення слідів атаки — негайно виводити пристрої з експлуатації, відновлювати їх із довіреного образу й заново розгортати конфігурацію після ретельної перевірки.