Safeguard
Vulnerability Analysis•

CVE-2026-2136: SQL Injection in Online Food Ordering

CVE-2026-2136 is a SQL injection in projectworlds Online Food Ordering System 1.0 (CVSS 7.3). No fix is listed, so isolate it and parameterize queries.

Safeguard Security Team
3 min read

CVE-2026-2136 is a high severity SQL injection flaw (CVSS 7.3) in projectworlds Online Food Ordering System 1.0. The ID parameter of /view-ticket.php reaches a database query unsafely. The record lists no fixed version, so remove the app from public reach and fix the query yourself.

What's affected

The record names projectworlds Online Food Ordering System 1.0. The weakness is classed as CWE-89 (SQL injection) and CWE-74 (injection). The vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L means network reachable, low complexity, no login, no user interaction.

No fixed version is listed. I could not find a vendor advisory or patch to confirm one, so treat every copy of this release as affected until you hear otherwise. The record says a working exploit has been publicly disclosed. It does not say the flaw is exploited in the wild, and it is not in the CISA Known Exploited Vulnerabilities catalog.

How to check if you're exposed

Start by finding out whether you run it at all. These apps are often copied onto a server for a class project or an internal pilot and then forgotten.

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

If that returns a hit, open the file and look at how the ID value is used. Concatenating it into an SQL string is the problem. Then check your web server logs for requests to that file from addresses you do not recognize, and look for unusually long or odd looking values in the ID parameter.

For any dependency manifest the project does ship, the free in-browser scan shows known issues in its packages.

What to do now

  1. Take the app off the public internet, or put it behind a VPN or an IP allowlist, today.
  2. Replace string building in /view-ticket.php with a prepared statement and bound parameters. The same fix belongs in every other file that builds queries from request input.
  3. Run the database account with the least privilege the app needs. It should not own the schema, and it should not be able to read tables the app never touches.
  4. Watch the vendor page and the CVE-2026-2136 entry for a patched release, and retire the app if none appears.

Why it matters

Ordering systems hold customer contact details, addresses and order history. If you take payments through a separate provider, check that this app never stored card details, and rotate any keys it holds.

SQL injection happens when request text is treated as part of a query instead of as a plain value. The fix is to send the query and the values separately.

$stmt = $pdo->prepare('SELECT * FROM tickets WHERE id = ?');
$stmt->execute([$id]);

Quick check

Is there a patch for CVE-2026-2136?

The record lists none, and I could not confirm a vendor fix. Check the vendor site and the NVD entry before assuming one exists.

Does the record mention payment data?

No. It only describes the injection point. Check what your own deployment stores.

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.