<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://vulnerability.circl.lu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Thu, 01 Oct 2026 18:54:54 +0000</lastBuildDate>
    <item>
      <title>fkie_cve-2026-32700</title>
      <link>https://vulnerability.circl.lu/vuln/fkie_cve-2026-32700</link>
      <description>&lt;p&gt;Devise is an authentication solution for Rails based on Warden. Prior to version 5.0.3, a race condition in Devise&amp;#39;s Confirmable module allows an attacker to confirm an email address they do not own. This affects any Devise application using the `reconfirmable` option (the default when using Confirmable with email changes). By sending two concurrent email change requests, an attacker can desynchronize the `confirmation_token` and `unconfirmed_email` fields. The confirmation token is sent to an email the attacker controls, but the `unconfirmed_email` in the database points to a victim&amp;#39;s email address. When the attacker uses the token, the victim&amp;#39;s email is confirmed on the attacker&amp;#39;s account. This is patched in Devise v5.0.3. Users should upgrade as soon as possible. As a workaround, applications can override a specific method from Devise models to force `unconfirmed_email` to be persisted when unchanged. Note that Mongoid does not seem to respect that `will_change!` should force the attribute to be persisted, even if it did not really change, so the user might have to implement a workaround similar to Devise by setting `changed_attributes[&amp;#34;unconfirmed_email&amp;#34;] = nil` as well.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;Devise is an authentication solution for Rails based on Warden. Prior to version 5.0.3, a race condition in Devise&amp;#39;s Confirmable module allows an attacker to confirm an email address they do not own. This affects any Devise application using the `reconfirmable` option (the default when using Confirmable with email changes). By sending two concurrent email change requests, an attacker can desynchronize the `confirmation_token` and `unconfirmed_email` fields. The confirmation token is sent to an email the attacker controls, but the `unconfirmed_email` in the database points to a victim&amp;#39;s email address. When the attacker uses the token, the victim&amp;#39;s email is confirmed on the attacker&amp;#39;s account. This is patched in Devise v5.0.3. Users should upgrade as soon as possible. As a workaround, applications can override a specific method from Devise models to force `unconfirmed_email` to be persisted when unchanged. Note that Mongoid does not seem to respect that `will_change!` should force the attribute to be persisted, even if it did not really change, so the user might have to implement a workaround similar to Devise by setting `changed_attributes[&amp;#34;unconfirmed_email&amp;#34;] = nil` as well.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/fkie_cve-2026-32700</guid>
    </item>
    <item>
      <title>GHSA-57hq-95w6-v4fc — Devise has a confirmable "change email" race condition permits user to confirm email they have no access to</title>
      <link>https://vulnerability.circl.lu/vuln/ghsa-57hq-95w6-v4fc</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; RubyGems: devise&lt;/p&gt;
&lt;p&gt;### Impact&lt;/p&gt;
&lt;p&gt;A race condition in Devise&amp;#39;s Confirmable module allows an attacker to confirm an email address they do not own. This affects any Devise application using the `reconfirmable` option (the default when using Confirmable with email changes).&lt;/p&gt;
&lt;p&gt;By sending two concurrent email change requests, an attacker can desynchronize the `confirmation_token` and `unconfirmed_email` fields. The confirmation token is sent to an email the attacker controls, but the `unconfirmed_email` in the database points to a victim&amp;#39;s email address. When the attacker uses the token, the victim&amp;#39;s email is confirmed on the attacker&amp;#39;s account.&lt;/p&gt;
&lt;p&gt;### Patches&lt;/p&gt;
&lt;p&gt;This is patched in Devise **v5.0.3**. Users should upgrade as soon as possible.&lt;/p&gt;
&lt;p&gt;### Workarounds&lt;/p&gt;
&lt;p&gt;Applications can override this specific method from Devise models to force `unconfirmed_email` to be persisted when unchanged: (assuming your model is `User`)&lt;/p&gt;
&lt;p&gt;```ruby
class User &amp;lt; ApplicationRecord
  protected&lt;/p&gt;
&lt;p&gt;def postpone_email_change_until_confirmation_and_regenerate_confirmation_token
    unconfirmed_email_will_change!
    super
  end
end
```&lt;/p&gt;
&lt;p&gt;Note: Mongoid does not seem to respect that `will_change!` should force the attribute to be persisted, even if it did not really change, so you might have to implement a workaround similar to Devise by setting `changed_attributes[&amp;#34;unconfirmed_email&amp;#34;] = nil` as well.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; RubyGems: devise&lt;/p&gt;
&lt;p&gt;### Impact&lt;/p&gt;
&lt;p&gt;A race condition in Devise&amp;#39;s Confirmable module allows an attacker to confirm an email address they do not own. This affects any Devise application using the `reconfirmable` option (the default when using Confirmable with email changes).&lt;/p&gt;
&lt;p&gt;By sending two concurrent email change requests, an attacker can desynchronize the `confirmation_token` and `unconfirmed_email` fields. The confirmation token is sent to an email the attacker controls, but the `unconfirmed_email` in the database points to a victim&amp;#39;s email address. When the attacker uses the token, the victim&amp;#39;s email is confirmed on the attacker&amp;#39;s account.&lt;/p&gt;
&lt;p&gt;### Patches&lt;/p&gt;
&lt;p&gt;This is patched in Devise **v5.0.3**. Users should upgrade as soon as possible.&lt;/p&gt;
&lt;p&gt;### Workarounds&lt;/p&gt;
&lt;p&gt;Applications can override this specific method from Devise models to force `unconfirmed_email` to be persisted when unchanged: (assuming your model is `User`)&lt;/p&gt;
&lt;p&gt;```ruby
class User &amp;lt; ApplicationRecord
  protected&lt;/p&gt;
&lt;p&gt;def postpone_email_change_until_confirmation_and_regenerate_confirmation_token
    unconfirmed_email_will_change!
    super
  end
end
```&lt;/p&gt;
&lt;p&gt;Note: Mongoid does not seem to respect that `will_change!` should force the attribute to be persisted, even if it did not really change, so you might have to implement a workaround similar to Devise by setting `changed_attributes[&amp;#34;unconfirmed_email&amp;#34;] = nil` as well.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/ghsa-57hq-95w6-v4fc</guid>
    </item>
    <item>
      <title>UBUNTU-CVE-2026-32700</title>
      <link>https://vulnerability.circl.lu/vuln/ubuntu-cve-2026-32700</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Ubuntu:16.04:LTS: ruby-devise, Ubuntu:18.04:LTS: ruby-devise, Ubuntu:20.04:LTS: ruby-devise, Ubuntu:22.04:LTS: ruby-devise, Ubuntu:24.04:LTS: ruby-devise&lt;/p&gt;
&lt;p&gt;Devise is an authentication solution for Rails based on Warden. Prior to version 5.0.3, a race condition in Devise&amp;#39;s Confirmable module allows an attacker to confirm an email address they do not own. This affects any Devise application using the `reconfirmable` option (the default when using Confirmable with email changes). By sending two concurrent email change requests, an attacker can desynchronize the `confirmation_token` and `unconfirmed_email` fields. The confirmation token is sent to an email the attacker controls, but the `unconfirmed_email` in the database points to a victim&amp;#39;s email address. When the attacker uses the token, the victim&amp;#39;s email is confirmed on the attacker&amp;#39;s account. This is patched in Devise v5.0.3. Users should upgrade as soon as possible. As a workaround, applications can override a specific method from Devise models to force `unconfirmed_email` to be persisted when unchanged. Note that Mongoid does not seem to respect that `will_change!` should force the attribute to be persisted, even if it did not really change, so the user might have to implement a workaround similar to Devise by setting `changed_attributes[&amp;#34;unconfirmed_email&amp;#34;] = nil` as well.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Ubuntu:16.04:LTS: ruby-devise, Ubuntu:18.04:LTS: ruby-devise, Ubuntu:20.04:LTS: ruby-devise, Ubuntu:22.04:LTS: ruby-devise, Ubuntu:24.04:LTS: ruby-devise&lt;/p&gt;
&lt;p&gt;Devise is an authentication solution for Rails based on Warden. Prior to version 5.0.3, a race condition in Devise&amp;#39;s Confirmable module allows an attacker to confirm an email address they do not own. This affects any Devise application using the `reconfirmable` option (the default when using Confirmable with email changes). By sending two concurrent email change requests, an attacker can desynchronize the `confirmation_token` and `unconfirmed_email` fields. The confirmation token is sent to an email the attacker controls, but the `unconfirmed_email` in the database points to a victim&amp;#39;s email address. When the attacker uses the token, the victim&amp;#39;s email is confirmed on the attacker&amp;#39;s account. This is patched in Devise v5.0.3. Users should upgrade as soon as possible. As a workaround, applications can override a specific method from Devise models to force `unconfirmed_email` to be persisted when unchanged. Note that Mongoid does not seem to respect that `will_change!` should force the attribute to be persisted, even if it did not really change, so the user might have to implement a workaround similar to Devise by setting `changed_attributes[&amp;#34;unconfirmed_email&amp;#34;] = nil` as well.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/ubuntu-cve-2026-32700</guid>
    </item>
  </channel>
</rss>
