- شناسه CVE-2025-10399 :CVE
- CWE-89, CWE-74 :CWE
- yes :Advisory
- منتشر شده: سپتامبر 14, 2025
- به روز شده: سپتامبر 14, 2025
- امتیاز: 6.3
- نوع حمله: SQL Injection
- اثر گذاری: Unknown
- حوزه: پایگاههای داده
- برند: Korzh
- محصول: EasyQuery
- وضعیتPublished :CVE
- Yes :POC
- وضعیت آسیب پذیری: patch نشده
چکیده
آسیبپذیری در Korzh EasyQuery تا نسخه 7.4.0، ناشی از عدم فرار یا پاکسازی مقادیر عددی در شرایط عددی هنگام ایجاد دستورات SQL است که امکان تزریق SQL را فراهم میکند. این ضعف در اندپوینت /api/easyquery/models/nwind/fetch وجود دارد و به مهاجمان احراز هویتشده با سطح دسترسی محدود اجازه میدهد دستورات SQL دلخواه را اجرا کنند.
توضیحات
آسیبپذیری CVE-2025-10399 در Korzh EasyQuery، یک کامپوننت ایجاد کوئریهای SQL برای.NET Framework و .NET Core، ناشی از عدم فرار (escaping) یا پاکسازی (sanitization) مقادیر عددی در شرایط عددی است (مطابق با CWE-89 و CWE-74). عدم فرار (Lack of Escaping) یعنی ورودی کاربر قبل از وارد شدن به یک دستور یا کوئری بهدرستی بیخطرسازی (sanitize) یا escape نشده باشد.
این ضعف در نسخههای 7.0 تا 7.4.0 وجود دارد و به مهاجمان احراز هویتشده اجازه میدهد با ارسال درخواستهای مخرب به اندپوینت /api/easyquery/models/nwind/fetch، مقادیر عددی را دستکاری کرده و SQL Injection انجام دهند.
منطق اعتبارسنجی عددی تنها در Query Builder UI اعمال میشود، اما درخواستهای تغییر یافته مستقیم به اندپوینتهای EasyQuery میتوانند محدودیتهای مدل دادهای اعمالشده در UI را دور زده و امکان دسترسی کامل به پایگاه داده فراهم کنند.
این آسیبپذیری از طریق شبکه قابل بهرهبرداری است، نیازی به تعامل کاربر ندارد، اما مستلزم دسترسی احراز هویتشده است. بهرهبرداری موفق میتواند منجر به اجرای دستورات SQL دلخواه شود که امکان افشای دادههای حساس، تغییر یا دستکاری اطلاعات و حتی افزایش سطح دسترسی را فراهم میکند.
پیامدهای این ضعف شامل افشای اطلاعات پایگاه داده، دستکاری دادهها و ایجاد اختلال در عملکرد برنامهها و سرویسهای وابسته است.
برای این آسیبپذیری کد اثبات مفهومی (PoC) نیز در مرجع گزارش شده است که نشان میدهد با ارسال یک درخواست تغییر یافته به اندپوینت مذکور، میتوان SQL Injection را اجرا کرد و نسخه پایگاه داده را دریافت نمود.
تاکنون توسعهدهندگان Korzh به گزارش این آسیبپذیری پاسخ رسمی نداده و هیچ پچ یا بهروزرسانی امنیتی برای رفع آن منتشر نشده است.
CVSS
Score | Severity | Version | Vector String |
5.3 | MEDIUM | 4.0 | CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P |
6.3 | MEDIUM | 3.1 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L/E:P/RL:X/RC:R |
6.3 | MEDIUM | 3.0 | CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L/E:P/RL:X/RC:R |
6.5 | — | 2.0 | AV:N/AC:L/Au:S/C:P/I:P/A:P/E:POC/RL:ND/RC:UR |
لیست محصولات آسیب پذیر
Versions | Product |
affected at 7.0
affected at 7.1 affected at 7.2 affected at 7.3 affected at 7.4.0 |
EasyQuery |
استفاده محصول در ایران
در این جدول، تعداد صفحات ایندکسشده در گوگل با دامنه .ir که EasyQuery را ذکر کرده اند، ثبت شده است. این داده صرفاً برای برآورد تقریبی حضور محصولات در وب ایران استفاده شده و نمایانگر میزان نصب دقیق و استفاده واقعی نیست.
Approx. Usage in .ir Domain via Google
(Total Pages) |
Product |
40 | EasyQuery |
نتیجه گیری
با توجه به ماهیت این آسیبپذیری در Korzh EasyQuery و امکان اجرای SQL Injection از طریق دستکاری مقادیر عددی، اتخاذ اقدامات کاهش ریسک فوری و جامع ضروری است. راهکارها و توصیههای امنیتی به شرح زیر هستند:
- پیگیری انتشار پچ رسمی: کاربران باید بهطور منظم سایت رسمی Korzh را برای اطلاع از انتشار نسخه پچ شده بررسی کرده و به محض انتشار، سیستم خود را بهروزرسانی کنند.
- استفاده از جایگزین یا محدودسازی موقت: در صورت امکان، برای کاهش ریسک از نسخههای جایگزین یا محیطهای توسعه جداگانه استفاده شود تا از مواجهه مستقیم با آسیبپذیری جلوگیری گردد.
- اعتبارسنجی و پاکسازی دادهها در سرور: تمام مقادیر ورودی، بهویژه مقادیر عددی، باید در سمت سرور بررسی و پاکسازی شوند تا امکان تزریق SQL از بین برود.
- محدودسازی سطح دسترسی کاربران: تنها کاربران با دسترسی ضروری به سیستم و پایگاه داده امکان اجرای عملیات حساس داشته باشند و دسترسی غیرضروری محدود شود.
- استفاده از مکانیزمهای محافظت از پایگاه داده: استفاده از کوئریهای پارامترایز (Parameterized Queries) و رویه های ذخیرهشده (Stored Procedures) برای اینکه از اجرای مستقیم دستورات SQL دلخواه جلوگیری شود.
- نظارت و لاگگیری دقیق: تمام فعالیتهای مرتبط با پایگاه داده ثبت شده و الگوهای غیرمعمول بررسی گردد.
- آموزش تیم فنی و توسعه: توسعهدهندگان و تیمهای عملیات باید با ریسکهای SQL Injection، اهمیت اعتبارسنجی سمت سرور و استفاده از بهترین شیوهها آشنا باشند.
اجرای همزمان این اقدامات باعث کاهش احتمال بهرهبرداری از SQL Injection، حفاظت از دادههای حساس، جلوگیری از تغییر یا حذف غیرمجاز اطلاعات و افزایش پایداری و امنیت سیستمهای Korzh EasyQuery میشود.
امکان استفاده در تاکتیک های Mitre Attack
Initial Access (TA0001)
مهاجم با داشتن دسترسی احراز هویتشده (کاربر سطح پایین در سیستم) میتواند از طریق ارسال درخواست مخرب به اندپوینت /api/easyquery/models/nwind/fetch وارد مسیر حمله شود.
Execution (TA0002)
مقادیر عددی بدون escape یا sanitization به کوئریهای SQL تزریق میشوند. مهاجم میتواند دستورات SQL دلخواه را در پایگاه داده اجرا کند.
Persistence (TA0003)
در صورت موفقیتآمیز بودن تزریق، مهاجم میتواند جداول یا رکوردهای جدید ایجاد کرده یا حسابهای کاربری جعلی در پایگاه داده درج کند تا دسترسی خود را حفظ کند.
Privilege Escalation (TA0004)
با اجرای موفق دستورات SQL، مهاجم میتواند سطح دسترسی خود را از کاربر عادی به سطح بالاتر مثلاً DBA یا ادمین برنامه ارتقا دهد.
Credential Access (TA0006)
SQL Injection میتواند برای استخراج نام کاربری و گذرواژههای هششده از جداول پایگاه داده (مثل جدول کاربران) استفاده شود.
Collection (TA0009)
مهاجم قادر است دادههای حساس (اطلاعات شخصی، رکوردهای تجاری، تنظیمات داخلی) را از پایگاه داده جمعآوری کند.
Exfiltration (TA0010)
اطلاعات جمعآوریشده میتواند از طریق همان کانال HTTP/HTTPS به خارج از سیستم منتقل شود.
Impact (TA0040)
- افشای اطلاعات حساس از پایگاه داده
- تغییر یا حذف دادهها
- اختلال در دسترسپذیری برنامه با اجرای دستورات تخریبی یا Drop Table
منابع
- https://www.cve.org/CVERecord?id=CVE-2025-10399
- https://www.cvedetails.com/cve/CVE-2025-10399/
- https://vulmon.com/vulnerabilitydetails?qid=CVE-2025-10399
- https://vuldb.com/?submit.646353
- https://vuldb.com/?id.323834
- https://vuldb.com/?ctiid.323834
- https://nvd.nist.gov/vuln/detail/CVE-2025-10399
- https://cwe.mitre.org/data/definitions/89.html
- https://cwe.mitre.org/data/definitions/74.html