CVE-2025-32441

Rack session gets restored after deletion

Published May 7, 2025 CVSS 3.1 · 4.2 Medium EPSS < 1% KEV · Not listed
Description
Rack is a modular Ruby web server interface. Prior to version 2.2.14, when using the `Rack::Session::Pool` middleware, simultaneous rack requests can restore a deleted rack session, which allows the unauthenticated user to occupy that session. Rack session middleware prepares the session at the beginning of request, then saves is back to the store with possible changes applied by host rack application. This way the session becomes to be a subject of race conditions in general sense over concurrent rack requests. When using the `Rack::Session::Pool` middleware, and provided the attacker can acquire a session cookie (already a major issue), the session may be restored if the attacker can trigger a long running request (within that same session) adjacent to the user logging out, in order to retain illicit access even after a user has attempted to logout. Version 2.2.14 contains a patch for the issue. Some other mitigations are available. Either ensure the application invalidates sessions atomically by marking them as logged out e.g., using a `logged_out` flag, instead of deleting them, and check this flag on every request to prevent reuse; or implement a custom session store that tracks session invalidation timestamps and refuses to accept session data if the session was invalidated after the request began.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Debian DLA Debian DLA DLA-4357-1 ruby-rack security update
EUVD EUVD EUVD-2025-13949 Rack session gets restored after deletion
Github GHSA Github GHSA GHSA-vpfw-47h7-xj4g Rack session gets restored after deletion
Ubuntu USN Ubuntu USN USN-7507-1 Rack vulnerabilities
History
Type Values Removed Values Added
Metrics epss

{'score': 0.00035}

epss

{'score': 0.00038}

Type Values Removed Values Added
First Time appeared Rack
Rack rack
CPEs cpe:2.3:a:rack:rack:*:*:*:*:*:ruby:*:*
Vendors & Products Rack
Rack rack
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description Rack is a modular Ruby web server interface. Prior to version 2.2.14, when using the `Rack::Session::Pool` middleware, simultaneous rack requests can restore a deleted rack session, which allows the unauthenticated user to occupy that session. Rack session middleware prepares the session at the beginning of request, then saves is back to the store with possible changes applied by host rack application. This way the session becomes to be a subject of race conditions in general sense over concurrent rack requests. When using the `Rack::Session::Pool` middleware, and provided the attacker can acquire a session cookie (already a major issue), the session may be restored if the attacker can trigger a long running request (within that same session) adjacent to the user logging out, in order to retain illicit access even after a user has attempted to logout. Version 2.2.14 contains a patch for the issue. Some other mitigations are available. Either ensure the application invalidates sessions atomically by marking them as logged out e.g., using a `logged_out` flag, instead of deleting them, and check this flag on every request to prevent reuse; or implement a custom session store that tracks session invalidation timestamps and refuses to accept session data if the session was invalidated after the request began.
Title Rack session gets restored after deletion
Weaknesses CWE-362
CWE-367
CWE-613
References
Metrics cvssV3_1

{'score': 4.2, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
May 8, 2025, 2:02 PM
Reserved
Apr 8, 2025, 10:54 AM
Status
Analyzed
Published
May 7, 2025, 11:15 PM
Modified
Jun 17, 2026, 9:11 AM
Severity
Moderate
Public date
May 7, 2025, 11:01 PM