- شناسه CVE-2025-9087 :CVE
- CWE-121, CWE-119 :CWE
- yes :Advisory
- منتشر شده: آگوست 16, 2025
- به روز شده: آگوست 16, 2025
- امتیاز: 8.8
- نوع حمله: Stack-based Buffer Overflow
- اثر گذاری: Unknown
- حوزه: تجهیزات شبکه و امنیت
- برند: Tenda
- محصول: AC20
- وضعیتPublished :CVE
- Yes :POC
- وضعیت آسیب پذیری: patch نشده
چکیده
آسیبپذیری سرریز بافر مبتنی بر پشته (Stack-Based Buffer Overflow) در روتر Tenda AC20 نسخه 16.03.08.12 شناسایی شده است. این آسیب پذیری در تابع set_qosMib_list فایل /goform/SetNetControlList از کامپوننت SetNetControlList Endpointرخ می دهد. مهاجم با دستکاری پارامتر list بدون نیاز به احراز هویت و از راه دور می تواند امکان اجرای کد دلخواه یا شرایط انکار سرویس (DoS) را فراهم میکند.
توضیحات
آسیبپذیری CVE-2025-9087 یک سرریز بافر مبتنی بر پشته Stack-Based Buffer Overflow، CWE-121- است که منجر به خرابی حافظه میشود و در روتر Tenda AC20 فریمور V16.03.08.12، بهویژه در کامپوننت SetNetControlList Endpoint و مسیر /goform/SetNetControlList مشاهده شده است. منشأ این آسیبپذیری در زنجیره پردازش پارامتر list در تابع formSetQosBand و تابع وابسته set_qosMib_list قرار دارد. در این فرآیند، مقدار ورودی کاربر ابتدا توسط تابع websGetVar دریافت میشود و بدون هیچگونه اعتبارسنجی اولیه به set_qosMib_list ارسال میگردد تا قوانین QoS پردازش شوند.
در ادامه، set_qosMib_list دادههای ورودی را به بخشهای جداگانه تقسیم میکند (با استفاده از یک جداکننده خط جدید، \n و هر بخش را بهعنوان یک قانون QoS پردازش میکند. در مرحله کپیکردن هر بخش، تابع ناامن strcpy(v8, s) استفاده میشود تا دادهها در بافر محلی 256 بایتی قرار گیرد. از آنجا که strcpy هیچ بررسی طولی انجام نمیدهد، اگر داده ورودی بیش از 255 بایت به همراه null terminator باشد، دادههای اضافی به حافظه مجاور بافر وارد شده و باعث بازنویسی آدرسهای بازگشت و رجیسترهای ذخیرهشده میشود. این امر مسیر اجرای برنامه را تغییر داده و میتواند منجر به کرش دستگاه (DoS) یا در صورت بهرهبرداری پیشرفته، اجرای کد دلخواه از راه دور (RCE) شود.
تجزیه فیلدها با تابع sscanf بعد از عملیات strcpy انجام میشود و تاثیری بر ایجاد آسیبپذیری ندارد؛ بنابراین، ریسک اصلی مربوط به سرریز حافظه در لحظه کپیکردن دادهها است. این آسیبپذیری به مهاجم اجازه میدهد تنها با ارسال یک درخواست POST حاوی پارامتر list طولانی، سرریز بافر ایجاد کند. حمله از راه دور قابل انجام، نیازمند سطح دسترسی پایین و بدون تعامل کاربر است. پیامدهای احتمالی شامل کرش دستگاه (DoS)، دسترسی غیرمجاز به دادههای حساس شبکه و در صورت بهرهبرداری کامل، تغییر تنظیمات حیاتی روتر یا اجرای کد دلخواه است.
CVSS
Score | Severity | Version | Vector String |
8.7 | HIGH | 4.0 | CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:P |
8.8 | HIGH | 3.1 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H/E:P/RL:X/RC:R |
8.8 | HIGH | 3.0 | CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H/E:P/RL:X/RC:R |
9.0 | — | 2.0 | AV:N/AC:L/Au:S/C:C/I:C/A:C/E:POC/RL:ND/RC:UR |
لیست محصولات آسیب پذیر
Versions | Product |
affected at 16.03.08.12 | AC20 |
نتیجه گیری
با توجه به شدت بالای آسیبپذیری CVE-2025-9087 و امکان اجرای کد دلخواه از راه دور (RCE) یا ایجاد شرایط انکار سرویس (DoS)، و همچنین عدم انتشار پچ رسمی توسط Tenda، کاربران روتر AC20 باید فوراً اقدامات کاهش ریسک را پیادهسازی کنند. در گام نخست، دسترسی به endpoint آسیبپذیر /goform/SetNetControlList باید از طریق قوانین فایروال مسدود شود تا ارسال درخواستهای POST مخرب ممکن نباشد. علاوه بر این، محدودسازی حجم پیلود درخواستهای POST با استفاده از پروکسی معکوس یا وبسرور، برای مثال با تنظیم client_max_body_size 1k در Nginx، میتواند از سرریز بافر جلوگیری کند و دسترسی از راه دور به رابط وب مدیریتی باید محدود به IPهای مورد اعتماد گردد. تغییر رمز عبور ادمین، اعمال سیاستهای سختگیرانه برای حسابهای کاربری و پایش مستمر لاگهای روتر جهت شناسایی درخواستهای غیرمعمول یا مشکوک از دیگر اقدامات ضروری است. همچنین، نظارت مداوم بر عملکرد CPU، حافظه و رابط وب میتواند نشانههای کرش یا رفتار غیرعادی ناشی از حمله را آشکار کند. در نهایت، در صورت امکان، تعویض روتر با مدلهای جدیدتر و پشتیبانیشده بهترین روش برای تضمین امنیت و پایداری شبکه خواهد بود، و اجرای همزمان تمامی این اقدامات میتواند به طور مؤثر ریسک بهرهبرداری از آسیبپذیری را کاهش دهد و امنیت شبکه را حفظ کند.
منابع
- https://www.cve.org/CVERecord?id=CVE-2025-9087
- https://www.cvedetails.com/cve/CVE-2025-9087/
- https://vulmon.com/vulnerabilitydetails?qid=CVE-2025-9087
- https://vuldb.com/?submit.632037
- https://vuldb.com/?id.320355
- https://vuldb.com/?ctiid.320355
- https://github.com/ZZ2266/.github.io/tree/main/AC20/formSetQosBand
- https://github.com/ZZ2266/.github.io/tree/main/AC20/formSetQosBand#poc-python-exploit-script
- https://nvd.nist.gov/vuln/detail/CVE-2025-9087
- https://cwe.mitre.org/data/definitions/121.html
- https://cwe.mitre.org/data/definitions/119.html