/

CVE-2026-110770

Severity:

HIGH RISK

(8.1)

Brute-Force (CWE-307) in Databasus Password Reset Flow

CVE-2026-110770

Deferred

Vulnerability type

Category:

Improper Restriction of Excessive Authentication Attempts

CWE:

CWE-307

Impact:

Account Takeover and Privilege Escalation

Severity:

HIGH RISK

(8.1)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

Databasus contains an authentication weakness in its password-reset process that allows unauthenticated attackers to repeatedly guess six-digit reset codes for known email addresses. Successful guessing may enable account takeover, including takeover of administrator accounts, and the issue is rated HIGH with a CVSS base score of 8.1.

Databasus contains an authentication weakness in its password-reset process that allows unauthenticated attackers to repeatedly guess six-digit reset codes for known email addresses. Successful guessing may enable account takeover, including takeover of administrator accounts, and the issue is rated HIGH with a CVSS base score of 8.1.

Affected context

The vulnerability may affect Databasus deployments using versions 3.7.0 through 3.61.0 when the password-reset workflow accepts repeated code guesses without effective rate limiting, lockout, expiration, or invalidation controls. The risk is greatest when attacker-controlled requests can target accounts whose email addresses are known and when administrative accounts use the same reset mechanism.

The vulnerability may affect Databasus deployments using versions 3.7.0 through 3.61.0 when the password-reset workflow accepts repeated code guesses without effective rate limiting, lockout, expiration, or invalidation controls. The risk is greatest when attacker-controlled requests can target accounts whose email addresses are known and when administrative accounts use the same reset mechanism.

Exploit preconditions

  • Attack surface: The password-reset API workflow.
  • Required access: No authenticated access is required; the attacker generally needs a valid or discoverable account email address.
  • Trigger point: Submission and verification of a password-reset code.
  • Why exploitation is possible: The reset code has a small numeric search space, while repeated verification attempts are not sufficiently restricted by rate limits, lockouts, or code invalidation.
  • Attack surface: The password-reset API workflow.
  • Required access: No authenticated access is required; the attacker generally needs a valid or discoverable account email address.
  • Trigger point: Submission and verification of a password-reset code.
  • Why exploitation is possible: The reset code has a small numeric search space, while repeated verification attempts are not sufficiently restricted by rate limits, lockouts, or code invalidation.

Why this happens

The underlying issue is improper restriction of excessive authentication attempts, mapped to CWE-307. The password-reset process relies on a short-lived-looking numeric secret without adequately enforcing attempt limits, progressive delays, account protection, or single-use semantics. As a result, the code-verification operation can be treated as an effectively unlimited guessing interface rather than a tightly controlled authentication step.

The underlying issue is improper restriction of excessive authentication attempts, mapped to CWE-307. The password-reset process relies on a short-lived-looking numeric secret without adequately enforcing attempt limits, progressive delays, account protection, or single-use semantics. As a result, the code-verification operation can be treated as an effectively unlimited guessing interface rather than a tightly controlled authentication step.

Potential impact

  • Attackers may reset passwords for targeted user accounts.
  • Compromised accounts could allow unauthorized access to Databasus data and functionality.
  • Administrative account takeover could enable privileged configuration changes.
  • Attackers could alter, delete, or expose protected resources.
  • A compromised account may be used to support further intrusion or lateral movement.
  • Attackers may reset passwords for targeted user accounts.
  • Compromised accounts could allow unauthorized access to Databasus data and functionality.
  • Administrative account takeover could enable privileged configuration changes.
  • Attackers could alter, delete, or expose protected resources.
  • A compromised account may be used to support further intrusion or lateral movement.

General mitigation guidance

Mitigation generally focuses on making password-reset verification

resistant to guessing and reducing the trust placed in user-supplied

identifiers.

Common defensive patterns include:

  • Applying per-account, per-identity, per-source, and global rate limits.
  • Using progressive delays, temporary lockouts, and abuse monitoring after repeated failures.
  • Making reset codes short-lived, single-use, and invalid immediately after successful verification or replacement.
  • Using sufficiently unpredictable reset tokens rather than relying solely on small numeric code spaces.
  • Requiring additional verification for sensitive or administrative accounts.
  • Avoiding account-enumeration signals in reset responses.
  • Running administrative functions with least privilege and requiring stronger authentication where practical.

Mitigation generally focuses on making password-reset verification

resistant to guessing and reducing the trust placed in user-supplied

identifiers.

Common defensive patterns include:

  • Applying per-account, per-identity, per-source, and global rate limits.
  • Using progressive delays, temporary lockouts, and abuse monitoring after repeated failures.
  • Making reset codes short-lived, single-use, and invalid immediately after successful verification or replacement.
  • Using sufficiently unpredictable reset tokens rather than relying solely on small numeric code spaces.
  • Requiring additional verification for sensitive or administrative accounts.
  • Avoiding account-enumeration signals in reset responses.
  • Running administrative functions with least privilege and requiring stronger authentication where practical.

How teams detect issues like this

Organizations can identify this class of weakness through:

  • Static analysis and code review checks for reset-code verification without attempt counters, expiration, or invalidation.
  • Review of authentication middleware and API handlers for missing per-account and per-source throttling.
  • Tests that verify repeated invalid-code submissions are delayed, blocked, and logged.
  • Runtime monitoring for bursts of password-reset requests, repeated verification failures, and distributed guessing patterns.
  • Policy enforcement requiring single-use reset tokens, bounded validity periods, and stronger controls for privileged accounts.
  • Neutral automated security review tools may help flag unrestricted authentication-attempt patterns during development.

Organizations can identify this class of weakness through:

  • Static analysis and code review checks for reset-code verification without attempt counters, expiration, or invalidation.
  • Review of authentication middleware and API handlers for missing per-account and per-source throttling.
  • Tests that verify repeated invalid-code submissions are delayed, blocked, and logged.
  • Runtime monitoring for bursts of password-reset requests, repeated verification failures, and distributed guessing patterns.
  • Policy enforcement requiring single-use reset tokens, bounded validity periods, and stronger controls for privileged accounts.
  • Neutral automated security review tools may help flag unrestricted authentication-attempt patterns during development.

Sources

SourceLink
github.comgithub.com/databasus/databasus
github.comgithub.com/databasus/databasus/blob/9ee25ed8f47b1b537468417e1bb52ed2d76218a0/backend/internal/features/users/services/user_services.go#L637
hackmd.iohackmd.io/@hieuPenguinnn/databasus-password-reset-code-brute-force
vulncheck.comvulncheck.com/advisories/databasus-3.7.0-through-3.61.0-account-takeover-via-password-reset-brute-force

Frequently asked

questions

Yes. The reset workflow is exposed through an API, and exploitation may be

possible without an authenticated session when an attacker can identify a

target email address.

Not necessarily. The weakness concerns guessing the reset code through the

verification process. However, the broader password-reset design and any

additional controls determine whether a guessed code alone is sufficient to

complete account takeover.

Use unpredictable, short-lived, single-use reset tokens and enforce strict

per-account and per-source attempt limits with lockout or progressive delay

behavior.

Treat password recovery as an authentication flow, test it against automated

guessing, monitor abnormal verification failures, avoid account

enumeration, and apply stronger recovery controls to privileged accounts.

Yes. The reset workflow is exposed through an API, and exploitation may be

possible without an authenticated session when an attacker can identify a

target email address.

Not necessarily. The weakness concerns guessing the reset code through the

verification process. However, the broader password-reset design and any

additional controls determine whether a guessed code alone is sufficient to

complete account takeover.

Use unpredictable, short-lived, single-use reset tokens and enforce strict

per-account and per-source attempt limits with lockout or progressive delay

behavior.

Treat password recovery as an authentication flow, test it against automated

guessing, monitor abnormal verification failures, avoid account

enumeration, and apply stronger recovery controls to privileged accounts.

Find out what's already
exploitable in your codebase.