LiveActive security incident?Get immediate response
CVE Record

CVE-2021-29621: Observable Response Discrepancy in Flask-AppBuilder

Flask-AppBuilder is a development framework, built on top of Flask. User enumeration in database authentication in Flask-AppBuilder <= 3.2.3. Allows for a non authenticated user to enumerate existing accounts by timing the response time from the server when you are logging in. Upgrade to version 3.3.0 or higher to resolve.

MediumCVSS 5.3Not KEV-listedUpdated
Glexia's TakeAutomated analysismoderate

Security readout for executives and security teams

Plain-English summary

Flask-AppBuilder versions before 3.3.0 can leak whether a username exists during database login because responses take measurably different time. This is not account takeover by itself, but it can help attackers build valid user lists for phishing, password guessing, or follow-on attacks.

Executive priority

Treat this as a moderate-priority hygiene fix. It is unlikely to be an emergency alone, but exposed authentication portals should be upgraded promptly because user enumeration improves attackers’ odds in credential-based campaigns.

Technical view

CVE-2021-29621 is a CWE-203 observable response discrepancy in Flask-AppBuilder database authentication. An unauthenticated remote user may infer existing accounts through login response timing. The affected range is Flask-AppBuilder below 3.3.0, with CVSS 3.1 score 5.3 for low-confidentiality impact only.

Likely exposure

Exposure is most likely where applications use Flask-AppBuilder before 3.3.0 with database authentication and a reachable login page. Dependency inventory is needed because Flask-AppBuilder may be used directly or as an application dependency.

Exploitation context

The bundle does not show CISA KEV listing or active exploitation evidence. The issue is remotely reachable and low complexity, but the documented impact is user enumeration, not direct privilege escalation, data modification, or service disruption.

Researcher notes

The core evidence identifies a timing-based user enumeration flaw fixed by upgrading to 3.3.0 or later. The public bundle does not establish exploit activity, proof-of-concept details, or broader product impact beyond Flask-AppBuilder and referenced downstream discussion.

Mitigation direction

  • Upgrade Flask-AppBuilder to version 3.3.0 or higher.
  • Confirm application dependency constraints allow the patched version.
  • Reduce public exposure of administrative login pages where operationally feasible.
  • Review vendor and downstream project guidance before applying compensating controls.
  • Prioritize systems where valid usernames increase phishing or credential attack risk.

Validation and detection

  • Check package manifests and lockfiles for Flask-AppBuilder below 3.3.0.
  • Identify deployments using Flask-AppBuilder database authentication.
  • Confirm internet or untrusted-network reachability of affected login routes.
  • Review authentication logs for unusual username probing patterns.
  • After upgrade, verify the deployed package version is 3.3.0 or higher.
Prepared
Confidence
high
Sources
6

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cwe · medium confidence lookup

CWE-203: Information exposure and cloud metadata lookup

Information exposure and SSRF weaknesses can make discovery, cloud metadata, and credential material review relevant. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
description · low confidence lookup

Database behavior lookup

The CVE wording references database injection or access, so collection and exfiltration review may help. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2021-29621 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Medium
CVSS
5.3 (3.1)
Known Exploited
No
Published

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

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
0Timeline events
0ADP providers
7Source links

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
5.3CVSS 3.1MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N3.91.4Primary CVE score

Vulnerability scoring details

Base CVSS 3.1 score

5.3Medium
CVSS 3.1 vector shape for CVE-2021-29621Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

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

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
dpgasparFlask-AppBuilder< 3.3.0Listed
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-203 · source CWE mapping

Observable Discrepancy

Observable Discrepancy represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.