Skip to content
RSC-Scanner

RSC-Scanner

Sploitus September 19, 2026

##

# Сканер раскрытия исходного кода .js RSC

Сканер безопасности для обнаружения уязвимости CVE-2025-55183 – раскрытия исходного кода .js React Server Components (RSC).

Данный сканер обнаруживает раскрытие исходного кода в .js React Server Components (RSC). Вредоносный HTTP-запрос, отправленный на уязвимую серверную функцию, может небезопасно вернуть исходный код любой серверной функции, если аргумент преобразуется в строку.

* 🔍 **Автоматическое сканирование** : Сканирует отдельные URL-адреса или списки хостов

* ⚡ **Параллельное сканирование** : Многопоточное сканирование для ускорения работы

* 🔄 **Логика повторных попыток** : Автоматические повторы с экспоненциальной задержкой при временных ошибках

* 📊 **Несколько форматов вывода** : Текстовый, JSON и CSV форматы

* 🚦 **Ограничение скорости** : Настраиваемое ограничение запросов во избежание перегрузки целей

* 📈 **Индикаторы прогресса** : Визуальные полосы прогресса для длительных сканирований

* 🎭 **Ротация User-Agent** : Случайная ротация User-Agent для обхода обнаружения

* 🔇 **Режимы подробного вывода** : Несколько уровней детализации для отладки

Создайте текстовый файл с одним хостом на строку. Сканер извлекает имя хоста из первого столбца (поддерживает ввод с разделителями табуляции или пробелами):

example.com 192.0.2.1 Cloudflare

subdomain.example.com 192.0.2.2 Cloudflare

Строки, начинающиеся с `#`, считаются комментариями и игнорируются.

input Целевой URL или файл со списком хостов

-h, --help Показать справку и выйти

Тайм-аут запроса в секундах (по умолчанию: 10)

--threads THREADS Количество параллельных потоков (по умолчанию: 1)

--delay DELAY Задержка между запросами в секундах (по умолчанию: 0.5)

Запросов в секунду на один хост (0 для отключения, по умолчанию: 10.0)

--retries RETRIES Количество повторных попыток для невыполненных запросов (по умолчанию: 3)

-v, --verbose Увеличить подробность вывода (-v, -vv, -vvv)

-q, --quiet Подавить несущественный вывод

# Сканировать с 10 параллельными потоками

python3 scanner.py hosts.txt --threads 10

python3 scanner.py hosts.txt --format json -o results.json

python3 scanner.py hosts.txt --format csv -o results.csv

# Установить задержку между запросами и ограничение скорости

python3 scanner.py hosts.txt --delay 1.0 --rate-limit 5.0

python3 scanner.py hosts.txt --quiet -o results.json

Человекочитаемый текстовый вывод со сводкой сканирования и детальными результатами:

============================================================

============================================================

============================================================

[+] - Not vulnerable

Структурированный вывод JSON с полными деталями сканирования:

"chunk_paths": ["/_next/static/chunks/..."],

Значения, разделённые запятыми, для удобного импорта в электронные таблицы:

URL,Vulnerable,Chunks Found,Action IDs Found,Leaked Sources Count,Error

1. **Обнаружение чанков** : Загружает целевую страницу и извлекает пути к JavaScript-чанкам из ссылок `/_next/static/chunks/`

2. **Извлечение идентификаторов действий** : Загружает файлы чанков и извлекает идентификаторы серверных действий (шестнадцатеричные строки длиной 40–42 символа)

3. **Эксплуатация** : Отправляет вредоносные запросы с нагрузкой `$F1` каждому идентификатору действия, чтобы вызвать раскрытие исходного кода

* `1`: Найден один или более уязвимых хостов

* **Только авторизованное тестирование** : Используйте этот инструмент только в системах, которыми вы владеете или на тестирование которых имеете явное письменное разрешение

* **Ограничение скорости** : Используйте соответствующее ограничение скорости, чтобы не перегружать целевые серверы

* **Этичное использование** : Этот инструмент предназначен только для исследований безопасности и авторизованного тестирования на проникновение

* Убедитесь, что целевые URL-адреса доступны

* Включите подробный режим: `-vv` для просмотра подробных сообщений об ошибках

* Понизьте лимит запросов: `--rate-limit 2.0`

* Используйте меньше потоков: `--threads 1`

Примечание: `tqdm` необязателен – сканер будет работать и без него, но не будет показывать полосы прогресса.

Этот инструмент предоставляется только для образовательных целей и авторизованного тестирования безопасности.

Этот инструмент предназначен для исследований безопасности и авторизованного тестирования на проникновение. Несанкционированное использование против систем, которыми вы не владеете или на тестирование которых не имеете разрешения, является незаконным и неэтичным. Авторы не несут ответственности за любое неправомерное использование этого инструмента.

* CVE-2025-55183: Уязвимость раскрытия исходного кода .js RSC

Extracted Entities