/

CVE-2026-105183

Severity:

HIGH RISK

(7.3)

SQL Injection (CWE-89) in Online Admission System Admin

CVE-2026-105183

Deferred

Vulnerability type

Category:

SQL Injection

CWE:

CWE-74, CWE-89

Impact:

Database confidentiality and integrity compromise

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 high-severity SQL injection vulnerability in the Online Admission System allows remotely supplied input in the schedid argument to influence database queries. If the affected administrative endpoint is reachable and input is not safely handled, an attacker may read, modify, or otherwise interact with application data.

A high-severity SQL injection vulnerability in the Online Admission System allows remotely supplied input in the schedid argument to influence database queries. If the affected administrative endpoint is reachable and input is not safely handled, an attacker may read, modify, or otherwise interact with application data.

Affected context

The weakness occurs in the administrative functionality served by /admin/confirm.php when the schedid parameter is incorporated into a database query without adequate separation between data and SQL syntax. Risk depends on the endpoint being reachable over the network, the parameter reaching the vulnerable code path, and the database account having meaningful privileges.

The weakness occurs in the administrative functionality served by /admin/confirm.php when the schedid parameter is incorporated into a database query without adequate separation between data and SQL syntax. Risk depends on the endpoint being reachable over the network, the parameter reaching the vulnerable code path, and the database account having meaningful privileges.

Exploit preconditions

  • Attack surface: A remotely accessible web endpoint at /admin/confirm.php - Required access: Network access to the application; authentication

requirements depend on the deployment's access controls

  • Trigger point: Processing of the schedid request argument - Why exploitation is possible: User-controlled input may be interpreted as

SQL syntax rather than being handled strictly as a value

  • Attack surface: A remotely accessible web endpoint at /admin/confirm.php - Required access: Network access to the application; authentication

requirements depend on the deployment's access controls

  • Trigger point: Processing of the schedid request argument - Why exploitation is possible: User-controlled input may be interpreted as

SQL syntax rather than being handled strictly as a value

Why this happens

The underlying bug is an injection flaw in which externally controlled input is combined with a database statement without reliable parameter separation. This behavior maps primarily to CWE-89, Improper Neutralization of Special Elements used in an SQL Command. CWE-74 is also relevant because the broader weakness involves allowing input to alter the intended interpretation of an instruction.

The underlying bug is an injection flaw in which externally controlled input is combined with a database statement without reliable parameter separation. This behavior maps primarily to CWE-89, Improper Neutralization of Special Elements used in an SQL Command. CWE-74 is also relevant because the broader weakness involves allowing input to alter the intended interpretation of an instruction.

Potential impact

  • An attacker may retrieve sensitive records from the application database.
  • An attacker could alter, delete, or corrupt admission-related data.
  • Database credentials, account information, or internal configuration data may be exposed.
  • The application could experience unauthorized administrative actions or service disruption.
  • An attacker may retrieve sensitive records from the application database.
  • An attacker could alter, delete, or corrupt admission-related data.
  • Database credentials, account information, or internal configuration data may be exposed.
  • The application could experience unauthorized administrative actions or service disruption.

General mitigation guidance

Mitigation generally centers on treating request parameters as data rather than executable query content. Common defensive patterns include using parameterized queries or prepared statements, applying allowlisted type and format validation to identifiers, and avoiding dynamic SQL construction. Database accounts should follow least privilege, while sensitive records and administrative functions should have narrowly scoped access. Secure defaults, centralized data-access abstractions, and independent authorization checks can reduce the consequences of input-handling mistakes.

Mitigation generally centers on treating request parameters as data rather than executable query content. Common defensive patterns include using parameterized queries or prepared statements, applying allowlisted type and format validation to identifiers, and avoiding dynamic SQL construction. Database accounts should follow least privilege, while sensitive records and administrative functions should have narrowly scoped access. Secure defaults, centralized data-access abstractions, and independent authorization checks can reduce the consequences of input-handling mistakes.

How teams detect issues like this

Detection approaches may include static analysis for string concatenation or interpolation of request parameters into SQL statements, code review of database access in administrative handlers, and tests that verify query parameters remain bound values. Web application monitoring can flag unusual database errors, malformed parameter patterns, and unexpected data access. Policy enforcement in CI can require approved query APIs and security review for changes to database-facing endpoints. Automated review tools may help identify likely injection paths but should be supplemented by manual validation.

Detection approaches may include static analysis for string concatenation or interpolation of request parameters into SQL statements, code review of database access in administrative handlers, and tests that verify query parameters remain bound values. Web application monitoring can flag unusual database errors, malformed parameter patterns, and unexpected data access. Policy enforcement in CI can require approved query APIs and security review for changes to database-facing endpoints. Automated review tools may help identify likely injection paths but should be supplemented by manual validation.

Sources

SourceLink
github.comgithub.com/ltranquility/submit/issues/24
itsourcecode.comitsourcecode.com/
vuldb.comvuldb.com/cve/CVE-2026-105183
vuldb.comvuldb.com/submit/971464
vuldb.comvuldb.com/vuln/413420
vuldb.comvuldb.com/vuln/413420/cti

Frequently asked

questions

Yes, the affected function is described as reachable through a remote web request. Exploitability still depends on deployment exposure, routing, and any authentication or authorization controls protecting the endpoint.

The available description does not establish whether authentication is required. Access to the affected endpoint and the ability to submit the schedid parameter are the key conditions.

Use parameterized queries or prepared statements for database operations, validate identifiers according to an allowlist, and avoid constructing SQL statements by concatenating request data.

Standardize secure database-access libraries, enforce least-privilege database accounts, review administrative handlers, and add automated tests and CI checks for injection-prone query construction.

Yes, the affected function is described as reachable through a remote web request. Exploitability still depends on deployment exposure, routing, and any authentication or authorization controls protecting the endpoint.

The available description does not establish whether authentication is required. Access to the affected endpoint and the ability to submit the schedid parameter are the key conditions.

Use parameterized queries or prepared statements for database operations, validate identifiers according to an allowlist, and avoid constructing SQL statements by concatenating request data.

Standardize secure database-access libraries, enforce least-privilege database accounts, review administrative handlers, and add automated tests and CI checks for injection-prone query construction.

Find out what's already
exploitable in your codebase.