> CVE-2026-35597 [MEDIUM]

« BACK_TO_HOME
PUBLISHED
2026-04-10 17:17
MODIFIED
2026-04-10 17:17
CVSS_SCORE V3
5.9
EPSS (Prob. Exploit)
0.31%
Top 76.2%
DATA SOURCES:
NVD 🔗 2026-04-10 CWE MITRE 🔗 2026-11-01 FIRST EPSS 🔗 2026-11-08 OSV 🔗 2026-11-02

> DESCRIPTION

Vikunja is an open-source self-hosted task management platform. Prior to 2.3.0, the TOTP failed-attempt lockout mechanism is non-functional due to a database transaction handling bug. When a TOTP validation fails, the login handler in pkg/routes/api/v1/login.go calls HandleFailedTOTPAuth and then unconditionally rolls back. HandleFailedTOTPAuth in pkg/user/totp.go uses an in-memory counter (key-value store) to track failed attempts. When the counter reaches 10, it calls user.SetStatus(s, StatusAccountLocked) on the same database session s. Because the login handler always rolls back after a TOTP failure, the StatusAccountLocked write is undone. The in-memory counter correctly increments past 10, so the lockout code executes on every subsequent attempt, but the database write is rolled back every time. This allows unlimited brute-force attempts against TOTP codes. This vulnerability is fixed in 2.3.0.

> AFFECTED_PRODUCTS

ℹ️ Aucun produit affecté n'a encore été publié par NVD pour cette CVE.

> CVSS V3 METRICS

CVSS_VECTOR
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
EXPLOITABILITY
2.2
IMPACT
3.6

> MÉTRIQUES CVSS DÉTAILLÉES

CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
Métrique Valeur Interprétation
AV (Vecteur d'Attaque)
Attack Vector
Network (N)
Exploit possible à distance via réseau (HTTP, API, etc.)
AC (Complexité d'Attaque)
Attack Complexity
High (H)
Conditions spécifiques doivent être réunies pour exploiter
PR (Privilèges Requis)
Privileges Required
None (N)
Aucune authentification requise
UI (Interaction Utilisateur)
User Interaction
None (N)
Aucune interaction utilisateur nécessaire
S (Périmètre)
Scope
Unchanged (U)
Impact reste dans le périmètre du composant compromis
C (Impact Confidentialité)
Confidentiality Impact
High (H)
Divulgation totale d'informations
I (Impact Intégrité)
Integrity Impact
None (N)
Aucune modification de données possible
A (Impact Disponibilité)
Availability Impact
None (N)
Aucune interruption de service

> RÉSUMÉ DES IMPACTS

Confidentialité
High
Divulgation totale d'informations
Intégrité
None
Aucune modification de données possible
Disponibilité
None
Aucune interruption de service

> WEAKNESSES

CWE-307

> CWE DETAILED DESCRIPTIONS

CWE-307: Improper Restriction of Excessive Authentication Attempts - The product does not implement sufficient measures to prevent multiple failed authentication attempts within a short time frame.

> OSV (GOOGLE OPEN SOURCE VULNERABILITIES)

Vikunja Affected by TOTP Brute-Force Due to Non-Functional Account Lockout

AFFECTED PACKAGES:
Unknown / Unknown
43 versions affected
ALIASES:
GHSA-fgfv-pv97-6cmj, GO-2026-5362

> HISTORIQUE DES MODIFICATIONS

Première apparition
10/04/2026 17:17
Source: NVD
📊 ENRICHISSEMENT 01/05/2026 06:01
CWE
Champ modifié: Description CWE
Ancienne valeur:
N/A
Nouvelle valeur:
CWE-307: Improper Restriction of Excessive Authentication Attempts - The product does not implement sufficient measures to prevent multiple failed authentication attempts within a short time frame.
Total des modifications: 1 Dernière mise à jour: 6 months ago

> REFERENCES

https://github.com/go-vikunja/vikunja/commit/6ca0151d02fa0e8c7e2181ab916a28e08ca...
https://github.com/go-vikunja/vikunja/pull/2576
https://github.com/go-vikunja/vikunja/releases/tag/v2.3.0
https://github.com/go-vikunja/vikunja/security/advisories/GHSA-fgfv-pv97-6cmj
« BACK_TO_HOME