CVE-2026-105178 in Drug Recommendation Systeminfo

Summary

by MITRE • 10/05/2026

A security flaw has been discovered in SourceCodester Drug Recommendation System 1.0. The impacted element is the function mysqli_real_escape_string of the file /Admin/add_symptom.php of the component Symptom Creation. Performing a manipulation of the argument txtname results in sql injection. It is possible to initiate the attack remotely. The exploit has been released to the public and may be used for attacks.

Be aware that VulDB is the high quality source for vulnerability data.

Analysis

by VulDB Data Team • 10/05/2026

The SourceCodester Drug Recommendation System version 1.0 contains a critical SQL injection vulnerability within its administrative interface, specifically located in the Symptom Creation component found at /Admin/add_symptom.php. This flaw stems from an improper implementation of input sanitization mechanisms intended to prevent malicious database queries. The application relies on the PHP function mysqli_real_escape_string to sanitize user-supplied data before it is incorporated into SQL statements. However, the security analysis indicates that this protection mechanism fails effectively when processing specific arguments, notably the txtname parameter. This failure allows an attacker to bypass the intended filtering logic and inject arbitrary Structured Query Language code directly into the backend database operations associated with symptom management.

The technical root cause of this vulnerability lies in how the application handles string escaping contexts or potentially relies on a character set configuration that renders the escape function ineffective against certain payload structures. In many legacy PHP applications, mysqli_real_escape_string can be bypassed if the connection is not established using UTF-8 encoding prior to query execution, allowing multibyte characters to break out of quoted strings. Alternatively, the developer may have failed to apply this escaping function consistently across all input vectors or applied it incorrectly within complex SQL concatenations. Regardless of the specific implementation nuance, the result is a classic injection flaw where user-controlled data from the txtname field is executed as part of the database command structure without adequate validation or parameterization.

From an operational perspective, this vulnerability poses severe risks to the integrity and confidentiality of the system's data store. Because the administrative endpoint /Admin/add_symptom.php typically runs with elevated privileges, successful exploitation allows a remote attacker to perform unauthorized actions within the database environment. An adversary could extract sensitive information such as user credentials, patient records, or internal configuration details by leveraging error-based or blind SQL injection techniques. Furthermore, depending on the underlying Database Management System and its permissions, an attacker might be able to modify existing data, delete critical symptom definitions, or even execute operating system commands if the database service has been configured with excessive privileges such as xp_cmdshell in Microsoft SQL Server. The fact that a public exploit exists significantly lowers the barrier for entry, enabling less skilled threat actors to compromise the application easily.

This vulnerability aligns directly with Common Weakness Enumeration identifier CWE-89, which describes Improper Neutralization of Special Elements used in an SQL Command, commonly known as SQL Injection. In terms of offensive security frameworks, this flaw facilitates techniques categorized under MITRE ATT&CK ID T1059, specifically command scripting or database query manipulation, and contributes to the broader tactic of Credential Access (T1078) if administrative accounts are compromised through data exfiltration. The remote nature of the attack vector means that no local access or authentication is required prior to exploitation, making it a high-severity risk for any internet-facing deployment of this software version.

To mitigate this vulnerability, immediate remediation steps must focus on replacing the vulnerable string escaping logic with prepared statements using parameterized queries. This approach ensures that user input is treated strictly as data rather than executable code by the database engine, effectively neutralizing injection attempts regardless of the content within the txtname field. Developers should also implement strict input validation to ensure that symptom names conform to expected formats and lengths before they reach the database layer. Additionally, applying the principle of least privilege to the database user account used by the web application can limit the potential damage even if an injection succeeds. For organizations currently running this version, it is strongly recommended to apply any available patches from SourceCodester or migrate to a more secure framework that enforces safe database interaction practices by default until the codebase is refactored.

Responsible

VulDB

Disclosure

10/05/2026

Moderation

accepted

EPSS

0.00000

KEV

no

Activities

very low

Sources

Interested in the pricing of exploits?

See the underground prices here!