منوی رادکام

هشدار امنیتی جدی برای پروژه‌های Next.js

هشدار امنیتی جدی برای پروژه‌های Next.js
یک نقص امنیتی با امتیاز CVSS 10.0 در پروتکل React Server Components کشف شده که می‌تواند بدون احراز هویت، منجر به اجرای کد مخرب در سرور شود. همه کاربران Next.js موظف‌اند فوراً به نسخه‌های ایمن ارتقا دهند.

آسیب‌پذیری جدید با شناسه CVE-2025-66478 در فریم‌ورک Next.js منتشر شده است؛ ضعفی که در پروتکل RSC به مهاجم اجازه می‌دهد با ارسال درخواست‌های دستکاری‌شده، مسیرهای اجرایی ناخواسته در سرور را فعال کند. این موضوع می‌تواند به Remote Code Execution منجر شود. تمامی نسخه‌های Next.js 15.x و 16.x تحت تأثیر هستند و تنها نسخه‌های منتشرشده در خطوط ۱۵ و ۱۶ که وصله امنیتی اعمال کرده‌اند امن محسوب می‌شوند. ابزار رسمی npx fix-react2shell-next نیز برای بررسی و رفع سریع مشکل منتشر شده است. پروژه‌هایی که از مانا CMS رادکام استفاده می‌کنند نیازی به اقدام ندارند، زیرا اصلاح امنیتی در هسته نرم‌افزار اعمال شده است.

معرفی تهدید: آسیب‌پذیریی با ریسک حداکثری

در تاریخ چهارشنبه ۱۲ آذرماه ۱۴۰۴، یک هشدار امنیتی بسیار مهم در سطح جهانی منتشر شد که پروژه‌های مبتنی بر Next.js را تحت تأثیر قرار می‌دهد. این آسیب‌پذیری که با شناسه CVE-2025-66478 ردیابی می‌شود، از سوی تیم امنیتی Next.js و جامعه متن‌باز React به‌عنوان یک «رخنه بحرانی» طبقه‌بندی شده است. امتیاز ۱۰ از ۱۰ در مقیاس CVSS به‌خودی‌خود نشان می‌دهد که شدت و اثرگذاری این نقص در بالاترین سطح ممکن قرار دارد.

مشکل پیش‌آمده مستقیماً به پیاده‌سازی React Server Components (RSC) مربوط می‌شود؛ قابلیتی که در نسخه‌های جدید React و Next.js یک تحول اساسی در رندرینگ سمت سرور ایجاد کرده است. در این آسیب‌پذیری، ورودی‌های کنترل‌نشده در لایه RSC می‌توانند مسیرهای داخلی اجرا را تغییر دهند و در شرایط مشخص، منجر به اجرای کد دلخواه مهاجم روی سرور شوند. این سناریو، از دید امنیتی، همان بدترین نوع تهدید در اپلیکیشن‌های وب است: Remote Code Execution (RCE).

منشأ آسیب‌پذیری: مشکل از React شروع شد

این رخنه در حقیقت از پیاده‌سازی upstream در کتابخانه React آغاز شده بود که با شناسه CVE-2025-55182 ثبت شد. پس از اعلام اولیه، تیم Next.js بررسی کرد که این نقص چگونه روی اپلیکیشن‌های مبتنی بر App Router اثر می‌گذارد. نتیجه بررسی‌ها این بود که سازوکار RSC در Next.js نیز از همین ضعف تأثیر می‌پذیرد؛ بنابراین اعلان رسمی CVE-2025-66478 برای کاربران Next.js منتشر شد.

وجود نسخه‌های Canary و Snapshotهای آزمایشی نیز باعث شده بود که دامنه آسیب گسترده‌تر شود؛ چراکه بسیاری از توسعه‌دهندگان از این نسخه‌ها برای قابلیت‌هایی مانند PPR (Partial Prerendering) استفاده می‌کردند.

دامنه تأثیر: کدام نسخه‌ها آسیب‌پذیرند؟

تمام نسخه‌های زیر تحت تأثیر این رخنه هستند:

  • Next.js 15.x (تمام نسخه‌ها تا قبل از وصله امنیتی)
  • Next.js 16.x (تمام نسخه‌ها تا قبل از وصله امنیتی)
  • نسخه‌های Canary:
    • 14.3.0-canary.77 و جدیدتر
    • تمامی Canary های خطوط ۱۵ و ۱۶

نسخه‌هایی که تحت تأثیر نیستند شامل موارد زیرند:

  • Next.js 13.x
  • نسخه‌های پایدار 14.x
  • App‌هایی که از Pages Router استفاده می‌کنند
  • اپلیکیشن‌هایی که بر بستر Edge Runtime اجرا می‌شوند

به این ترتیب، پروژه‌هایی که از RSC و App Router استفاده می‌کنند در معرض بیشترین خطر قرار دارند.

شدت تهدید: چرا این آسیب‌پذیری خطرناک است؟

ماهیت RSC باعث می‌شود بخشی از منطق اپلیکیشن از سمت کلاینت به سمت سرور منتقل شود. این انتقال، اگر با کنترل مناسب ورودی همراه نباشد، راهی برای تزریق رفتارهای ناخواسته در مسیر اجرا فراهم می‌کند.

در این نقص:

مهاجم نیازی به احراز هویت ندارد.

  • مهاجم می‌تواند ساختار درخواست را طوری تغییر دهد که مسیرهای اجرایی داخلی سرور هدایت شوند.
  • در برخی سناریوها، امکان اجرای کد JavaScript در محیط سرور فراهم می‌شود.
  • ریسک شامل افشای ساختار داخلی پروژه، تغییر رفتار اپلیکیشن و دسترسی به اطلاعات حساس است.
  • این رخنه می‌تواند برای حملات زنجیره‌ای در زیرساخت‌های ابری نیز استفاده شود.

از دید امنیتی، RCE همیشه در رده خطرناک‌ترین نوع حمله‌ها قرار می‌گیرد؛ زیرا مهاجم به‌جای تخریب داده یا سرقت اطلاعات، به هسته منطق پردازش سرور دسترسی پیدا می‌کند.

نسخه‌های امن منتشرشده

تیم Next.js مجموعه‌ای از نسخه‌های امن را منتشر کرده است:

نسخه‌های پایدار رفع‌شده:

  • 15.0.5
  • 15.1.9
  • 15.2.6
  • 15.3.6
  • 15.4.8
  • 15.5.7
  • 16.0.7

نسخه‌های Canary پچ‌شده:

  • 15.6.0-canary.58
  • 16.1.0-canary.12

این نسخه‌ها حاوی پیاده‌سازی تقویت‌شده RSC و اصلاح امنیتی کامل هستند.

دستورالعمل اضطراری: ارتقاء فوری

تمام کاربران باید فوراً به نسخه ایمن متناظر با خط نسخه خود مهاجرت کنند.

عدم وجود راهکار موقت

طبق اعلام رسمی تیم Next.js:

«هیچ راهکار موقتی (Workaround) وجود ندارد. تنها راه کاهش ریسک، ارتقاء به نسخه اصلاح‌شده است.»

این موضوع اهمیت بالای مهاجرت فوری را دوچندان می‌کند.

وضعیت پروژه‌های مبتنی بر مانا CMS

براساس اطلاعیه رسمی:

اگر سایت شما از نرم افزار مدیریت پورتال مانا (Mana CMS) استفاده می‌کند، این آسیب‌پذیری در هسته سیستم اصلاح شده است و نیازی به اقدام کاربران نیست.

اما اگر پروژه سفارشی Next.js دارید یا App Router فعال است، باید بدون تأخیر اقدام کنید.

اهمیت این رخداد برای صنعت توسعه وب

این رویداد چند پیام مهم دارد:

RSC یک فناوری قدرتمند اما پیچیده است

با انتقال بخشی از منطق به سرور، سطح حمله (Attack Surface) گسترش می‌یابد. بنابراین امنیت باید همراه با معماری جدید توسعه یابد.

پروژه‌های مبتنی بر جاوااسکریپت پیچیده‌تر می‌شوند

با اضافه‌شدن لایه‌های نوین زیر مسیرهای اجرایی بیشتری باید ایمن‌سازی شود:

  • Server Actions
  • Partial Prerendering
  • Segment-level Streaming

وابستگی عمیق به اکوسیستم متن‌باز

وقتی نقص در لایه upstream (React) رخ می‌دهد، ده‌ها فریم‌ورک و هزاران وب‌سایت تحت تأثیر قرار می‌گیرند. هماهنگی سریع تیم‌های React، Vercel و جامعه متن‌باز نقش کلیدی در جلوگیری از گسترش تهدید دارد.

RCE همیشه بحرانی‌ترین نوع آسیب‌پذیری است

در رویدادهای با شدت بالا، زمان پاسخ‌دهی توسعه‌دهندگان مهم‌ترین عامل کاهش خسارت است.

کشف آسیب‌پذیری و همکاری امنیتی

این نقص توسط Lachlan Davidson کشف و با روش Responsible Disclosure گزارش شد. تا تکمیل مهاجرت پروژه‌ها، تیم امنیتی Next.js از ارائه جزئیات کامل خودداری کرده است تا ریسک سوءاستفاده کاهش یابد.

پیامدهای بالقوه برای سازمان‌ها

اگر یک سازمان پروژه‌های خود را سریعاً به‌روزرسانی نکند، احتمال وقوع سناریوهای زیر وجود دارد:

  • نفوذ به سرور بدون نیاز به احراز هویت
  • تغییر خروجی و رفتار اپلیکیشن در زمان اجرا
  • استخراج اطلاعات حساس محیط سرور
  • حملات گسترده به زنجیره تأمین (Supply Chain)
  • تزریق کد مخرب در فرآیند رندرینگ RSC

برای سازمان‌هایی که داده‌های حساس، احراز هویت پیچیده یا پردازش مالی انجام می‌دهند، تأخیر در به‌روزرسانی می‌تواند خسارت جدی ایجاد کند.

نرم افزار مدیریت پورتال مانا مصون از آسیب

آسیب‌پذیری CVE-2025-66478 یکی از مهم‌ترین رخدادهای امنیتی سال ۲۰۲۵ برای اکوسیستم JavaScript و فریم‌ورک‌های مبتنی بر React محسوب می‌شود. این نقص به‌طور مستقیم بر معماری RSC اثر گذاشته و قابلیت سوءاستفاده از مسیرهای داخلی سرور را فراهم می‌کند.

به دلیل امتیاز CVSS 10.0 و نبود هرگونه راهکار موقتی، ارتقاء فوری به نسخه‌های امن الزام صددرصدی است.

سازمان‌هایی که پروژه‌هایشان بر پایه App Router اجرا می‌شود باید این هشدار را بسیار جدی بگیرند.

برای کاربران مانا CMS رادکام، این اصلاح به‌صورت کامل در هسته اعمال شده است و نیاز به اقدام نیست.

16 آذر 1404

4بازدید

هشدار امنیتی جدی برای پروژه‌های Next.js | رادکام