یک آسیبپذیری امنیتی با شدت بالا (High) تحت شناسه CVE-2026-102281 در فریمورک NestJS کشف شده است که میتواند منجر به توقف کامل میکروسرویسهای مبتنی بر این فریمورک شود.
جزئیات فنی
این نقص امنیتی در نسخههای پیش از 11.2.4 و 12.0.2 رخ میدهد. مشکل زمانی ایجاد میشود که یک پیام حاوی یک شیء با تودرتگی بسیار زیاد (Deeply Nested Object) در بخش pattern ارسال شود. در این حالت، متدهای ServerTCP#handleMessage و ServerRMQ#handleMessage یک الگوی غیررشتهای (non-string) را که توسط کاربر کنترل میشود، به تابع JSON.stringify پاس میدهند تا کلید جستجوی هندلر را استخراج کنند.
اگر تودرتگی این شیء بیش از حد باشد، خطای RangeError: Maximum call stack size exceeded رخ داده و به دلیل عدم مدیریت صحیح Promise Rejection، کل میکروسرویس متوقف (Terminate) میشود.
دامنه تأثیر
- پروتکلهای affected: این آسیبپذیری میکروسرویسهایی را که از ترنسپورتهای TCP یا RabbitMQ استفاده میکنند، هدف قرار میدهد.
- نوع حمله: Denial of Service (DoS)
راهکار رفع مشکل
به تمامی توسعهدهندگان و مدیران زیرساخت توصیه میشود در سریعترین زمان ممکن، فریمورک NestJS خود را به نسخههای 11.2.4 یا 12.0.2 و بالاتر بهروزرسانی کنند تا این حفره امنیتی بسته شود.