CVE-2026-18737
Received Received - Intake

Blind SQL Injection in Shlink API Tag Statistics

Vulnerability report for CVE-2026-18737, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-08-03

Last updated on: 2026-08-03

Assigner: VulnCheck

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.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-03
Last Modified
2026-08-03
Generated
2026-08-04
AI Q&A
2026-08-04
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
shlink shlink *

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-89 The product constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component. Without sufficient removal or quoting of SQL syntax in user-controllable inputs, the generated SQL query can cause those inputs to be interpreted as SQL instead of ordinary user data.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

Shlink has a blind SQL injection flaw where authenticated API key users can inject malicious SQL via the orderBy parameter in the tag statistics endpoint. The direction value is not validated, allowing attackers to insert SQL subqueries into a Doctrine QueryBuilder ORDER BY clause. This enables data extraction through time-based, boolean, or error-based techniques.

Detection Guidance

To detect this vulnerability, monitor API requests to the Shlink tag statistics endpoint for unvalidated direction parameters. Check logs for SQL-like syntax in orderBy values or unusual query patterns. No specific commands are provided in the context.

Impact Analysis

An attacker with an API key could extract sensitive data such as long URLs, visitor records, IP addresses, geolocation data, user agents, and hashed API key secrets from any tenant. This could lead to data breaches, unauthorized access, or further exploitation of the system.

Compliance Impact

This vulnerability could lead to unauthorized access and exposure of personal data, violating GDPR's data protection principles and HIPAA's security requirements for safeguarding protected health information. Non-compliance may result in legal penalties, fines, or reputational damage.

Mitigation Strategies

Immediately update Shlink to the latest patched version. Restrict API key access to trusted users only. Implement input validation for the direction parameter in the tag statistics endpoint to prevent SQL injection.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-18737. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart