- شناسه CVE-2025-0492 :CVE
- CWE-476 / CWE-404 :CWE
- www.dlink.com :Advisory
- منتشر شده: ژانویه 15, 2025
- به روز شده: ژانویه 15, 2025
- امتیاز: 7.5
- نوع حمله: Null pointer dereference
- اثر گذاری: Denial of Service
- برند: D-Link
- محصول: DIR-823X
- وضعیتPublished :CVE
- Yes :POC
- وضعیت آسیب پذیری: patch نشده
چکیده
CVE-2025-0492، یک آسیب پذیری با شدت بالا در D-Link DIR-823X مدل های 240126 و 240802 است. این آسیب پذیری بر روی عملکرد تابع FUN_00412244 اثر می گذارد. دستکاری این تابع منجر به حمله Null Pointer Dereference می شود. حمله می تواند از راه دور راه اندازی شود.
توضیحات
این آسیب پذیری در فریمور D-Link DIR-823X مدل های 240126 و 240802 وجود دارد. مشکل درون تابع FUN_00412244 نهفته است که در آن تابع، متود strlen با یک null pointer فراخوانی می شود. هندلینگ نامناسب این تابع در اثر بازخوانی داخلی null pointer منجر به Segmentation Fault می شود.
جزئیات آسیب پذیری
- محل ایجاد آسیب پذیری:
محل شروع آسیب پذیری در فراخوان تابع strlen زیر مجموعه تابع FUN_00412244 در آدرس 0x412634 است.
- شرایط لازم
- در تابع websUrIParse، علامت سوال در POST ?poform/set به تابع strchr در 0x40bbd4 اجازه می دهد که ایندکس علامت سوال را دریافت کند.
- Content_Length می بایست دو بار نوشته شود.
-
- اولین Content_Length باید بزرگتر مساوی 1 (>=1) باشد. این کار برای تنظیم param_1 + 0x1a8(wp->flags) |= 0x400 و فراخوانی websSetVar برای تنظیم مقدار CONTENT_LENGTH ضروری است.
-
- دومین Content-Length باید با مقدار clen=0 تنظیم شود.
پس از آن لازم است یک خط خالی (\\r\n) قرار گیرد تا text نهایی خالی باشد. در تابع socketGets ، خواندن یک \r\n مقدار nbytes=0 قرار می دهد و در نتیجه text=0 می شود. مکان مورد نظر درحافظه 0x408e10 است.
- به دلیل شرایطی نظیر nbytes=0 ، wp-> state=8 در تابع websGetInput در آدرس 0411f0c قرار می گیرد.
- در آدرس 0x4122bc در تابع websReadEvent مقدار iVar2 از wp->state که همان مقدار 8 است دریافت می شود.
- در نتیجه تابع websReadEvent به دلیل اینکه iVar2=8 قرار گرفته و محتوایی که در wp->query وجود دارد و هیچ کدام از شرایط گزاره های if و else if را برآورده نمی کند، به سراغ else بعدی رفته و آن را اجرا می کند که در همین مرحله آسیب پذیری trigger می شود. Strlen با یک null pointer فراخوانی می شود و منجر به segmentation fault خواهد شد.
سیستم امتیاز دهی آسیب پذیری ها بر اساس استاندارد های تحقیقاتی حوزه نمره دهی به آسیب پذیری ها، امتیازات زیر را برای شدت اثرگذاری این آسیب پذیری در نظر گرفته است.
CVSS
Score | Severity | Version | Vector String | ||
7.5 | HIGH | 3.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | ||
8.7 | HIGH | 4.0 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N | ||
7.5 | HIGH | 3.0 | CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | ||
7.8 | —- | 2.0 | AV:N/AC:L/Au:N/C:N/I:N/A:C |
لیست محصولات آسیب پذیر
در زمان انتشار این اعلامیه، این آسیب پذیری برروی نسخه های زیر تاثیر می گذارد:
- D-Link DIR-823X 240126
- D-Link DIR-823X 240126
لیست محصولات بروز شده
برند D-Link هنوز پچ یا بروزرسانی جهت رفع این آسیب پذیری ارائه نداده است. به منظور جلوگیری از قرار گرفتن در معرض این آسیب پذیری توصیه می شود از نسخه های جدید تر فریمور استفاده کنید.
نتیجه گیری
آسیب پذیری فوق در دسته آسیب پذیری های سطح بالا دسته بندی می شود. توصیه می شود به منظور بروزرسانی فریمور فعلی به بخش بروزرسانی های نرم افزاری D-Link مراجعه کنید.
منابع
- https://www.cve.org/CVERecord?id=CVE-2025-0492
- https://www.cvedetails.com/cve/CVE-2025-0492/
- https://tasty-foxtrot-3a8.notion.site/D-link-DIR-823X-FUN_00412244-NULL-Pointer-Dereference-1730448e619580fcb7f9d871c6e7190a
- https://vulmon.com/vulnerabilitydetails?qid=CVE-2025-0492&sortby=bydate
- https://vuldb.com/?id.291937
- https://cwe.mitre.org/data/definitions/404.html
- https://cwe.mitre.org/data/definitions/476.html