/

CVE-2026-105247

Severity:

HIGH RISK

(7.3)

SQL Injection (CWE-89) in Online Reviewer Assessments

CVE-2026-105247

Deferred

Vulnerability type

Category:

SQL Injection

CWE:

CWE-74, CWE-89

Impact:

Database Access and 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 Online Reviewer Management System allows attacker-controlled input in the Subject parameter to influence database queries. Because the affected endpoint is remotely reachable, an attacker may be able to read, alter, or otherwise manipulate database information when input is not safely handled.

A SQL injection vulnerability in the Online Reviewer Management System allows attacker-controlled input in the Subject parameter to influence database queries. Because the affected endpoint is remotely reachable, an attacker may be able to read, alter, or otherwise manipulate database information when input is not safely handled.

Affected context

The vulnerability occurs in SourceCodester Online Reviewer Management System 1.0, within the assessment subject handling functionality at reviewer_0/admins/assessments/Subject/btn_functions.php?action=course. Risk depends on the endpoint being reachable by an attacker and the Subject parameter being incorporated into database operations without adequate separation between data and SQL commands.

The vulnerability occurs in SourceCodester Online Reviewer Management System 1.0, within the assessment subject handling functionality at reviewer_0/admins/assessments/Subject/btn_functions.php?action=course. Risk depends on the endpoint being reachable by an attacker and the Subject parameter being incorporated into database operations without adequate separation between data and SQL commands.

Exploit preconditions

  • Attack surface: Remotely accessible web endpoint
  • Required access: Ability to send requests to the affected assessment functionality; authentication requirements may depend on deployment configuration
  • Trigger point: Processing of the Subject parameter for the course-related action
  • Why exploitation is possible: Attacker-controlled input may reach database query construction without sufficient parameterization or validation
  • Attack surface: Remotely accessible web endpoint
  • Required access: Ability to send requests to the affected assessment functionality; authentication requirements may depend on deployment configuration
  • Trigger point: Processing of the Subject parameter for the course-related action
  • Why exploitation is possible: Attacker-controlled input may reach database query construction without sufficient parameterization or validation

Why this happens

The underlying bug is an injection flaw in which externally supplied Subject data can affect the structure or behavior of a SQL statement.

This maps primarily to CWE-89: Improper Neutralization of Special Elements used in an SQL Command (SQL Injection). The related CWE-74 classification reflects the broader failure to keep data separate from interpreter commands. The insecure pattern is constructing or modifying SQL queries with untrusted input instead of using parameterized database interfaces and constrained input handling.

The underlying bug is an injection flaw in which externally supplied Subject data can affect the structure or behavior of a SQL statement.

This maps primarily to CWE-89: Improper Neutralization of Special Elements used in an SQL Command (SQL Injection). The related CWE-74 classification reflects the broader failure to keep data separate from interpreter commands. The insecure pattern is constructing or modifying SQL queries with untrusted input instead of using parameterized database interfaces and constrained input handling.

Potential impact

  • An attacker may read sensitive database records
  • An attacker could modify or delete application data
  • Database integrity and reviewer or course information may be compromised
  • The vulnerability may enable unauthorized authentication or authorization effects, depending on database contents and application design
  • Database availability could be affected through resource-intensive or destructive queries
  • An attacker may read sensitive database records
  • An attacker could modify or delete application data
  • Database integrity and reviewer or course information may be compromised
  • The vulnerability may enable unauthorized authentication or authorization effects, depending on database contents and application design
  • Database availability could be affected through resource-intensive or destructive queries

General mitigation guidance

Mitigation generally focuses on preserving a strict separation between user-supplied data and SQL commands.

Common defensive patterns include:

  • Use parameterized queries or prepared statements for all database operations
  • Avoid dynamic SQL construction from request parameters
  • Apply allowlisted input validation appropriate to the expected Subject format
  • Use database accounts with only the permissions required by the application
  • Centralize database access through reviewed data-access abstractions
  • Avoid returning detailed database errors to external users
  • Apply secure-by-default authentication, authorization, and endpoint exposure controls

Mitigation generally focuses on preserving a strict separation between user-supplied data and SQL commands.

Common defensive patterns include:

  • Use parameterized queries or prepared statements for all database operations
  • Avoid dynamic SQL construction from request parameters
  • Apply allowlisted input validation appropriate to the expected Subject format
  • Use database accounts with only the permissions required by the application
  • Centralize database access through reviewed data-access abstractions
  • Avoid returning detailed database errors to external users
  • Apply secure-by-default authentication, authorization, and endpoint exposure controls

How teams detect issues like this

Organizations can identify similar issues through:

  • Static analysis rules for string concatenation or interpolation within SQL statements
  • Code review checks for request parameters passed directly to database APIs
  • Dynamic testing with structured input validation and database error monitoring
  • Web application firewall or gateway policies that detect suspicious injection patterns as a defense-in-depth measure
  • Database activity monitoring for unexpected query shapes, privilege use, or access to unrelated tables
  • Automated security review tools that flag unsanitized input-to-query data flows

Organizations can identify similar issues through:

  • Static analysis rules for string concatenation or interpolation within SQL statements
  • Code review checks for request parameters passed directly to database APIs
  • Dynamic testing with structured input validation and database error monitoring
  • Web application firewall or gateway policies that detect suspicious injection patterns as a defense-in-depth measure
  • Database activity monitoring for unexpected query shapes, privilege use, or access to unrelated tables
  • Automated security review tools that flag unsanitized input-to-query data flows

Sources

SourceLink
github.comgithub.com/memory0433/cve/issues/2
vuldb.comvuldb.com/cve/CVE-2026-105247
vuldb.comvuldb.com/submit/976275
vuldb.comvuldb.com/vuln/413453
vuldb.comvuldb.com/vuln/413453/cti
sourcecodester.comsourcecodester.com/

Frequently asked

questions

Yes. The affected functionality is exposed through a web endpoint, so exploitation may be possible over the network when an attacker can reach it and submit input.

The available description does not establish a fixed authentication requirement. It depends on whether the endpoint is publicly accessible and how authentication and authorization are configured in the deployment.

Use parameterized queries or prepared statements, validate the Subject value against an appropriate allowlist, and ensure the database account has minimal privileges.

Enforce secure database-access patterns in shared libraries and code review, add static and dynamic security testing, restrict endpoint exposure, and monitor database activity for anomalous behavior.

Yes. The affected functionality is exposed through a web endpoint, so exploitation may be possible over the network when an attacker can reach it and submit input.

The available description does not establish a fixed authentication requirement. It depends on whether the endpoint is publicly accessible and how authentication and authorization are configured in the deployment.

Use parameterized queries or prepared statements, validate the Subject value against an appropriate allowlist, and ensure the database account has minimal privileges.

Enforce secure database-access patterns in shared libraries and code review, add static and dynamic security testing, restrict endpoint exposure, and monitor database activity for anomalous behavior.

Find out what's already
exploitable in your codebase.