Flask-AppBuilder versions before 4.3.0 lack rate limiting which can allow an attacker to brute-force user credentials. Version 4.3.0 includes the ability to enable rate limiting using AUTH_RATE_LIMITED = True
, RATELIMIT_ENABLED = True
, and setting an AUTH_RATE_LIMIT
.
The product does not implement sufficient measures to prevent multiple failed authentication attempts within a short time frame, making it more susceptible to brute force attacks.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Flask-appbuilder | Flask-appbuilder_project | * | 4.3.0 (excluding) |
Flask-appbuilder | Ubuntu | kinetic | * |
Flask-appbuilder | Ubuntu | trusty | * |
Flask-appbuilder | Ubuntu | upstream | * |
Flask-appbuilder | Ubuntu | xenial | * |
Common protection mechanisms include:
Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid.
Consider using libraries with authentication capabilities such as OpenSSL or the ESAPI Authenticator. [REF-45]