/

CVE-2026-105919

Severity:

HIGH RISK

(7.3)

SQL Injection (CWE-89) in LMS Administrator Login Endpoint

CVE-2026-105919

Deferred

Vulnerability type

Category:

SQL Injection

CWE:

CWE-74, CWE-89

Impact:

Unauthorized 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 Learning-Management-System administrator login endpoint allows attacker-controlled username or password input to alter database queries. Because the endpoint is remotely reachable, an unauthenticated attacker may be able to access or manipulate database information when input is incorporated into SQL without adequate parameterization.

A SQL injection vulnerability in the Learning-Management-System administrator login endpoint allows attacker-controlled username or password input to alter database queries. Because the endpoint is remotely reachable, an unauthenticated attacker may be able to access or manipulate database information when input is incorporated into SQL without adequate parameterization.

Affected context

The vulnerability occurs in the administrator login functionality implemented in admin/login.php, where the mysql_query function processes username and password values. Deployments using affected code may be at risk when the endpoint is exposed remotely and supplied credentials are incorporated into database queries without strong separation between data and SQL commands.

The vulnerability occurs in the administrator login functionality implemented in admin/login.php, where the mysql_query function processes username and password values. Deployments using affected code may be at risk when the endpoint is exposed remotely and supplied credentials are incorporated into database queries without strong separation between data and SQL commands.

Exploit preconditions

  • Attack surface: Remote administrator login endpoint
  • Required access: Network access to the exposed application; valid authentication is not necessarily required
  • Trigger point: Processing of attacker-controlled username or password parameters
  • Why exploitation is possible: Input may influence a database query because the application does not reliably treat supplied values as data only
  • Attack surface: Remote administrator login endpoint
  • Required access: Network access to the exposed application; valid authentication is not necessarily required
  • Trigger point: Processing of attacker-controlled username or password parameters
  • Why exploitation is possible: Input may influence a database query because the application does not reliably treat supplied values as data only

Why this happens

The underlying bug is an injection flaw in which externally supplied authentication values are combined with SQL statements through an unsafe query-construction pattern. This behavior maps primarily to CWE-89: Improper Neutralization of Special Elements used in an SQL Command (SQL Injection) and is also related to CWE-74: Improper Neutralization of Special Elements in Output Used by a Downstream Component. The database interprets portions of untrusted input as query logic rather than as parameter values.

The underlying bug is an injection flaw in which externally supplied authentication values are combined with SQL statements through an unsafe query-construction pattern. This behavior maps primarily to CWE-89: Improper Neutralization of Special Elements used in an SQL Command (SQL Injection) and is also related to CWE-74: Improper Neutralization of Special Elements in Output Used by a Downstream Component. The database interprets portions of untrusted input as query logic rather than as parameter values.

Potential impact

  • An attacker may bypass administrator authentication
  • Sensitive database records could be disclosed
  • Database information could be modified or deleted
  • Application integrity and user data could be compromised
  • Further compromise may be possible if the database account has excessive privileges
  • An attacker may bypass administrator authentication
  • Sensitive database records could be disclosed
  • Database information could be modified or deleted
  • Application integrity and user data could be compromised
  • Further compromise may be possible if the database account has excessive privileges

General mitigation guidance

Mitigation generally centers on ensuring that all database operations use parameterized queries or prepared statements rather than string-built SQL.

Common defensive patterns include:

  • Replacing dynamic query concatenation with bound parameters
  • Applying allowlisted validation appropriate to each input field
  • Using database accounts with only the permissions required by the application
  • Avoiding disclosure of detailed database errors to clients
  • Enforcing secure session and administrator authentication controls
  • Treating client-supplied credentials and identifiers as untrusted data at every query boundary

Mitigation generally centers on ensuring that all database operations use parameterized queries or prepared statements rather than string-built SQL.

Common defensive patterns include:

  • Replacing dynamic query concatenation with bound parameters
  • Applying allowlisted validation appropriate to each input field
  • Using database accounts with only the permissions required by the application
  • Avoiding disclosure of detailed database errors to clients
  • Enforcing secure session and administrator authentication controls
  • Treating client-supplied credentials and identifiers as untrusted data at every query boundary

How teams detect issues like this

Organizations can look for SQL injection risks through:

  • Static analysis rules identifying string concatenation or interpolation in SQL calls
  • Code review checks for direct use of request parameters in database queries
  • Application testing that verifies special-character handling and query parameterization
  • Web application firewall or API gateway policies for suspicious injection patterns
  • Database monitoring for anomalous authentication queries, errors, and access volumes

Automated security review tools may help identify unsafe query-construction patterns, but findings should be validated against the application's data-access design.

Organizations can look for SQL injection risks through:

  • Static analysis rules identifying string concatenation or interpolation in SQL calls
  • Code review checks for direct use of request parameters in database queries
  • Application testing that verifies special-character handling and query parameterization
  • Web application firewall or API gateway policies for suspicious injection patterns
  • Database monitoring for anomalous authentication queries, errors, and access volumes

Automated security review tools may help identify unsafe query-construction patterns, but findings should be validated against the application's data-access design.

Sources

SourceLink
github.comgithub.com/KusalkaSilva/Learning-Management-System/
github.comgithub.com/KusalkaSilva/Learning-Management-System/issues/2
vuldb.comvuldb.com/cve/CVE-2026-105919
vuldb.comvuldb.com/submit/992655
vuldb.comvuldb.com/vuln/413893
vuldb.comvuldb.com/vuln/413893/cti

Frequently asked

questions

Yes. The affected administrator login endpoint can be reached remotely, so exploitation may be possible over the network when the application is exposed and vulnerable input reaches the database query.

Not necessarily. Because the vulnerable functionality is an administrator login endpoint, an attacker may be able to interact with it before successful authentication.

Use prepared statements or parameterized queries for every database operation, combined with context-appropriate input validation and least-privilege database access.

Enforce secure data-access patterns through code review, static analysis, security testing, and development policies that prohibit building SQL statements by concatenating untrusted input.

Yes. The affected administrator login endpoint can be reached remotely, so exploitation may be possible over the network when the application is exposed and vulnerable input reaches the database query.

Not necessarily. Because the vulnerable functionality is an administrator login endpoint, an attacker may be able to interact with it before successful authentication.

Use prepared statements or parameterized queries for every database operation, combined with context-appropriate input validation and least-privilege database access.

Enforce secure data-access patterns through code review, static analysis, security testing, and development policies that prohibit building SQL statements by concatenating untrusted input.

Find out what's already
exploitable in your codebase.