CVE-2026-27149
SQL Injection in Discourse PM Tag Filtering Exposes Metadata
Publication date: 2026-02-26
Last updated on: 2026-03-02
Assigner: GitHub, Inc.
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| discourse | discourse | to 2025.12.2 (exc) |
| discourse | discourse | From 2026.1.0 (inc) to 2026.1.1 (exc) |
| discourse | discourse | 2026.2.0 |
Helpful Resources
Exploitability
| 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 Powered Q&A
Can you explain this vulnerability to me?
CVE-2026-27149 is a high-severity SQL injection vulnerability in the Discourse software, specifically in the private message tag filtering functionality called list_private_messages_tag.
The vulnerability occurs because the software builds SQL commands using input that comes from outside sources without properly escaping or neutralizing special SQL characters. This flaw allows attackers to bypass the tag filter conditions.
As a result, attackers can potentially access private message metadata that they are not authorized to see.
The issue affects Discourse versions prior to 2025.12.2, 2026.1.1, and 2026.2.0, which contain patches to fix this vulnerability.
How can this vulnerability impact me? :
[{'type': 'paragraph', 'content': 'This vulnerability can impact you by allowing an attacker to bypass tag filtering in private messages and gain unauthorized access to private message metadata.'}, {'type': 'paragraph', 'content': 'Such unauthorized disclosure can lead to privacy breaches, exposing sensitive information about private communications.'}, {'type': 'paragraph', 'content': "Since the vulnerability involves SQL injection, it may also be leveraged to perform further attacks on the database depending on the attacker's skill and the system's configuration."}] [1]
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
I don't know
How can this vulnerability be detected on my network or system? Can you suggest some commands?
I don't know
What immediate steps should I take to mitigate this vulnerability?
The recommended immediate step to mitigate this vulnerability is to upgrade Discourse to one of the patched versions: 2025.12.2, 2026.1.1, or 2026.2.0.
No known workarounds are available, so applying the update is essential to prevent exploitation of the SQL injection vulnerability in the private message tag filtering functionality.