Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with low-privilege Weblate account
-
DeliverySend HTTP requests to change/comment/announcement endpoints with enumerated object IDs
-
ExploitObserve HTTP 403 vs 404 response codes
-
ExecutionConfirm existence of private project objects
-
ImpactMap private project activity scope
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V6 - Authentication Timing-safe comparisons
|
| Exploitation Conditions | Exploitation requires a valid authenticated session with at least low-privilege access to the target Weblate instance (confirmed by CVSS PR:L). The attacker must have a registered user account - anonymous or unauthenticated access is insufficient. No special feature enablement, non-default configuration, or specific platform variant is required; the globally-scoped lookup pattern is present in all pre-2026.7 deployments by default. The primary limiting factor is the authentication gate: restricting self-registration or ensuring all authenticated users are trusted colleagues eliminates the external attack surface. The impact ceiling is also a limiting factor - only object existence (a boolean) is inferrable, not object content. |
| Impact | The CVSS 3.1 vector AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N scores 4.3 (Medium) and accurately captures the threat profile: network-reachable, low complexity, but gated by prior authentication (PR:L). Real-world impact is strictly limited to object existence inference - an attacker can determine that a specific change ID or announcement ID exists within a private project, but cannot read its content, modify data, or cause a service disruption (I:N, A:N). No EPSS score was supplied in the input, so quantitative exploitation probability cannot be stated. CISA KEV status is absent, confirming no known active exploitation at the time of this analysis. The risk is primarily reconnaissance-enabling: mapping private project activity volume or confirming a competitor's Weblate activity - not a direct data breach vector. For organizations hosting sensitive localization data in private Weblate projects with untrusted authenticated users, the practical risk is slightly higher than the raw CVSS score implies, but patching remains a routine maintenance priority rather than an emergency response. |
| Exploit ScenarioDerived | An authenticated Weblate user with a low-privilege account on a shared instance systematically sends GET requests to change, comment, or announcement endpoints using sequential or guessed object primary key values. When the server returns HTTP 403 the attacker records that object ID as existing within a private project; when it returns HTTP 404 the ID is absent. By iterating a range of IDs, the attacker can reconstruct an approximate timeline and volume of activity for private projects they have no authorization to view. No public exploit code has been identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 26, 2026
Object existence enumeration in Weblate prior to version 2026.7 allows authenticated low-privilege users to infer whether objects exist within private projects by observing differential HTTP response codes - HTTP 403 (Forbidden) for existing-but-inaccessible objects versus HTTP 404 (Not Found) for truly absent ones. Affected endpoints performing globally-scoped ORM lookups across changes, comments, and announcements fail to restrict results to projects the requesting user is authorized to view. No public exploit has been identified and this is not listed in CISA KEV; the CVSS 4.3 Medium rating reflects the authentication prerequisite and the narrow confidentiality impact (existence inference only, no content disclosure).
RemediationAI
The primary fix is upgrading Weblate to version 2026.7 or later, which contains the hardened object lookup logic confirmed by commit 836bc082803d49d02f2831ec8339268eb66bcdae and documented in the vendor advisory at https://github.com/WeblateOrg/weblate/security/advisories/GHSA-2p9g-x3cv-5hh4. If an immediate upgrade is operationally infeasible, administrators should audit which users hold authenticated access to the instance and revoke accounts for untrusted or external parties, since exploitation requires PR:L (a valid authenticated session). Restricting Weblate network access to trusted internal networks via firewall rules eliminates the network-accessible attack vector without requiring application changes, though this trades off against any external collaborator workflows. There is no feature flag or configuration knob to disable the vulnerable lookup behavior in pre-2026.7 releases without patching.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in pypi
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The root cause is CWE-203 (Observable Discrepancy): when Django ORM queries retrieve objects without filtering to the user's authorized project scope, the application implicitly leaks a boolean signal - whether an object exists - through the HTTP status code returned. Affected code paths include the change history view (show_change), comment endpoints, and announcement lookups in weblate/trans/models/announcement.py. The fix in commit 836bc082803d49d02f2831ec8339268eb66bcdae introduces a filter_access() queryset method on the Announcement model to enforce user-scoped visibility via project access queries, and extends needs_component_restrictions_filter logic in weblate/auth/models.py to correctly handle users in 'all projects' groups who are also blocked on specific projects. Affected product per CPE: cpe:2.3:a:weblateorg:weblate:*:*:*:*:*:*:*:*, all versions prior to 2026.7.
Know when Weblate gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
Network-accessible endpoints require a valid authenticated session (PR:L); only object existence is inferrable, yielding Low confidentiality impact with no integrity or availability impact.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
Weblate is a web-based localization tool. In versions prior to 2026.7, several endpoints look up objects in a globally scoped manner rather than restricting the lookup to projects the user can access, so they return HTTP 403 (Forbidden) instead of 404 (Not Found) when a user requests an object they are not authorized to see. This difference lets unauthorized users infer whether a given object exists in a private Weblate project. The issue has been fixed in version 2026.7.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Improper input validation in Weblate versions prior to 5.15.1 lets a user who can submit translation files or restore pr
Privilege escalation in Weblate versions prior to 5.17 allows an authenticated low-privileged user to modify sensitive f
The package weblate from 0 and before 4.11.1 are vulnerable to Remote Code Execution (RCE) via argument injection when u
Argument injection in Weblate's Mercurial backend lets an authenticated user with project-scoped component.edit permissi
Weblate's REST API failed to enforce permission scope on team (group) assignments in all versions prior to 2026.7, allow
Remote code execution in Weblate's project backup restoration affects versions prior to 5.17, exploitable by authenticat
The wlc Weblate command-line client prior to version 1.17.2 is vulnerable to arbitrary file write attacks through path t
Arbitrary file read via symlink traversal in Weblate's App store metadata ZIP download affects all versions prior to 202
Arbitrary file read vulnerability in Weblate versions prior to 5.17 allows authenticated attackers to read sensitive fil
Weblate versions prior to 5.15.2 expose screenshot images through the web server without authentication controls, enabli
Path traversal in Weblate allows authenticated users to read arbitrary files outside the repository via the translation
Weblate versions up to 5.16.0 contains a vulnerability that allows attackers to an argument injection to `ssh-add` (CVSS
EUVD-2026-66712
GHSA-2p9g-x3cv-5hh4
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB