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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/namest504/cve-2025-66478-exploit-poc
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и ОбразованиеРазработка Полезной Нагрузки
GitHubnamest504/cve-2025-66478-exploit-poc

CVE-2025-66478-Exploit-Poc

Эксплойт PoC для Next.js CVE-2025-66478, демонстрирующий RCE через небезопасную десериализацию и загрязнение прототипа в Server Actions. Включает уязвимое приложение и скрипт эксплойта на Python для исследований в области безопасности.

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

Популярное

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

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

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

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

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

Next.js CVE-2025-66478 PoC

Английский | 한국어

Этот репозиторий содержит доказательство концепции (PoC) для воспроизведения и исследования уязвимости Next.js CVE-2025-66478. Он состоит из уязвимого приложения Next.js и скрипта эксплойта на Python для тестирования уязвимости.

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

Это уязвимость удаленного выполнения кода (RCE), возникающая при обработке Server Actions в Next.js.

Ключевые моменты:

  • Основная причина: Небезопасная десериализация в протоколе RSC (React Server Components) Flight.
  • Вектор атаки: Загрязнение прототипа через свойство __proto__.

Сводка уязвимости

ЭлементОписание
CVE IDCVE-2025-66478
ТипУдаленное выполнение кода (RCE)
Основная причинаНебезопасная десериализация в протоколе RSC Flight
Серьезность (CVSS)10.0 (Критическая)
ВоздействиеВыполнение произвольных системных команд на сервере

Механизм атаки (технические подробности)

  1. Передача полезной нагрузки: Атакующий формирует полезную нагрузку, используя формат сериализации React Flight, внедряя свойства, такие как __proto__.
  2. Небезопасная десериализация и загрязнение: Сервер десериализует полезную нагрузку без надлежащей проверки, что приводит к загрязнению Object.prototype.
  3. Thenable-гаджет: Загрязнение внедряет свойство then во все объекты. Логика Next.js ошибочно идентифицирует эти объекты как Промисы (Thenables).
  4. Выполнение RCE: Когда сервер пытается выполнить await для этого "фальшивого промиса", выполняется вредоносный JavaScript-код, внедренный в метод then (например, child_process.execSync).
root@kitploit:~
sequenceDiagram
    participant Attacker
    participant Server as Next.js Server
    
    Attacker->>Server: POST / (JSON with "__proto__": {"then": ...})
    Note right of Server: JSON Parsing Pollutes Object.prototype
    
    Server->>Server: Application Logic encounters an Object
    
    rect rgb(200, 150, 150)
    Note right of Server: "Thenable" Check Gadget
    Server->>Server: Checks: typeof obj.then === 'function'?
    Server-->>Server: YES (due to pollution)
    end
    
    Server->>Server: Await/Execute malicious .then()
    Note right of Server: Malicious JS Code Runs (RCE)
    
    Server-->>Attacker: Response (Action Redirect / Error info)

В результате, когда сервер обрабатывает этот манипулируемый промис, выполняется внедренный атакующим JavaScript-код, что может привести к выполнению системных команд. Включенный файл main.py является примером кода, воспроизводящего этот сценарий атаки.

Затронутые версии

Эта уязвимость затрагивает приложения Next.js, использующие App Router.

  • Затронуты:
    • Next.js 15.x
    • Next.js 16.x
    • Next.js 14.3.0-canary.77 и новее (Canary-релизы)
  • Не затронуты:
    • Next.js 13.x
    • Стабильные версии Next.js 14.x
    • Приложения, использующие только Pages Router
    • Edge Runtime

Исправленные версии:

  • 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7
  • 16.0.7
  • 15.6.0-canary.58 (для пользователей PPR)

Ссылки

  • Уведомление о безопасности Next.js
  • NVD - CVE-2025-66478

Структура файлов

  • next.js/: Пример кода уязвимого веб-приложения Next.js.
  • exploit/: Скрипт выполнения эксплойта на Python (main.py).

Предварительные требования

  • Node.js: версия 18 или выше рекомендуется.
  • Python: версия 3.8 или выше рекомендуется.

1. Запуск приложения Next.js

Сначала необходимо запустить целевой сервер Next.js.

  1. Перейдите в каталог next.js:

    root@kitploit:~
    cd next.js
    
  2. Установите зависимости:

    root@kitploit:~
    npm install
    # Также можно использовать yarn или pnpm.
    
  3. Запустите сервер разработки:

    root@kitploit:~
    npm run dev
    

    Убедитесь, что вы можете открыть http://localhost:3000 в браузере.

2. Запуск эксплойта на Python

Теперь вы можете протестировать уязвимость с помощью скрипта на Python.

  1. Перейдите в каталог exploit из корня проекта:

    root@kitploit:~
    cd exploit
    
  2. (Опционально) Рекомендуется использовать виртуальное окружение:

    root@kitploit:~
    python3 -m venv venv
    source venv/bin/activate  # Для Windows: venv\Scripts\activate
    
  3. Установите необходимые библиотеки: Требуется модуль requests.

    root@kitploit:~
    pip install requests
    
  4. Запустите скрипт:

    root@kitploit:~
    python main.py
    

    По умолчанию он нацелен на локальный адрес (http://localhost:3000). Для тестирования другого адреса используйте опцию --url:

    root@kitploit:~
    python main.py --url http://target-ip:3000
    

Отказ от ответственности

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

Скачать инструмент