Skip to content

GHSA-6j8j-4qp3-36p2 CVE-2026-41519 PYSEC-2026-2316

Weblate Doesn't Invalidate API Token on Password Change

Medium PyPI
Severity
4.2 / 10
Medium · CVSS 3.1
Exploit chance (EPSS)
0.27%
Chance of exploitation in the next 30 days. Higher than 19.27% of scored vulnerabilities.
Known exploited
No
Not in CISA's catalog
Weakness
CWE-613 Insufficient Session Expiration
Fix
5.17.1
Upgrade weblate to this version or later

Description

Impact

When a user changes their password, browser sessions are correctly invalidated via cycle_session_keys(), but DRF API tokens (wlu_* prefix) stored in authtoken_token are not revoked.

Patches

Resources

Weblate thanks Sang Yu Jeon for reporting this via GitHub.

Affected versions

PyPI

PackageVulnerableFixed in
weblate
< 5.17.1
5.17.1

How to fix

Move to the fixed version or later with your package manager, update the lockfile, and run your tests. If the package only arrives through another dependency, upgrade that dependency first. If none of its releases pulls a fixed version yet, force the version with your package manager's override.

weblate PyPI → 5.17.1

pip
pip install --upgrade "weblate>=5.17.1"
poetry
poetry add "weblate>=5.17.1"
uv
uv add "weblate>=5.17.1"

Severity breakdown

CVSS 3.1 4.2

CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N

Attack vector
Network
Attack complexity
High
Privileges required
Low
User interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
None

Weakness

CWE-613: Insufficient Session Expiration

According to WASC, "Insufficient Session Expiration is when a web site permits an attacker to reuse old session credentials or session IDs for authorization."

How to prevent it
  • Implementation: Set sessions/credentials expiration date.

References

Timeline

  1. Published
  2. Last updated by the source
  3. Latest EPSS score
AdvisorySeverityWhy it's related
GHSA-2q2q-jr9g-v9rf
Weblate has IDOR in GroupViewSet that allows authenticated project manager to gain unauthorized read access to any private project
High Also affects weblate
GHSA-2p9g-x3cv-5hh4
Private Weblate projects vulnerable to observable object existence disclosure via globally scoped object lookups
Medium Also affects weblate
GHSA-vmfc-9982-2m45
Weblate SSRF: outbound URL guard misses some private ranges
Medium Also affects weblate
GHSA-6wxc-8mgq-w26m
Weblate: Stored HTML injection in editor search preview
Medium Also affects weblate
GHSA-5cmv-3rc4-7279
Weblate vulnerable to XSS via crafted Markdown
Medium Also affects weblate
GHSA-gcg5-86jr-f7jg
Weblate Vulnerable to Private Translation Enumeration via Screenshot API
Medium Also affects weblate
GHSA-cwcx-382v-8m9g
Weblate Vulnerable to Authenticated SSRF via Project Backup Import bypassing validate_repo_url
High Also affects weblate
GHSA-ffgh-3jrf-8wvh
Weblate: Prefix-Based Repository Boundary Check Bypass via Symlink/Junction Path Prefix Collision
Medium Also affects weblate
Is this in your code?

MergeHarbor checks every repository's dependencies against this database, ranks what matters by exploitability and reachability, routes it to the owning team and opens the fix pull request.

Check your repos with MergeHarbor