/

CVE-2026-114441

Severity:

HIGH RISK

(7.3)

SQL Injection (CWE-89) in PHP Travel Agency admin/update.php

CVE-2026-114441

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 weakness in the PHP Travel Agency System may allow crafted values submitted to admin/update.php to alter database queries. If the affected endpoint is remotely reachable and input is incorporated into SQL without effective parameterization, an attacker could access or modify application data.

A SQL injection weakness in the PHP Travel Agency System may allow crafted values submitted to admin/update.php to alter database queries. If the affected endpoint is remotely reachable and input is incorporated into SQL without effective parameterization, an attacker could access or modify application data.

Affected context

The issue appears in processing associated with the admin/update.php endpoint and the action, full_name, visa_no, hiden, title, description, and page_id arguments. Risk depends on whether the endpoint is exposed to an attacker, how authentication and authorization are enforced, and whether these values reach database queries through unsafe SQL construction.

The issue appears in processing associated with the admin/update.php endpoint and the action, full_name, visa_no, hiden, title, description, and page_id arguments. Risk depends on whether the endpoint is exposed to an attacker, how authentication and authorization are enforced, and whether these values reach database queries through unsafe SQL construction.

Exploit preconditions

  • Attack surface: The remotely accessible admin/update.php HTTP endpoint
  • Required access: Ability to submit requests to the affected endpoint; authentication requirements depend on deployment controls
  • Trigger point: Processing one or more identified request arguments during an update operation
  • Why exploitation is possible: Input may influence SQL statements without adequate parameterization, allowing query structure and data values to be confused
  • Attack surface: The remotely accessible admin/update.php HTTP endpoint
  • Required access: Ability to submit requests to the affected endpoint; authentication requirements depend on deployment controls
  • Trigger point: Processing one or more identified request arguments during an update operation
  • Why exploitation is possible: Input may influence SQL statements without adequate parameterization, allowing query structure and data values to be confused

Why this happens

The underlying bug is an unsafe boundary between externally supplied request parameters and database query construction. When application data is concatenated into SQL or otherwise interpreted as query syntax instead of being bound as data, attacker-controlled input can change the intended operation. This maps primarily to CWE-89: Improper Neutralization of Special Elements used in an SQL Command (SQL Injection); the related CWE-74 classification reflects broader injection into an interpreted command or language.

The underlying bug is an unsafe boundary between externally supplied request parameters and database query construction. When application data is concatenated into SQL or otherwise interpreted as query syntax instead of being bound as data, attacker-controlled input can change the intended operation. This maps primarily to CWE-89: Improper Neutralization of Special Elements used in an SQL Command (SQL Injection); the related CWE-74 classification reflects broader injection into an interpreted command or language.

Potential impact

  • An attacker may read sensitive application or database records
  • Unauthorized users could modify or delete stored data
  • Database integrity and application workflows could be disrupted
  • Exposed database credentials or connected services could increase downstream risk
  • Error messages or query behavior could reveal schema information
  • An attacker may read sensitive application or database records
  • Unauthorized users could modify or delete stored data
  • Database integrity and application workflows could be disrupted
  • Exposed database credentials or connected services could increase downstream risk
  • Error messages or query behavior could reveal schema information

General mitigation guidance

Mitigation generally focuses on keeping request data separate from SQL syntax and reducing trust in all client-controlled values.

Common defensive patterns include:

  • Use parameterized queries or prepared statements for every database operation
  • Apply allowlisted validation for actions, identifiers, and expected field formats
  • Enforce authorization at the endpoint and record-operation levels
  • Avoid dynamically assembled table names, column names, or clauses; map accepted values to fixed server-side choices
  • Return generic database errors and avoid exposing query details
  • Run the application with a database account limited to the permissions it requires
  • Review legacy update handlers and apply automated checks for unsafe query construction

Mitigation generally focuses on keeping request data separate from SQL syntax and reducing trust in all client-controlled values.

Common defensive patterns include:

  • Use parameterized queries or prepared statements for every database operation
  • Apply allowlisted validation for actions, identifiers, and expected field formats
  • Enforce authorization at the endpoint and record-operation levels
  • Avoid dynamically assembled table names, column names, or clauses; map accepted values to fixed server-side choices
  • Return generic database errors and avoid exposing query details
  • Run the application with a database account limited to the permissions it requires
  • Review legacy update handlers and apply automated checks for unsafe query construction

How teams detect issues like this

Detection can include static analysis for string concatenation, interpolation, or formatting used to build SQL from request variables, as well as code review of database calls in update handlers. Dynamic testing may use approved non-destructive injection indicators in controlled environments, while web-application policies can alert on abnormal parameter patterns, repeated database errors, and unexpected query behavior. Database activity monitoring can help identify unusual reads, writes, or privilege use by the application account.

Detection can include static analysis for string concatenation, interpolation, or formatting used to build SQL from request variables, as well as code review of database calls in update handlers. Dynamic testing may use approved non-destructive injection indicators in controlled environments, while web-application policies can alert on abnormal parameter patterns, repeated database errors, and unexpected query behavior. Database activity monitoring can help identify unusual reads, writes, or privilege use by the application account.

Sources

SourceLink
github.comgithub.com/oretnom23/php-travel-agency-system/
github.comgithub.com/oretnom23/php-travel-agency-system/issues/4
vuldb.comvuldb.com/cve/CVE-2026-114441
vuldb.comvuldb.com/submit/1020180
vuldb.comvuldb.com/vuln/424814
vuldb.comvuldb.com/vuln/424814/cti

Frequently asked

questions

Potentially. The reported attack surface is a remotely reachable web endpoint, but practical exploitability depends on exposure, authentication, authorization, and input handling.

Not necessarily. The required access depends on the endpoint's deployed access controls; any user able to submit requests that reach the vulnerable processing path may be relevant.

Use parameterized queries for all user-influenced values, validate inputs against expected formats, and map dynamic query elements to fixed server-side options.

Combine secure database APIs, least-privilege database accounts, endpoint authorization, code review, static analysis, and controlled security testing in the development lifecycle.

Potentially. The reported attack surface is a remotely reachable web endpoint, but practical exploitability depends on exposure, authentication, authorization, and input handling.

Not necessarily. The required access depends on the endpoint's deployed access controls; any user able to submit requests that reach the vulnerable processing path may be relevant.

Use parameterized queries for all user-influenced values, validate inputs against expected formats, and map dynamic query elements to fixed server-side options.

Combine secure database APIs, least-privilege database accounts, endpoint authorization, code review, static analysis, and controlled security testing in the development lifecycle.

Find out what's already
exploitable in your codebase.