- شناسه CVE-2025-10995 :CVE
- CWE-119 :CWE
- yes :Advisory
- منتشر شده: سپتامبر 26, 2025
- به روز شده: سپتامبر 26, 2025
- امتیاز: 5.3
- نوع حمله: Unknown
- اثر گذاری: Memory Corruption
- حوزه: نرم افزارهای کاربردی
- برند: Open Babel
- محصول: Open Babel
- وضعیتPublished :CVE
- Yes :POC
- وضعیت آسیب پذیری: patch نشده
چکیده
یک آسیبپذیری در Open Babel نسخههای 3.1.0 و 3.1.1 ، به دلیل خرابی حافظه (Memory Corruption) شناسایی شده است. در این آسیب پذیری تابع zlib_stream::basic_unzip_streambuf::underflow در فایل /src/zipstreamimpl.h از memcpy برای کپی بخشهایی از حافظه که همپوشان هستند، استفاده می کند و این وضعیت باعث عملکرد نامشخص (undefined behavior) میشود. پردازش یک فایل ZIP مخرب میتواند این ضعف را فعال کرده و باعث کرش یا انکار سرویس (DoS) شود.
توضیحات
آسیبپذیری CVE-2025-10995 در Open Babel، کتابخانه محاسباتی متن باز، ناشی از خرابی حافظه در تابع zlib_stream::basic_unzip_streambuf::underflow فایل /src/zipstreamimpl.h است که مطابق با CWE-119 طبقهبندی میشود.
این ضعف در نسخههای 3.1.0 و 3.1.1 وجود دارد و به مهاجمان لوکال اجازه میدهد با پردازش فایلهای ZIP مخرب، memcpy را که روی محدودههای همپوشان هستند، فراخوانی کنند. این امر باعث عملکرد نامشخص (undefined behavior) شده و منجر به کرش یا خرابی حافظه میگردد.
در این ضعف memcpy برای کپی محدودههای همپوشان منبع و مقصد (source و destination) استفاده میشود که طبق استاندارد C عملکرد memcpy برای بازههای همپوشان تعریفنشده است و در آزمایشها با ASan/UBSan خطای memcpy-param-overlap را ایجاد میکند. این ضعف هنگام پردازش فایلهای ZIP فشرده رخ میدهد.
این آسیبپذیری به صورت لوکال با نیاز به دسترسی کاربر و بدون تعامل اضافی قابل بهرهبرداری است. مهاجم میتواند فایل ZIP مخرب ایجاد کند. پیامدهای آن شامل نقض محدود محرمانگی با دسترسی به حافظه، یکپارچگی با امکان خرابی حافظه و در دسترسپذیری با ایجاد کرش اپلیکیشن است. کد اثبات مفهومی (PoC) منتشرشده شامل فایل ZIP مخرب (poc.zip) است. تاکنون پچ رسمی منتشر نشده و Open Babel به اطلاعرسانی اولیه پاسخی نداده است.
CVSS
Score | Severity | Version | Vector String |
4.8 | MEDIUM | 4.0 | CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P |
5.3 | MEDIUM | 3.1 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L/E:P/RL:X/RC:R |
5.3 | MEDIUM | 3.0 | CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L/E:P/RL:X/RC:R |
4.3 | — | 2.0 | AV:L/AC:L/Au:S/C:P/I:P/A:P/E:POC/RL:ND/RC:UR |
لیست محصولات آسیب پذیر
Versions | Product |
affected at 3.1.0
affected at 3.1.1 |
Open Babel |
استفاده محصول در ایران
در این جدول، تعداد صفحات ایندکسشده در گوگل با دامنه .ir که Open Babelرا ذکر کرده اند، ثبت شده است. این داده صرفاً برای برآورد تقریبی حضور محصولات در وب ایران استفاده شده و نمایانگر میزان نصب دقیق و استفاده واقعی نیست.
Approx. Usage in .ir Domain via Google
(Total Pages) |
Product |
361 | Open Babel |
نتیجه گیری
این آسیبپذیری در Open Babel، به دلیل استفاده از memcpy با محدودههای همپوشان (overlapping memcpy) در پردازش ZIP، تهدیدی قابل توجه برای اپلیکیشن های شیمی محاسباتی ایجاد میکند که میتواند منجر به کرش، انکار سرویس و خرابی حافظه شود. برای کاهش ریسک و جلوگیری از بهرهبرداری، اقدامات زیر توصیه میشود:
- بهروزرسانی: سایت و مخزن رسمی Open Babel را برای دریافت به روزرسانی بررسی کرده و در صورت انتشار آن را نصب کنید.
- جایگزینی کپی ایمن: در کد منبع بهجای memcpy در جاهایی که احتمال همپوشانی وجود دارد از memmove استفاده کنید یا قبل از کپی، همپوشانی و طول را بررسی (bounds check) نمایید.
- اعتبارسنجی فایل: فایلهای ZIP را قبل از پردازش اسکن کرده و با ابزارهای فازینگ (fuzzing) تابع underflow() را بررسی کنید.
- محدودسازی دسترسی: اپلیکیشن ها را با کمترین سطح دسترسی (least privileges) اجرا کنید تا تأثیر خرابی حافظه کاهش یابد.
- نظارت بر فرآیند: عملکرد غیرعادی اپلیکیشن ها مانند کرش مکرر را با ابزارهایی مانند ASan/UBSan نظارت کنید.
- آموزش کاربران: توسعهدهندگان را در مورد ریسک memcpy همپوشان و اهمیت تست حافظه آگاه کنید.
اجرای این اقدامات، ریسک خرابی حافظه (memory corruption) و انکار سرویس(DoS) را به حداقل رسانده و امنیت Open Babel را به شکل قابل توجهی افزایش می دهد.
امکان استفاده در تاکتیک های Mitre Attack
Initial Access (TA0001)
دسترسی اولیه برای بهرهبرداری از CVE-2025-10995 معمولاً محلی است: مهاجم یا کاربر محلی باید بتواند فایل ZIP مخرب را به برنامهای که از Open Babel استفاده میکند برساند (آپلود، پوشه اشتراکی، ایمیل محلی یا اجرای مستقیم).
Defense Evasion (TA0005)
کرشهای ناشی از memcpy overlap ممکن است بدون لاگ واضح رخ دهند یا با لاگهای عمومی همپوشانی داشته باشند و تشخیص خودکار را سخت کنند؛ مهاجم میتواند فایلهای ZIP را طوری طراحی کند که کرش تحریکشده شبیه خطاهای تصادفی یا ورودیهای خراب به‑نظر برسد تا ردپا کمرنگ بماند.
Impact (TA0040)
کرش و انکار سرویس (DoS)، احتمال کاهش یکپارچگی پردازش فایل
منابع
- https://www.cve.org/CVERecord?id=CVE-2025-10995
- https://www.cvedetails.com/cve/CVE-2025-10995/
- https://vulmon.com/vulnerabilitydetails?qid=CVE-2025-10995
- https://vuldb.com/?submit.654059
- https://vuldb.com/?id.325923
- https://vuldb.com/?ctiid.325923
- https://github.com/openbabel/openbabel/issues/2832
- https://github.com/user-attachments/files/22318572/poc.zip
- https://nvd.nist.gov/vuln/detail/CVE-2025-10995
- https://cwe.mitre.org/data/definitions/119.html