/

CVE-2026-97885

Severity:

HIGH RISK

(7.3)

SQL Injection (CWE-89) in CloudClassroom updatefaculty.php

CVE-2026-97885

Deferred

Vulnerability type

Category:

SQL Injection

CWE:

CWE-74, CWE-89

Impact:

Database compromise and unauthorized data access

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 remotely reachable SQL injection flaw in CloudClassroom-PHP-Project allows attacker-controlled input in the fid argument to influence database queries. If the affected endpoint is accessible and input is not safely handled, an attacker may read, alter, or otherwise affect data through the application's database account.

Affected context

The vulnerability occurs in the updatefaculty.php endpoint when the fid argument is incorporated into a database operation without sufficient parameterization or validation. Risk depends on whether the endpoint is exposed remotely, whether requests reach the affected code path, and what privileges the application's database account possesses.

Exploit preconditions

  • Attack surface: HTTP-accessible updatefaculty.php endpoint
  • Required access: Network access to the endpoint; authentication requirements may vary by deployment
  • Trigger point: Processing of the fid request argument
  • Why exploitation is possible: Attacker-controlled input may be interpreted as part of a database statement rather than strictly as data

Why this happens

The underlying bug is an injection flaw in which external input is combined with database query logic without a sufficiently separated data and code boundary. This 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, because untrusted input can alter the behavior of a downstream SQL interpreter.

Potential impact

  • An attacker may retrieve unauthorized database records.
  • An attacker could modify or delete application data.
  • An attacker may bypass intended database query restrictions.
  • Sensitive information could be exposed through database error behavior or query results.
  • The application or connected services could be disrupted.

General mitigation guidance

Mitigation generally centers on keeping user input separate from SQL command

structure and reducing the trust placed in request parameters.

Common defensive patterns include:

  • Using parameterized queries or prepared statements for all database operations.
  • Applying allowlisted type and format validation to identifiers such as fid.
  • Avoiding dynamic SQL construction from request data.
  • Returning generic database errors without exposing query details.
  • Assigning the application database account only the permissions required by the endpoint.
  • Restricting endpoint access through authentication, authorization, and network policy where appropriate.
  • Applying secure-by-default data-access abstractions that do not require manual query concatenation.

How teams detect issues like this

Organizations commonly identify SQL injection risks through:

  • Static analysis rules that flag string concatenation or interpolation in SQL statements.
  • Code review checks for request parameters passed directly into database APIs.
  • Dynamic testing with non-destructive input variations and error-response analysis.
  • Web application firewall or API policy rules that monitor suspicious database-oriented input.
  • Database audit logging for unexpected query shapes, access patterns, or privilege use.

Automated security review tools can help detect unsafe query construction before deployment.

Sources

SourceLink
github.comgithub.com/luan-oliveira01/Advisory-CloudClassroom-PHP-Project-1.0/blob/main/SQLi/ADVISORY.md
vuldb.comvuldb.com/cve/CVE-2026-97885
vuldb.comvuldb.com/submit/914564
vuldb.comvuldb.com/vuln/409904
vuldb.comvuldb.com/vuln/409904/cti

Frequently asked

questions

It may be remotely exploitable when updatefaculty.php is network-accessible and

requests can reach the vulnerable handling of the fid argument. Authentication

or authorization controls may limit the practical scope.

The attacker needs network access to the affected endpoint. Whether a valid

account or specific role is also required depends on the application's access

controls.

Use parameterized database queries, validate identifiers against an expected

type or allowlist, and avoid constructing SQL statements by concatenating

request data.

Combine secure data-access APIs with least-privilege database accounts, focused

code review, static analysis, endpoint authorization, and monitoring for

anomalous database activity.

Find out what's already
exploitable in your codebase.