یک آسیبپذیری از نوع SQL Injection (CWE-89) در پروژه متنباز kishan0725 Hospital Management System شناسایی شده است. این نقص امنیتی در فایل admin-panel.php و در بخش Appointment Cancellation Handler از طریق پارامتر ID رخ میدهد. مهاجم میتواند با تزریق کدهای مخرب به تابع mysqli_query()، دادههای مربوط به بیماران یا قرار ملاقاتها را در پایگاه داده بخواند یا تغییر دهد.
بر اساس تحلیلهای فنی، این آسیبپذیری دارای امتیاز CVSS 4.0 برابر با 6.9 (Medium) است. با این حال، یک تناقض در مشخصات فنی وجود دارد: در حالی که بردار حمله ادعا میکند نیازی به سطح دسترسی (Privileges) ندارد، اما فایل آسیبپذیر مربوط به پنل مدیریت است که معمولاً نیازمند احراز هویت (Authentication) میباشد. بنابراین، میزان ریسک واقعی بستگی به این دارد که آیا این نقطه انتهایی (Endpoint) بدون احراز هویت در دسترس است یا خیر.
در حال حاضر هیچ وصله (Patch) رسمی از سوی توسعهدهنده ارائه نشده است. اقدامات جبرانی زیر توصیه میشود:
- محدود کردن دسترسی به فایل
admin-panel.phpبا استفاده از ACL شبکه، VPN یا سیستمهای احراز هویت متمرکز. - استفاده از قوانین WAF (Web Application Firewall) برای شناسایی و مسدودسازی تلاشهای SQL Injection در پارامتر
ID. - در صورت دسترسی به کد منبع، جایگزینی کوئریهای مستقیم با استفاده از Prepared Statements جهت جلوگیری از تزریق کد.