/

CVE-2026-116112

Severity:

HIGH RISK

(7.3)

SQL Injection (CWE-89) in edoc-doctor admin/add-new.php

CVE-2026-116112

Deferred

Vulnerability type

Category:

SQL Injection

CWE:

CWE-74, CWE-89

Impact:

Unauthorized database access and data manipulation

Severity:

HIGH RISK

(7.3)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

A SQL injection vulnerability in the edoc-doctor appointment system allows attacker-controlled input in the spec argument to influence database queries. Because the affected endpoint is remotely reachable, an attacker may be able to access, alter, or destroy database information when input is not safely handled.

A SQL injection vulnerability in the edoc-doctor appointment system allows attacker-controlled input in the spec argument to influence database queries. Because the affected endpoint is remotely reachable, an attacker may be able to access, alter, or destroy database information when input is not safely handled.

Affected context

The vulnerability occurs in the administrative admin/add-new.php functionality of edoc-doctor deployments where the spec argument is incorporated into database operations without sufficient protection. Risk depends on the endpoint being reachable by an attacker and on the application's database account having permissions beyond those strictly required.

The vulnerability occurs in the administrative admin/add-new.php functionality of edoc-doctor deployments where the spec argument is incorporated into database operations without sufficient protection. Risk depends on the endpoint being reachable by an attacker and on the application's database account having permissions beyond those strictly required.

Exploit preconditions

  • Attack surface: The remotely accessible admin/add-new.php endpoint
  • Required access: The ability to send requests to the affected functionality; authentication requirements may depend on deployment configuration
  • Trigger point: Processing of the spec argument
  • Why exploitation is possible: Input may affect SQL query construction when it is not parameterized, constrained, or safely separated from database commands
  • Attack surface: The remotely accessible admin/add-new.php endpoint
  • Required access: The ability to send requests to the affected functionality; authentication requirements may depend on deployment configuration
  • Trigger point: Processing of the spec argument
  • Why exploitation is possible: Input may affect SQL query construction when it is not parameterized, constrained, or safely separated from database commands

Why this happens

The underlying issue is an improper separation between application data and SQL command structure. If the spec argument is concatenated into a database query or otherwise interpreted as query syntax, attacker-controlled input can alter the intended operation. This maps primarily to CWE-89: Improper Neutralization of Special Elements used in an SQL Command (SQL Injection); the broader CWE-74 classification reflects improper handling of externally influenced command syntax.

The underlying issue is an improper separation between application data and SQL command structure. If the spec argument is concatenated into a database query or otherwise interpreted as query syntax, attacker-controlled input can alter the intended operation. This maps primarily to CWE-89: Improper Neutralization of Special Elements used in an SQL Command (SQL Injection); the broader CWE-74 classification reflects improper handling of externally influenced command syntax.

Potential impact

  • Unauthorized reading of application or user data
  • Modification or deletion of database records
  • Authentication or authorization bypass, depending on query context
  • Exposure of sensitive appointment and administrative information
  • Further compromise of the application or connected systems
  • Unauthorized reading of application or user data
  • Modification or deletion of database records
  • Authentication or authorization bypass, depending on query context
  • Exposure of sensitive appointment and administrative information
  • Further compromise of the application or connected systems

General mitigation guidance

Mitigation generally focuses on ensuring that external input cannot become executable SQL syntax.

Common defensive patterns include:

  • Using parameterized queries or prepared statements for all database operations
  • Applying allowlist validation for fields with a constrained set of expected values
  • Avoiding dynamic SQL construction where fixed queries or safe query builders are sufficient
  • Enforcing least-privilege permissions for the application database account
  • Separating administrative functionality from broadly reachable interfaces
  • Returning generic database errors without exposing query details
  • Treating client-side validation as supplementary rather than authoritative

Mitigation generally focuses on ensuring that external input cannot become executable SQL syntax.

Common defensive patterns include:

  • Using parameterized queries or prepared statements for all database operations
  • Applying allowlist validation for fields with a constrained set of expected values
  • Avoiding dynamic SQL construction where fixed queries or safe query builders are sufficient
  • Enforcing least-privilege permissions for the application database account
  • Separating administrative functionality from broadly reachable interfaces
  • Returning generic database errors without exposing query details
  • Treating client-side validation as supplementary rather than authoritative

How teams detect issues like this

Organizations commonly detect SQL injection risks through:

  • Static analysis rules identifying string concatenation or interpolation in SQL statements
  • Code review checks for request parameters passed directly to database APIs
  • Dynamic application testing that sends malformed or unexpected input to database-backed endpoints
  • Web application firewall or gateway policies for suspicious query-manipulation patterns
  • Database monitoring for anomalous queries, unusual error rates, or unexpected data access

Automated code review and software composition tools may help identify unsafe query construction, but findings should be validated against the application's query and authorization logic.

Organizations commonly detect SQL injection risks through:

  • Static analysis rules identifying string concatenation or interpolation in SQL statements
  • Code review checks for request parameters passed directly to database APIs
  • Dynamic application testing that sends malformed or unexpected input to database-backed endpoints
  • Web application firewall or gateway policies for suspicious query-manipulation patterns
  • Database monitoring for anomalous queries, unusual error rates, or unexpected data access

Automated code review and software composition tools may help identify unsafe query construction, but findings should be validated against the application's query and authorization logic.

Sources

SourceLink
gist.github.comgist.github.com/asdfghjkl12345678910111/1519ad5b24ad2441cca911ecbfaa9acb
vuldb.comvuldb.com/cve/CVE-2026-116112
vuldb.comvuldb.com/submit/1003917
vuldb.comvuldb.com/vuln/426180
vuldb.comvuldb.com/vuln/426180/cti

Frequently asked

questions

Yes. The affected functionality is described as remotely reachable, although practical exploitation may still depend on routing, authentication, and authorization controls.

Not necessarily. The required access depends on how the endpoint is exposed and protected. Any access that permits requests to the vulnerable function may be relevant.

Use parameterized queries or prepared statements, validate inputs against appropriate allowlists, and ensure database errors do not reveal implementation details.

Enforce secure database access patterns through code review and static analysis, apply least privilege to database accounts, and regularly test externally reachable endpoints for injection flaws.

Yes. The affected functionality is described as remotely reachable, although practical exploitation may still depend on routing, authentication, and authorization controls.

Not necessarily. The required access depends on how the endpoint is exposed and protected. Any access that permits requests to the vulnerable function may be relevant.

Use parameterized queries or prepared statements, validate inputs against appropriate allowlists, and ensure database errors do not reveal implementation details.

Enforce secure database access patterns through code review and static analysis, apply least privilege to database accounts, and regularly test externally reachable endpoints for injection flaws.

Find out what's already
exploitable in your codebase.