{"id":"CVE-2026-124469","published":"2026-11-08T14:18:15.130","lastModified":"2026-11-10T21:46:40.940","description":"OpenEMR before 8.3.0 contains an SQL injection vulnerability in the Fee Sheet drug-inventory lookup (DrugSalesService::sellDrug) that interpolates the prod[N][warehouse] POST field into an ORDER BY clause. Low-privileged authenticated users can submit Fee Sheet product lines with constant subqueries to run a time-based blind oracle, extracting patient data and users_secure bcrypt hashes.","cvssScore":9.9,"cvssSeverity":"CRITICAL","cvssVector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H","cwes":["CWE-89"],"vendors":[],"products":[],"references":[{"url":"https://github.com/openemr/openemr/security/advisories/GHSA-cg8c-2v5q-29g7","tags":[]},{"url":"https://www.vulncheck.com/advisories/openemr-before-8.3.0-sql-injection-via-fee-sheet-warehouse-parameter","tags":[]}],"exploitRefs":[{"url":"https://github.com/openemr/openemr/security/advisories/GHSA-cg8c-2v5q-29g7","tags":[]}],"hasPoc":true,"ai":{"summary":"OpenEMR before 8.3.0 contains an SQL injection flaw in the Fee Sheet drug-inventory lookup where the POST field prod[N][warehouse] is interpolated into an ORDER BY clause without sanitization. Authenticated low-privileged users can exploit this to perform time-based blind SQL injection, extracting sensitive data including patient records and bcrypt-hashed credentials.","exploitability":"Exploitation requires valid low-privileged authentication and the ability to submit crafted POST requests to the Fee Sheet drug-inventory endpoint; public exploits exist, making exploitation straightforward for attackers with minimal skill.","blast_radius":"Successful exploitation allows full compromise of patient data and credential theft, potentially affecting all users and patients in the system due to access to bcrypt hashes and sensitive health information.","remediation":"Upgrade to OpenEMR version 8.3.0 or later, which patches this SQL injection vulnerability.","detection":"Defenders should monitor web server access logs for POST requests to endpoints handling drug-inventory lookups (e.g., /interface/billing/drug_sales_service.php) containing suspicious ORDER BY patterns in the prod[N][warehouse] parameter, such as subqueries with SLEEP(), BENCHMARK(), or conditional time delays; elevated response times correlated with such requests may indicate exploitation.","tags":["sql-injection","blind-sqli","auth-bypass","web-app","healthcare","time-based"],"model":"garnet-coder","analyzedAt":"2026-11-09T09:42:16.276Z"}}