CVE-2026-34393
Python vulnerability analysis and mitigation

Overview

CVE-2026-34393 is a privilege escalation vulnerability in Weblate, a web-based localization tool, caused by the user patching API endpoint failing to properly limit the scope of edits. It affects all Weblate versions prior to 5.17 and was disclosed on April 15, 2026, with the fix published in version 5.17. The vulnerability carries a CVSS v3.1 base score of 8.8 (High) (GitHub Advisory, Feedly). It was independently reported by two researchers, @tikket1 and @DavidCarliez, via GitHub (GitHub Advisory).

Technical details

The root cause is CWE-269 (Improper Privilege Management): the REST API's user patching endpoint did not enforce field-level access controls, allowing authenticated users to modify fields beyond their intended authorization scope. The fix (PR #18687) moved permission validation from the view layer into serializers, introducing a SelfUserSerializer for callers lacking user.edit privileges, and added object-aware permission checks for group update/delete operations (GitHub PR). The attack vector is network-based, requires only low-level authentication (a valid user account), and has low attack complexity with no user interaction needed. The vulnerability also affected group and comment API endpoints, where scope-limiting fields such as project_selection and defining_project could be modified by unauthorized users (GitHub PR).

Impact

Authenticated users with limited privileges can bypass authorization controls to read, modify, or delete localization data and configuration beyond their intended scope. Specifically, attackers could access confidential project data, alter system configurations and group memberships, modify or delete translation content, and potentially escalate their own privileges within the Weblate instance. The high confidentiality, integrity, and availability impacts reflect the potential for broad data exposure and disruption across all projects hosted on a vulnerable Weblate deployment (GitHub Advisory, Feedly).

Exploitability

There is no public proof-of-concept exploit and no evidence of in-the-wild exploitation at this time (Feedly). The EPSS score is approximately 0.016% (4th percentile), indicating a low near-term exploitation probability (GitHub Advisory). The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. No threat actor attribution has been reported.

Exploitation steps

  1. Obtain a low-privileged account: Register or obtain any valid Weblate user account on a target instance running a version prior to 5.17.
  2. Authenticate and retrieve an API token: Log in and obtain an API authentication token via the Weblate user settings or the /api/auth-token/ endpoint.
  3. Identify target API endpoints: Enumerate the REST API to identify user, group, or comment endpoints (e.g., PATCH /api/users/<id>/, PATCH /api/groups/<id>/).
  4. Craft a privilege-escalating PATCH request: Send a PATCH request to the user or group endpoint with fields that should be restricted to higher-privileged users (e.g., modifying is_superuser, groups, project_selection, or defining_project fields).
  5. Bypass authorization: Because the endpoint did not enforce field-level access controls, the server accepts and applies the unauthorized field modifications.
  6. Achieve elevated access or data manipulation: The attacker can now read sensitive user/group data, modify project configurations, alter group memberships, or delete localization content beyond their intended scope (GitHub PR, GitHub Advisory).

Indicators of compromise

  • Network: Unexpected PATCH or PUT requests to /api/users/<id>/ or /api/groups/<id>/ from low-privileged user accounts, especially modifying sensitive fields such as is_superuser, groups, project_selection, or defining_project.
  • Logs: Weblate API access logs showing low-privileged users successfully modifying fields they should not have access to; HTTP 200 responses to PATCH requests on user or group endpoints from accounts without user.edit permissions.
  • Application: Unexpected changes to group memberships, project scopes, or user privilege levels not initiated by administrators; unauthorized modifications to localization data or project configurations.

Mitigation and workarounds

Upgrade Weblate to version 5.17 or later, which contains the fix implemented in PR #18687 (GitHub Advisory, GitHub PR). As an interim measure, restrict API access at the network level (e.g., firewall rules, reverse proxy authentication) and monitor the user patching API endpoint for suspicious activity. Review and audit existing user permissions and group memberships for unauthorized changes. Limit API token issuance to trusted users and service accounts until the patch can be applied.

Community reactions

The vulnerability was reported independently by two researchers (@tikket1 and @DavidCarliez) via GitHub's responsible disclosure process, and the fix was developed by Weblate maintainer @nijel (GitHub Advisory). The Hacker Wire covered the disclosure with an article on the API scope bypass (The Hacker Wire). The NixOS security tracker also referenced the issue in the context of packaging updates (GitHub PR).

Additional resources


SourceThis report was generated using AI

Related Python vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-61539CRITICAL10
  • Python logoPython
  • xinference
NoYesAug 21, 2026
CVE-2026-49360HIGH7.8
  • Python logoPython
  • recce
NoYesAug 21, 2026
CVE-2026-68508HIGH7.8
  • Python logoPython
  • hydra-core
NoYesAug 21, 2026
CVE-2026-54457HIGH7.7
  • Python logoPython
  • tensorzero
NoYesAug 21, 2026
CVE-2026-43980MEDIUM6.3
  • Python logoPython
  • malla
NoNoAug 21, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management