/

CVE-2026-114577

Severity:

HIGH RISK

(7.3)

SQL Injection (CWE-89) in php-travel-agency-system Admin

CVE-2026-114577

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 vulnerability in the php-travel-agency-system insertion handler allows attacker-controlled input to influence database queries. If the affected administrative endpoint is reachable and inputs are not safely handled, a remote attacker may be able to read, alter, or interfere with application data.

A SQL injection vulnerability in the php-travel-agency-system insertion handler allows attacker-controlled input to influence database queries. If the affected administrative endpoint is reachable and inputs are not safely handled, a remote attacker may be able to read, alter, or interfere with application data.

Affected context

The vulnerability is associated with the administrative insertion handler at admin/insert.php. It may occur when request parameters such as customer identifiers, payment details, amounts, descriptions, user information, image-related values, names, or visa numbers are incorporated into database operations without sufficient parameterization and validation. Risk depends on endpoint exposure, authentication controls, and the database account permissions used by the application.

The vulnerability is associated with the administrative insertion handler at admin/insert.php. It may occur when request parameters such as customer identifiers, payment details, amounts, descriptions, user information, image-related values, names, or visa numbers are incorporated into database operations without sufficient parameterization and validation. Risk depends on endpoint exposure, authentication controls, and the database account permissions used by the application.

Exploit preconditions

  • Attack surface: The remotely reachable admin/insert.php insertion handler
  • Required access: Ability to send requests to the affected endpoint; authentication requirements depend on deployment configuration
  • Trigger point: Processing attacker-influenced insertion parameters
  • Why exploitation is possible: Untrusted request data may alter the intended structure or behavior of database queries when it is not separated from SQL commands
  • Attack surface: The remotely reachable admin/insert.php insertion handler
  • Required access: Ability to send requests to the affected endpoint; authentication requirements depend on deployment configuration
  • Trigger point: Processing attacker-influenced insertion parameters
  • Why exploitation is possible: Untrusted request data may alter the intended structure or behavior of database queries when it is not separated from SQL commands

Why this happens

The underlying issue is an injection flaw in which external input is treated as part of a database command rather than as data. This behavior maps primarily to CWE-89: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') and is also related to the broader injection category represented by CWE-74. The insecure pattern commonly involves constructing SQL statements through string concatenation or equivalent query composition without consistently using parameterized interfaces.

The underlying issue is an injection flaw in which external input is treated as part of a database command rather than as data. This behavior maps primarily to CWE-89: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') and is also related to the broader injection category represented by CWE-74. The insecure pattern commonly involves constructing SQL statements through string concatenation or equivalent query composition without consistently using parameterized interfaces.

Potential impact

  • An attacker may read sensitive records from the application database
  • An attacker could modify, insert, or delete database content
  • Authentication, payment, customer, or administrative data may be exposed or corrupted
  • Database availability could be reduced through resource-intensive or destructive queries
  • The application may be used as a stepping stone for further compromise, depending on database and service privileges
  • An attacker may read sensitive records from the application database
  • An attacker could modify, insert, or delete database content
  • Authentication, payment, customer, or administrative data may be exposed or corrupted
  • Database availability could be reduced through resource-intensive or destructive queries
  • The application may be used as a stepping stone for further compromise, depending on database and service privileges

General mitigation guidance

Mitigation generally focuses on separating query structure from user-supplied data and reducing the trust placed in request parameters.

Common defensive patterns include:

  • Use parameterized queries or prepared statements for every database operation
  • Apply allowlist validation and type constraints appropriate to each field
  • Avoid dynamically assembling SQL statements from request values
  • Use database accounts with only the permissions required by the application
  • Enforce authentication and authorization checks for administrative handlers
  • Store sensitive payment-related data according to applicable security and privacy requirements
  • Apply consistent error handling that does not disclose database details

Mitigation generally focuses on separating query structure from user-supplied data and reducing the trust placed in request parameters.

Common defensive patterns include:

  • Use parameterized queries or prepared statements for every database operation
  • Apply allowlist validation and type constraints appropriate to each field
  • Avoid dynamically assembling SQL statements from request values
  • Use database accounts with only the permissions required by the application
  • Enforce authentication and authorization checks for administrative handlers
  • Store sensitive payment-related data according to applicable security and privacy requirements
  • Apply consistent error handling that does not disclose database details

How teams detect issues like this

Organizations can identify similar issues through:

  • Static analysis rules for SQL string concatenation involving request parameters
  • Code review checks for direct use of request variables in database calls
  • Dynamic testing that examines whether unexpected input changes query behavior, without relying on destructive actions
  • Web application firewall or API policy rules for suspicious request patterns
  • Database activity monitoring for anomalous query volume, access patterns, or privilege use
  • Automated security scanning and secure coding checks integrated into development workflows

Organizations can identify similar issues through:

  • Static analysis rules for SQL string concatenation involving request parameters
  • Code review checks for direct use of request variables in database calls
  • Dynamic testing that examines whether unexpected input changes query behavior, without relying on destructive actions
  • Web application firewall or API policy rules for suspicious request patterns
  • Database activity monitoring for anomalous query volume, access patterns, or privilege use
  • Automated security scanning and secure coding checks integrated into development workflows

Sources

SourceLink
github.comgithub.com/oretnom23/php-travel-agency-system/
github.comgithub.com/oretnom23/php-travel-agency-system/issues/5
vuldb.comvuldb.com/cve/CVE-2026-114577
vuldb.comvuldb.com/submit/1021595
vuldb.comvuldb.com/vuln/424945
vuldb.comvuldb.com/vuln/424945/cti

Frequently asked

questions

It may be remotely exploitable when the affected insertion handler is network-accessible and an attacker can submit values that reach the vulnerable database operation. Authentication and authorization requirements depend on the deployment.

Not necessarily. The required access depends on how the handler is exposed and protected. Weak or missing authorization controls can broaden the exploitation scope.

Use parameterized queries or prepared statements throughout the affected code, combined with field-specific validation and least-privilege database permissions.

Treat all request data as untrusted, prohibit SQL construction through string concatenation, review database access code, and enforce automated static and dynamic security testing.

It may be remotely exploitable when the affected insertion handler is network-accessible and an attacker can submit values that reach the vulnerable database operation. Authentication and authorization requirements depend on the deployment.

Not necessarily. The required access depends on how the handler is exposed and protected. Weak or missing authorization controls can broaden the exploitation scope.

Use parameterized queries or prepared statements throughout the affected code, combined with field-specific validation and least-privilege database permissions.

Treat all request data as untrusted, prohibit SQL construction through string concatenation, review database access code, and enforce automated static and dynamic security testing.

Find out what's already
exploitable in your codebase.