- شناسه CVE-2025-36854 :CVE
- CWE-416 :CWE
- yes :Advisory
- منتشر شده: سپتامبر 8, 2025
- به روز شده: سپتامبر 8, 2025
- امتیاز: 8.1
- نوع حمله: Use after free
- اثر گذاری: Remote code execution(RCE)
- حوزه: سرورهای اپلیکیشن
- برند: Microsoft
- محصول: ASP.NET
- وضعیتPublished :CVE
- No :POC
- وضعیت آسیب پذیری: patch نشده
چکیده
یک آسیبپذیری با شدت بالا در ASP.NET نسخه های 6.0.0 تا 6.0.36 (EOL) و همچنین 8.0.0 تا 8.0.8 و 9.0.0-preview.1.24081.5 تا 9.0.0.RC شناسایی شده است. این ضعف ناشی از استفاده پس از آزادسازی (use-after-free) هنگام بستن جریان HTTP/3 بوده، در حالی که برنامه هنوز در حال نوشتن به بدنه پاسخ است. بهره برداری از این آسیب پذیری می تواند اجرای کد از راه دور (RCE) را ممکن کرده و برنامه های مخرب را اجرا کند.
توضیحات
آسیبپذیری CVE-2025-36854 در ASP.NET، بخشی از فریمورک .NET مایکروسافت، ناشی از استفاده پس از آزادسازی (مطابق با CWE-416) هنگام بسته شدن جریان HTTP/3 است. در این شرایط، اگر برنامه هنوز در حال نوشتن به بدنه پاسخ باشد، یک شرط رقابتی (Race Condition) ایجاد می شود که به مهاجم اجازه میدهد به حافظهای دسترسی پیدا کرده که قبلاً آزاد شده و در نهایت کد دلخواه خود را اجرا کند (RCE). آسیبپذیری به برنامههای وب روی سرور محدود است و نیازمند دسترسی شبکهای به HTTP/3 است،.
شدت این آسیب پذیری بالا بوده و از طریق شبکه قابل بهرهبرداری است. هرچند موفقیت حمله نیازمند هماهنگی زمانی دقیق است، اما نیازی به احراز هویت یا تعامل کاربر ندارد. ضعف مذکور پروتکل HTTP/3 را هدف قرار میدهد؛ این پروتکل در .NET 6.0 آزمایشی بوده و به طور پیشفرض غیرفعال است، اما در نسخههای بالاتر فعال میشود و در نتیجه ریسک بالقوه افزایش مییابد.
برنامههای خودکفا (Self-Contained Applications) که با نسخههای آسیبپذیر ایجاد شدهاند نیز تحت تأثیر قرار دارند و برای محافظت از آنها، کامپایل و استقرار مجدد ضروری است. تأثیرات این ضعف شامل نقض محرمانگی به معنای افشای دادههای حساس، نقض یکپارچگی با امکان تغییر عملکرد یا دادهها و نقض در دسترسپذیری به معنای اختلال در سرویس است و میتواند منجر به سرقت اطلاعات یا کنترل کامل سرور شود.
از آنجا که ASP.NET 6.0 دروضعیت پایان دوره پشتیبانی(EOL) قرار دارد، مایکروسافت هیچ پچ رسمی برای آن منتشر نخواهد کرد. بنابراین، کاربران باید به نسخههای پشتیبانیشده و ایمن مانند ASP.NET Core Runtime 8.0.10 یا 9.0.0.RC2 ارتقا دهند یا برای دریافت پشتیبانی امنیتی پس از EOL، از شرکای تجاری مانند HeroDevs استفاده کنند.
CVSS
Score | Severity | Version | Vector String |
8.1 | HIGH | 3.1 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H |
لیست محصولات آسیب پذیر
Versions | Platforms | Product |
affected from 6.0.0 through 6.0.36 | Unknown | .NET 6.0 |
affected from >=6.0.0 through 6.0.36 | Windows, Linux, MacOS | Microsoft.AspNetCore.Identity |
affected from >=6.0.0 through 6.0.36 | Windows | Microsoft.AspNetCore.App.Runtime.win-arm |
affected from >=6.0.0 through 6.0.36 | Windows | Microsoft.AspNetCore.App.Runtime.win-arm64 |
affected from >=6.0.0 through 6.0.36 | Windows | Microsoft.AspNetCore.App.Runtime.win-x64 |
affected from >=6.0.0 through 6.0.36 | Windows | Microsoft.AspNetCore.App.Runtime.win-x86 |
affected from >=6.0.0 through 6.0.36 | Linux | Microsoft.AspNetCore.App.Runtime.linux-arm |
affected from >=6.0.0 through 6.0.36 | Linux | Microsoft.AspNetCore.App.Runtime.linux-arm64 |
affected from >=6.0.0 through 6.0.36 | Linux | Microsoft.AspNetCore.App.Runtime.linux-musl-arm |
affected from >=6.0.0 through 6.0.36 | Linux | Microsoft.AspNetCore.App.Runtime.linux-musl-arm64 |
affected from >=6.0.0 through 6.0.36 | Linux | Microsoft.AspNetCore.App.Runtime.linux-musl-x64 |
affected from >=6.0.0 through 6.0.36 | Linux | Microsoft.AspNetCore.App.Runtime.linux-x64 |
affected from >=6.0.0 through 6.0.36 | MacOS | Microsoft.AspNetCore.App.Runtime.osx-arm64 |
affected from >=6.0.0 through 6.0.36 | MacOS | Microsoft.AspNetCore.App.Runtime.osx-x64 |
لیست محصولات بروز شده
Versions | Platforms | Product |
8.0.10 | Windows, Linux, MacOS | ASP.NET Core Runtime |
9.0.0.RC2 | Windows, Linux, MacOS | ASP.NET Core Runtime |
استفاده محصول در ایران
در این جدول، تعداد صفحات ایندکسشده در گوگل با دامنه .ir که Microsoft ASP.NET را ذکر کرده اند، ثبت شده است. این داده صرفاً برای برآورد تقریبی حضور محصولات در وب ایران استفاده شده و نمایانگر میزان نصب دقیق و استفاده واقعی نیست.
Approx. Usage in .ir Domain via Google
(Total Pages) |
Product |
5,300 | Microsoft ASP.NET |
نتیجه گیری
با توجه به ماهیت این آسیبپذیری و امکان اجرای کد دلخواه (RCE) در ASP.NET، اقدامات زیر برای کاهش ریسک و محافظت از سیستمها توصیه میشود:
- ارتقاء به نسخههای پشتیبانیشده: از آنجا که NET 6.0 در وضعیت پایان پشتیبانی(EOL) قرار دارد و پچ رسمی ارائه نمیشود، کاربران باید به نسخههای پشتیبانیشده مانند ASP.NET Core Runtime 8.0.10 یا 9.0.0.RC2 ارتقاء یابند. این ارتقاء تضمین میکند که آسیبپذیری برطرف شده و نسخه های آینده دارای به روزرسانی های امنیتی خواهند بود.
- کامپایل و استقرار مجدد برنامههای خودکفا (Self-Contained Applications): برنامههایی که با نسخههای آسیبپذیر ایجاد شدهاند باید مجدداً کامپایل و مستقر شوند تا از اجرای کد دلخواه جلوگیری شود.
- محدودسازی دسترسی شبکهای: دسترسی به سرورها و سرویسهای مبتنی بر NET باید به حداقل مورد نیاز محدود شود و از فایروال و کنترل دسترسی مناسب برای کاهش سطح حمله استفاده شود.
- مانیتورینگ و لاگگیری: بررسی دقیق سرورها و لاگگیری از عملکرد غیرمعمول برنامهها و جریانهای HTTP/3 میتواند تلاشهای سوءاستفاده را شناسایی و متوقف کند.
- آگاهی و آموزش تیم توسعه: توسعهدهندگان باید نسبت به ریسکهای استفاده پس از آزادسازی (Use-After-Free) و اجرای کد از راه دور آگاه باشند و شیوههای برنامهنویسی امن را رعایت کنند.
اجرای سریع این اقدامات میتواند ریسک سوءاستفاده از این آسیبپذیری را به حداقل رسانده و امنیت، یکپارچگی و در دسترسپذیری سیستمهای مبتنی بر ASP.NET را تضمین کند.
امکان استفاده در تاکتیک های Mitre Attack
- Initial Access (TA0001)
مهاجم میتواند با ارسال درخواستهای HTTP/3 به برنامههایNET آسیبپذیر، دسترسی اولیه به آسیبپذیری ایجاد کند. - Execution (TA0002)
با بهرهبرداری از شرایط Use-After-Free در جریان HTTP/3، مهاجم ممکن است کد دلخواه خود را روی سرور اجرا کند که منجر به Remote Code Execution (RCE) میشود. - Persistence (TA0003)
پس از اجرای کد، مهاجم میتواند سرویسها یا پردازههای مخرب روی سرور ثبت کند تا دسترسی مداوم و پایدار به دست آورد. اجرای این امر احتمالی است و به تنظیمات محیط بستگی دارد. - Privilege Escalation (TA0004)
در صورت اجرای برنامه با مجوزهای بالا، بهرهبرداری از آسیبپذیری ممکن است منجر به افزایش سطح دسترسی مهاجم شود. - Credential Access (TA0006)
مهاجم میتواند به دادهها یا توکنهای حساس ذخیره شده در برنامه یا حافظه دسترسی پیدا کند. - Command and Control (TA0011)
در صورت بهرهبرداری از RCE ، مهاجم میتواند از طریق HTTP/3 یا پروتکلهای شبکهای دیگر کنترل سرور را از راه دور به دست گیرد.
منابع
- https://www.cve.org/CVERecord?id=CVE-2025-36854
- https://www.cvedetails.com/cve/CVE-2025-36854/
- https://www.herodevs.com/vulnerability-directory/cve-2024-38229
- https://msrc.microsoft.com/update-guide/vulnerability/CVE-2024-38229
- https://vulmon.com/vulnerabilitydetails?qid=CVE-2025-36854
- https://vuldb.com/?id.323081
- https://nvd.nist.gov/vuln/detail/CVE-2025-36854
- https://cwe.mitre.org/data/definitions/416.html