- CVE-2025-55182 в React та CVE-2025-66478 в Next.js дозволяють неавтентифіковане віддалене виконання коду через протокол React Server Components Flight.
- Проблема виникає через небезпечну десеріалізацію створених корисних навантажень RSC, що впливає на конфігурації за замовчуванням у популярних фреймворках.
- Дослідники повідомляють про майже 100% надійність експлуатації та оцінюють, що близько 39–40% хмарних середовищ містять вразливі екземпляри.
- Негайне оновлення до захищених версій React та Next.js є єдиним остаточним засобом пом'якшення; захисникам також слід провести аудит будь-якого фреймворку з підтримкою RSC.
Протягом останніх кількох днів екосистема JavaScript боролася з парою... вразливості безпеки максимального ступеня серйозності у React та Next.js, які відкривають шлях для віддаленого виконання коду на уражених серверах. Недоліки, позначені як CVE-2025-55182 для React та CVE-2025-66478 для Next.js зосередьтеся на тому, як компоненти React Server обробляють спеціалізований мережевий трафік у так званому протоколі Flight.
Оскільки ці проблеми впливають конфігурації фреймворку за замовчуванням і які можна запустити лише за допомогою спеціально створеного HTTP-запиту, вони швидко очолювали списки виправлень багатьох команд безпеки. Постачальники, дослідники та хмарні провайдери тепер погоджуються з одним і тим же меседжем: негайно виправляти, оцінювати вплив та готуватися до широкомасштабного сканування та спроб використання.
Що насправді являють собою CVE-2025-55182 та CVE-2025-66478
В основі проблеми лежить недолік у пакет react-server, компонент, що забезпечує роботу React Server Components (RSC) та протоколу Flight. У вразливих версіях сервер приймає спеціально сформовані корисні навантаження RSC та десеріалізує їх без належної перевірки, що дозволяє даним, контрольованим зловмисником, втручатися в логіку, що працює на сервері.
Така поведінка перетворює те, що мало б бути структурованими даними, на засіб для виконання привілейованого JavaScript на серверній частині. Коли HTTP-запит спрямований на кінцеву точку RSC або Server Function зі шкідливим корисним навантаженням Flight, небезпечний шлях десеріалізації може бути використаний для досягнення неавтентифікованого віддаленого виконання коду (RCE). Попередній доступ, облікові дані чи взаємодія з користувачем не потрібні.
Сторона React у вирішенні проблеми відстежується як CVE-2025-55182, що посідає перше місце за шкалою CVSS з балом 10.0. Оскільки Next.js реалізує RSC та протокол Flight поверх цих примітивів, він успадковує ту саму основну слабкість; цей вплив нижче за течією призначається CVE-2025-66478 і має однаковий рейтинг серйозності.
У рекомендаціях щодо безпеки помилка описується як вразливість логічної десеріалізації а не класична проблема безпеки пам'яті. Проблема полягає в тому, як корисні навантаження аналізуються та довіряються їм, а не в обробці низькорівневого буфера. Тим не менш, результат не менш серйозний: віддалений зловмисник може керувати виконанням на стороні сервера.

Які налаштування React та Next.js є вразливими
Вплив вразливості Серверний стек React 19 у кількох поширених версіях. Розробники оновлень визначили такі версії, як 19.0, 19.1.0, 19.1.1 та 19.2.0, як вразливі для react-server пакет та його реалізація протоколу Flight. Патчені гілки розповсюджуються як 19.0.1, 19.1.2 і 19.2.1, які запроваджують посилену логіку десеріалізації.
З боку каркасу, Next.js змінюється з коробкиТипова програма, згенерована за допомогою create-next-app, створений для продакшену та розгорнутий із налаштуваннями за замовчуванням, може бути експлуатований без додавання додаткового коду розробником. Тому Vercel, компанія, що стоїть за Next.js, видала власне попередження під CVE-2025-66478 та випустила оновлені версії фреймворку, які використовують виправлені пакети React.
Вплив не обмежується лише Next.js. Будь-який компонент екосистеми, який об'єднується або підключається до компонентів React Server і протокол Flight, ймовірно, викритий. Це включає, серед іншого, такі інструменти та фреймворки, як:
- Next.js
- @vitejs/plugin-rsc (Плагін Vite RSC)
- @посилка/rsc (Плагін Parcel RSC)
- Попередній перегляд React Router RSC
- RedwoodSDK / rwsdk
- Ваку
Дослідницькі групи наголосили на тому, що конфігурації за замовчуванням зазвичай під загрозоюІншими словами, навіть якщо розробник навмисно не вмикав жодних експериментальних прапорців чи незвичайних налаштувань, його розгортання все ще може бути зломним, якщо воно використовує уражену версію компонентів React Server.
Наскільки легко експлуатувати та чому захисники хвилюються
Що стурбувало спільноту безпеки, так це низький бар'єр для експлуатаціїКілька дослідницьких груп повідомляють, що для атаки на ці недоліки потрібно лише надсилати спеціально сформований HTTP-запит до досяжної кінцевої точки RSC або Server Function. Немає потреби в автентифікації, складних попередніх умовах чи взаємодії з користувачем, що робить цей сценарій особливо привабливим для автоматизованих атак.
Під час контрольованого тестування такі команди, як Wiz Research, створили робочі експлойти для підтвердження концепції та спостерігали майже 100% надійність у запуску RCE на вразливих системах. Хоча ці повні корисні навантаження ще не випущені, консенсус полягає в тому, що базова поведінка достатньо проста, щоб інші могли реконструювати робочі експлойти, вивчаючи публічні патчі.
З огляду на популярність React та Next.js, деякі експерти вважають, що масове сканування та озброєння – це лише питання часуІснують ранні порівняння з іншими серйозними вразливостями на стороні сервера, де кількість випадків експлуатації різко зросла після того, як технічні деталі та приклади коду поширилися в підпільних спільнотах або публічних репозиторіях.
Дослідники також підкреслюють, широта потенційних цілейReact є основою сайтів і додатків у великих організаціях, таких як соціальні мережі, електронна комерція, потокове передавання, SaaS тощо. Фреймворки, такі як Next.js, широко використовуються як для внутрішніх, так і для клієнтських додатків, а це означає, що вразливі екземпляри можуть з'являтися глибоко в корпоративних мережах, а також на публічних фронтендах.
На момент публікації багатьох рекомендацій було немає підтверджених повідомлень про експлуатацію в дикій природіОднак, аналітики кажуть, що цілком обґрунтовано припустити, що зловмисники вже проводять зворотне проектування виправлень та визначають, які хости є доступними та налаштованими неправильно.
Наскільки поширений вплив у хмарних середовищах
Кілька точок даних зі сканування хмарних технологій ілюструють масштаб проблеми. Мисливці за загрозами у Wiz повідомляють, що близько 39% хмарних середовищ Вони проаналізували екземпляри React або Next.js з версіями, вразливими до CVE-2025-55182 та/або CVE-2025-66478. Інші аналізи наближають цю цифру до 40%, якщо обидві технології враховувати разом.
Якщо розглядати конкретно Next.js, то сам фреймворк виглядає приблизно так 69% середовищ у своєму наборі даних. З них значна більшість хостів загальнодоступні додатки побудовано на Next.js. Іншими словами, їхня телеметрія показує, що приблизно 44% усіх хмарних середовищ мати принаймні один екземпляр Next.js, доступний з Інтернету, незалежно від того, чи на нього наразі встановлено патч.
Це поєднання висока щільність розгортання та громадський вплив саме те, що шукають зловмисники, обираючи, в які вразливості інвестувати зусилля. Один ланцюжок експлойтів можна повторно використовувати у великих масштабах проти багатьох цілей зі схожими налаштуваннями, а автоматизовані інструменти можуть сканувати цілі діапазони IP-адрес, щоб знайти непатчені сервери.
Деякі постачальники працюють над звуженням радіуса вибуху. Наприклад, Google зазначив, що загальнодоступні образи ОС за замовчуванням використовуються в Compute Engine від Google Cloud, не є вразливими з коробки, хоча клієнтам все одно потрібно перевіряти та виправляти будь-які програми, які вони розгортають поверх цих образів.
Пропонування постачальників Брандмауери веб-додатків (WAF) також беруть участь у дискусії. Cloudflare, наприклад, припустив, що його WAF може допомогти захистити деякі React-додатки від спроб експлойтів, коли трафік повністю маршрутизується через сервіс, хоча такий захист краще розглядати як додатковий рівень, а не як заміну оновлення базового програмного забезпечення.
Хронологія, виявлення та відповідь постачальника
Ланцюг подій навколо CVE-2025-55182 та CVE-2025-66478 розгортався швидко. Дослідник безпеки Лахлан Девідсон виявили проблему у способі декодування React корисних навантаження, що спрямовуються до кінцевих точок React Server Function, та повідомили про неї через програму винагороди за виявлені помилки Meta наприкінці листопада.
React, спочатку розроблений у Meta і зараз наріжний камінь багатьох сучасних веб-стеків, швидко змінився після підтвердження звіту. Приблизно протягом чотирьох днівКоманда React, у координації з Meta, випустила екстрені оновлення для уражених ліній 19.x, а також попередження про безпеку, в якому закликали до негайного оновлення.
Того ж дня Версель оголосив власне попередження для Next.js під CVE-2025-66478. Розробники фреймворку опублікували виправлені релізи, інструкції для користувачів та детальну інформацію про те, як реалізація RSC у Next.js успадковує вразливу поведінку від серверних бібліотек React.
Багато публічних статей навмисно пропустити покрокові деталі експлойту поки що. Натомість вони зосереджуються на поясненні ризику, переліку уражених компонентів і версій, а також на спрямуванні користувачів до оновлених збірок. Мета полягає в тому, щоб дати захисникам час для розгортання виправлень, одночасно уповільнюючи менш досвідчених зловмисників.
Представники галузі, зокрема дослідники таких компаній, як watchTowr та Rapid7, повторили повідомлення про те, що це питання високого пріоритету для всіх, хто використовує React або Next.js у продакшені, і що вікно перед публічним використанням поверхні може бути коротким.
Що команди повинні робити зараз
Для організацій, які використовують компоненти React Server, Next.js або будь-які плагіни та фреймворки з підтримкою RSC, найчіткішою інструкцією є наступне: оновлення до захищених версій є єдиним повним пом'якшенням наслідківНемає перемикача конфігурації, який би безпечно нейтралізував помилку, залишаючись при цьому на вразливих релізах.
З боку React це означає перехід з постраждалих збірок 19.x, таких як 19.0, 19.1.0, 19.1.1 та 19.2.0, на 19.0.1, 19.1.2 або 19.2.1, залежно від того, до якої гілки закріплено проєкт. Ці версії включають суворіші перевірки корисних навантажень протоколу Flight та блокують небезпечну поведінку десеріалізації.
Для користувачів Next.js рекомендується оновлення до виправлених релізів фреймворку оголошено в рекомендаціях Vercel, гарантуючи, що дерево залежностей завантажить виправлені пакети сервера React. Навіть проекти, які явно не використовують RSC у власному коді, все ще можуть бути доступні, якщо фреймворк дозволяє роботу серверних компонентів "під капотом".
Команди, які покладаються на інші стеки з підтримкою RSC, зокрема Redwood, Waku, попередній перегляд React Router RSC та плагіни RSC для Vite та Parcel, повинні стежити за офіційними каналами з цих проектів. Багато з них об'єднують власні копії середовища виконання сервера React, тому їхні розробники публікують спеціальні інструкції з оновлення та номери версій, на які слід звернути увагу.
Для організацій з великими хмарними ресурсами може бути важко зрозуміти, де знаходяться всі вразливі елементи. Деякі постачальники рішень безпеки, такі як Wiz, пропонують попередньо складені запити та рекомендації на своїх платформах, щоб допомогти клієнтам ідентифікувати уражені екземпляри React та Next.js у різних середовищах. Інші ж надають логіку виявлення та правила сканування для адаптації внутрішніми командами безпеки.
Що це означає для ширшої веб-екосистеми
Поява CVE-2025-55182 та CVE-2025-66478 спонукає до ширшого обговорення того, як... Серверні JavaScript-фреймворки обробляють складні формати серіалізаціїRSC та протокол Flight — це потужні інструменти для створення сучасних застосунків, але та ж гнучкість, яка забезпечує розширені функції, може також створювати ледь помітні поверхні для атак, якщо логіка парсингу не буде ретельно заблокована.
Для розробників цей епізод є нагадуванням про те, що покладання на поведінку фреймворку за замовчуванням не гарантує безпеки та важливість захисту від атаки на ланцюг поставок проти npmУ цьому випадку звичайних шаблонних налаштувань було достатньо, щоб піддати застосунок неавтентифікованому RCE. Відстеження рекомендацій щодо безпеки, закріплення залежностей та швидке застосування оновлень стають невід'ємними завданнями для команд, які постачають сервіси на основі React або Next.js.
З захисної точки зору, організації використовують цю подію для перегляду своїх багаторівневі стратегії захистуВиправлення є пріоритетним завданням, але багато хто також розглядає можливість посилення контролю доступу до адміністративних або внутрішніх кінцевих точок, розгортання правил WAF для виявлення підозрілого трафіку протоколу Flight та покращення спостереження за помилками на стороні сервера, які можуть свідчити про спроби експлойту.
Ця ситуація також підкреслює, наскільки велика частина інтернету зараз залежить від відносно невеликого набору спільні компоненти з відкритим кодомОдна-єдина помилка в широко розповсюдженій бібліотеці може поширитися на хмарних постачальників, SaaS-платформи та корпоративні середовища всього за кілька днів. Скоординоване розкриття інформації, швидка реакція постачальників та чітка комунікація стають критично важливими, коли це стосується так багато організацій одночасно.
Наразі основна увага зосереджена на встановленні вразливих React та Next.js на виправлених релізах до експлуатація стає рутиноюОскільки дослідники повідомляють про майже ідеальну надійність експлойтів, вразливість конфігурацій за замовчуванням та значну частину хмарних середовищ, що використовують уражені версії, ці CVE швидко перетворилися з незрозумілих деталей протоколу на нагальну операційну проблему для команд, що підтримують сучасні JavaScript-додатки.
