Safeguard
Vulnerability Analysis•

CVE-2026-0585: SQL Injection in Online Product Reservation System

CVE-2026-0585 is a high severity SQL injection in the order view page of code-projects Online Product Reservation System 1.0. No fix is listed. Act now.

Safeguard Security Team
3 min read

CVE-2026-0585 is a SQL injection flaw in Online Product Reservation System 1.0 from code-projects, in /order_view.php. NVD scores it 7.3, high severity, and the record says an exploit has been published. No fixed version is listed, so the fix is to correct the query in your copy or take the app offline.

What's affected

  • Product: Online Product Reservation System, version 1.0, from code-projects.
  • Component: /order_view.php, parameter transaction_id.
  • Fixed version: none listed in the CVE record or the public report. Check the vendor page for any newer release.
  • Severity: CVSS 7.3, vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L. The vector lists no privileges required.
  • Exploitation: the record says exploit details are public. It is not on the CISA Known Exploited Vulnerabilities list.

How to check if you're exposed

This is source code you host, so first find out whether you run it.

find /var/www -type f -path "*order_view.php" 2>/dev/null

If the file exists and the site is reachable from the internet, treat it as exposed. Then search your access logs for requests to order_view.php.

What to do now

  1. Take the app off the public internet, or put it behind a VPN or an authenticating reverse proxy, until the query is fixed.
  2. If you keep running it, change the code in order_view.php so transaction_id reaches the database through a prepared statement (PDO or mysqli) instead of string concatenation.
  3. Run the database account for this app with only the privileges it needs. It should not own the schema or be able to read other databases.
  4. Search access logs for unusual requests to order_view.php and for database errors in the PHP log, then reset any passwords that may have been exposed.

Why it matters

The weakness is CWE-89 (improper neutralization of special elements in an SQL command), a child of CWE-74 (injection). The app builds a query by pasting request data straight into SQL text, so the database cannot tell data from instructions. The public report for this product family describes that exact pattern.

The order view page takes a transaction ID from the URL query string. A value that arrives by GET shows up in browser history, proxy logs and referrer headers, so the same parameter is easy to observe and replay. The CVSS vector lists no privileges required, which means no login stands between a visitor and this page.

Quick check

Is there a patch for CVE-2026-0585?

None is listed in the CVE record. Check code-projects for a newer release, and if there is none, fix the query yourself or stop running the app.

Why does a GET parameter matter here?

It is stored in server logs, browser history and proxies, and it is easy to share. A flaw reachable through a plain URL needs no form or session to try, so check your logs first.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.