آسیب‌پذیری ReDoS در Angular

آسیب‌پذیری ReDoS در Angular

تاریخ ایجاد

آسیب‌پذیری با شناسه CVE-2024-21490 و شدت بالا 7.5 در Angular امکان انکار سرویس عبارت منظم  (ReDoS)را برای مهاجم فراهم می‌آورد. این آسیب‌پذیری به‌دلیل backtracking در برابر زمان اجرای super-linear runtime یک عبارت منظم که به منظور تقسیم مقدار دستور ng-srcset  استفاده می‌شود، رخ می‌دهد و منجر به عقب‌نشینی و انکار سرویس توسط یک ورودی بزرگ (که با دقت ساخته شده است) می‌شود.  Denial of Service (DoS) گروهی از حملات را توصیف می‌کند که هدف آن‌ها از دسترس خارج کردن یک سیستم برای کاربران اصلی و قانونی آن است. حملات DoS انواع مختلفی دارد، از جمله: تلاش جهت مسدود کردن لوله‌های شبکه (network pipes) در سیستم با ارسال حجم زیادی از ترافیک از طریق سیستم‌های دیگر (حمله انکار سرویس توزیع شدهDDoS )، ارسال درخواست‌های دستکاری شده که منجر به خرابی سیستم یا اتلاف زمان زیادی برای پردازش می‌شوند.  Regular expression Denial of Service (ReDoS) (انکار سرویس عبارت منظم) نوعی حمله انکار سرویس است. عبارات منظم در عین قدرتمند بودن چون چندان شهودی نمی‌باشند، می‌توانند منجر به از کار افتادن سایت ما توسط مهاجمان شوند. Angular  یک فریمورک ساختاری برای و‌ب‌اپلیکیشن‌های پویا می‌باشد (یک فریمورک متن باز تحت وب بر پایه JavaScript)، که امکان استفاده از HTML به عنوان زبان قالب و گسترش دستورهای HTML  جهت بیان واضح و مختصر اجزای برنامه را می‌دهد.

محصولات تحت تأثیر
این آسیب‌پذیری بسته Angular نسخه 1.3.0و بالاتر را تحت تاثیر قرار می‌دهد. 

توصیه‌های امنیتی
به‌دلیل اینکه این بسته EOL است، هیچ به‌روزرسانی برای آن منتشر نشده است. توصیه می‌شود کاربران از @angular/core (در لینک زیر) استفاده کنند.
https://www.npmjs.com/package/@angular/core

منبع خبر:


https://security.snyk.io/vuln/SNYK-JS-ANGULAR-6091113