معرفی CVE-2025-29927 و اهمیت آن در توسعه وب CVE-2025-29927 یک آسیبپذیری بحرانی Authorization Bypass در فریمورک محبوب Next.js است که در مارس ۲۰۲۵ بهطور عمومی معرفی شد و نمرهی شدت آن ۹.۱ (Critical) گزارش شده است. این نقص امنیتی به مهاجمان اجازه میدهد با استفاده از هدر داخلی خاص، بررسیهای امنیتی در Middleware برنامههای Next.js […]
CVE-2025-29927 یک آسیبپذیری بحرانی Authorization Bypass در فریمورک محبوب Next.js است که در مارس ۲۰۲۵ بهطور عمومی معرفی شد و نمرهی شدت آن ۹.۱ (Critical) گزارش شده است. این نقص امنیتی به مهاجمان اجازه میدهد با استفاده از هدر داخلی خاص، بررسیهای امنیتی در Middleware برنامههای Next.js را دور بزنند و به مسیرهای محافظتشده دسترسی پیدا کنند، حتی بدون احراز هویت.
Next.js برای مدیریت صحیح Middleware و جلوگیری از حلقههای بینهایت، از هدر داخلی x-middleware-subrequest استفاده میکند. این هدر در حالت عادی تنها برای درخواستهای داخلی سیستم کاربرد دارد، اما نقص در نحوه پردازش آن باعث میشود که مهاجم بتواند با ارسال مقدار خاص در این هدر، اجرای Middleware را کاملاً دور بزند. در نتیجه، برنامههای وب بهجای اعمال بررسیهای امنیتی، مستقیماً به اجرای مسیر درخواستشده میپردازند.
بهعنوان مثال، ارسال یک درخواست مانند:
GET /admin HTTP/1.1
Host: vulnerable-site.com
x-middleware-subrequest: middleware:middleware:middleware:middleware:middleware
میتواند باعث شود Middleware که مسئول احراز هویت یا دسترسی است انجام نشود و صفحه مدیریت بهصورت غیرمجاز در دسترس قرار گیرد.
آسیبپذیری CVE-2025-29927 فریمورک Next.js را در نسخههای قدیمیتر تحت تأثیر قرار میدهد. نسخههایی از Next.js که قبل از نسخههای ۱۲.۳.۵، ۱۳.۵.۹، ۱۴.۲.۲۵ و ۱۵.۲.۳ هستند، در برابر این نقص آسیبپذیر محسوب میشوند.
راهکار اصلی برای رفع این تهدید، بهروزرسانی به نسخههای پچشده است. در صورتی که بهروزرسانی فوری امکانپذیر نباشد، میتوان در لایههای شبکه یا سرور Web Application Firewall (WAF) درخواستهایی را که حاوی هدر x-middleware-subrequest هستند، مسدود کرد تا از سوءاستفاده جلوگیری شود.
برخی پلتفرمهای میزبانی مانند Vercel و Netlify بهطور خودکار از این آسیبپذیری در بسیاری از موارد محافظت میکنند یا شرایطی ایجاد میکنند که Middleware به شیوه دیگری اجرا شود، بنابراین این محیطها لزوماً آسیبپذیر نیستند.
اگر این نقص در یک برنامهی وب مورد بهرهبرداری قرار گیرد، مهاجم میتواند به صفحات مدیریتی یا دادههای حساس دسترسی پیدا کند و اطلاعات کاربران را افشا یا تغییر دهد. سازمانها باید فوراً برنامههای مبتنی بر Next.js را بررسی کنند، نسخهها را بهروزرسانی کنند و لایههای امنیتی مکمل مانند اعتبارسنجی در سمت سرویسدهنده را بهکار گیرند تا خطرات این نوع دورزدن مجوز کاهش یابد.
https://github.com/aydinnyunus/CVE-2025-29927