Skip to content
Fencer Vulns
low 3.7

CVE-2026-40263 json

Note Mark: Username Enumeration via Login Endpoint Timing Side-Channel

published 2026-04-13 6 mo ago modified 2026-10-26 13 d ago also GHSA-w6m9-39cv-2fwp , GO-2026-5696 , EUVD-2026-23334

cvss
3.7
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
0.3%
EPSS 0.3% chance of exploitation in 30 days, percentile 17%
public exploits
0
none known

Summary

Note Mark is an open-source note-taking application. In versions 0.19.1 and prior, the login endpoint performs bcrypt password verification only when the supplied username exists, returning immediately for nonexistent usernames. This timing discrepancy allows unauthenticated attackers to enumerate valid usernames by measuring response times, enabling targeted credential attacks. This issue has been fixed in version 0.19.2.

Patch / fix

  • go github.com/enchant97/note-mark/backend 0.19.2-0.20260411145025-cf4c6f6acf70
  • govulncheck-vulndb openSUSE Leap 16.0 0.0.20260723T184607-160000.1.1

opensuse advisories openSUSE-SU-2026:21483-1

CISA SSVC

Exploitation
Proof of concept is public
Automatable
no
Technical impact
partial
Assessed
6 mo ago

Exploit prediction

0.26% chance of exploitation in the next 30 days, higher than 17% of all scored CVEs (FIRST EPSS, 2026-11-08).

Exploits and checks

  • github.com https://github.com/enchant97/note-mark/security/advisories/GHSA-w6m9-39cv-2fwp referenced PoC, tagged "exploit" by a source, unverified

CVSS scores

assigned by version score vector
CNA 3.1 3.7 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N
GitHub 3.1 3.7 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N

Affected packages

ecosystem package affected fixed in
go github.com/enchant97/note-mark/backend
<0.19.2-0.20260411145025-cf4c6f6acf70
all versions
0.19.2-0.20260411145025-cf4c6f6acf70

Affected products

  • enchant97 note-mark

Classification

Weakness
  • CWE-208 Observable Timing Discrepancy

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.