Description
Shlink contains a blind SQL injection vulnerability that allows any authenticated API key holder to inject arbitrary SQL fragments by supplying an unvalidated direction value in the orderBy query parameter of the tag statistics endpoint. Attackers can craft a malicious direction string containing SQL subqueries that flows unsanitized into a Doctrine QueryBuilder ORDER BY clause, enabling time-based, boolean-oracle, and error-based extraction of sensitive data including long URLs, visitor records, IP addresses, geolocation data, user agents, and hashed API key secrets from any tenant.
Published: 2026-08-03
Score: 7.1 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Shlink contains a blind SQL injection flaw that permits any authenticated API key holder to inject arbitrary SQL fragments by supplying an unvalidated direction value in the orderBy query parameter of the tag statistics endpoint. The malicious payload is placed unsanitized into a Doctrine QueryBuilder ORDER BY clause, allowing attackers to perform time‑based, boolean‑oracle, or error‑based techniques to recover sensitive data. The exposed information can include long URLs, visitor records, IP addresses, geolocation data, user agents, and hashed API‑key secrets belonging to any tenant. This vulnerability represents a confidentiality breach that can compromise the entire tenant database and is classified as CWE‑89.

Affected Systems

The affected product is Shlink from shlinkio. No specific version numbers are provided in the available data, so all installations of Shlink that expose the tag statistics endpoint are presumed at risk until a patch is applied.

Risk and Exploitability

The CVSS score of 7.1 indicates a high severity vulnerability. The EPSS score is not available and the flaw is not listed in the CISA KEV catalog, suggesting no confirmed public exploitation yet. Exploitation requires a valid API key, implying that any user who can obtain or guess an API key may use it to conduct the injection. The attacker has full read‑only or operational access to tenant data through the compromised endpoint, which can lead to large‑scale data leakage.

Generated by OpenCVE AI on August 4, 2026 at 09:45 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update Shlink to the latest release that includes the fix for the orderBy blind SQL injection.
  • If an update cannot be applied immediately, revoke all existing API keys and generate new, restricted ones with minimal privileges while monitoring for suspicious query patterns.
  • Implement custom input validation on the orderBy parameter to enforce a whitelist of allowed column names or values, thereby preventing unfiltered SQL fragments from reaching the database.

Generated by OpenCVE AI on August 4, 2026 at 09:45 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 05 Aug 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Wed, 05 Aug 2026 10:00:00 +0000

Type Values Removed Values Added
First Time appeared Shlink
Shlink shlink
Vendors & Products Shlink
Shlink shlink

Mon, 03 Aug 2026 20:45:00 +0000

Type Values Removed Values Added
Description Shlink contains a blind SQL injection vulnerability that allows any authenticated API key holder to inject arbitrary SQL fragments by supplying an unvalidated direction value in the orderBy query parameter of the tag statistics endpoint. Attackers can craft a malicious direction string containing SQL subqueries that flows unsanitized into a Doctrine QueryBuilder ORDER BY clause, enabling time-based, boolean-oracle, and error-based extraction of sensitive data including long URLs, visitor records, IP addresses, geolocation data, user agents, and hashed API key secrets from any tenant.
Title Shlink Blind SQL Injection via tags/stats orderBy Parameter
Weaknesses CWE-89
References
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N'}

cvssV4_0

{'score': 7.1, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-08-05T14:22:39.904Z

Reserved: 2026-08-03T20:03:39.501Z

Link: CVE-2026-18737

cve-icon Vulnrichment

Updated: 2026-08-05T14:22:26.876Z

cve-icon NVD

Status : Received

Published: 2026-08-03T21:16:38.240

Modified: 2026-08-05T15:16:41.963

Link: CVE-2026-18737

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-05T09:45:06Z

Weaknesses
  • CWE-89

    Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')