CVE-2019-16109
Description
An issue was discovered in Plataformatec Devise before 4.7.1. It confirms accounts upon receiving a request with a blank confirmation_token, if a database record has a blank value in the confirmation_token column. (However, there is no scenario within Devise itself in which such database records would exist.)
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Devise before 4.7.1 confirms accounts when receiving a blank confirmation_token, if the database record has a blank token, enabling unauthorized account confirmation.
Devise is a flexible authentication solution for Rails [1]. The vulnerability in the Confirmable module incorrectly verifies account confirmation: if the stored confirmation_token is blank, a request with a blank confirmation_token parameter will confirm the account without proper validation [2][3].
Attackers can exploit this by sending a request to the confirmation endpoint with an empty confirmation_token. The prerequisite is that a user record has a blank confirmation_token column, which is unlikely under normal Devise operation but could occur via custom code or direct database manipulation [2][3].
Successful exploitation allows an attacker to confirm an account without authorization, potentially gaining access to an account that was not fully confirmed [2].
The issue is patched in Devise 4.7.1. The fix ensures that a blank confirmation_token always returns an error [3]. For applications that already have users with a blank confirmation_token in the database, it is recommended to manually regenerate or nullify those tokens [3][4].
AI Insight generated on May 22, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.
Affected packages
Versions sourced from the GitHub Security Advisory.
| Package | Affected versions | Patched versions |
|---|---|---|
deviseRubyGems | < 4.7.1 | 4.7.1 |
Affected products
2- Plataformatec/Devisedescription
Patches
0No patches discovered yet.
Vulnerability mechanics
AI mechanics synthesis has not run for this CVE yet.
References
6- github.com/advisories/GHSA-fcjw-8rhj-gwwcghsaADVISORY
- nvd.nist.gov/vuln/detail/CVE-2019-16109ghsaADVISORY
- github.com/plataformatec/devise/compare/v4.7.0...v4.7.1ghsax_refsource_MISCWEB
- github.com/plataformatec/devise/issues/5071ghsax_refsource_MISCWEB
- github.com/plataformatec/devise/pull/5132ghsax_refsource_MISCWEB
- github.com/rubysec/ruby-advisory-db/blob/master/gems/devise/CVE-2019-16109.ymlghsaWEB
News mentions
0No linked articles in our index yet.