CVE-2025-61780 (Medium) detected in rack-3.1.16.gem
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 65/100
Research direction
Start with Gemfile.lock and the cached gem at vendor/cache/rack-3.1.16.gem, then review the dependency hierarchy and the fixed Rack versions listed in the issue. Done means the project no longer resolves Rack 3.1.16 and uses a listed fixed version; verify the lockfile and cached dependency are consistent.
Written by the indexing model from the issue text.
Description
CVE-2025-61780 - Medium Severity Vulnerability
Vulnerable Library - rack-3.1.16.gem
Rack provides a minimal, modular and adaptable interface for developing web applications in Ruby. By wrapping HTTP requests and responses in the simplest way possible, it unifies and distills the API for web servers, web frameworks, and software in between (the so-called middleware) into a single method call.
Library home page: https://rubygems.org/gems/rack-3.1.16.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-3.1.16.gem
Dependency Hierarchy:
- manageiq-style-1.3.3.gem (Root Library)
- rubocop-rails-2.32.0.gem
- ❌ rack-3.1.16.gem (Vulnerable Library)
- rubocop-rails-2.32.0.gem
Found in base branch: master
Vulnerability Details
Rack is a modular Ruby web server interface. Prior to versions 2.2.20, 3.1.18, and 3.2.3, a possible information disclosure vulnerability existed in "Rack::Sendfile" when running behind a proxy that supports "x-sendfile" headers (such as Nginx). Specially crafted headers could cause "Rack::Sendfile" to miscommunicate with the proxy and trigger unintended internal requests, potentially bypassing proxy-level access restrictions. When "Rack::Sendfile" received untrusted "x-sendfile-type" or "x-accel-mapping" headers from a client, it would interpret them as proxy configuration directives. This could cause the middleware to send a "redirect" response to the proxy, prompting it to reissue a new internal request that was not subject to the proxy's access controls. An attacker could exploit this by setting a crafted "x-sendfile-type: x-accel-redirect" header, setting a crafted "x-accel-mapping" header, and requesting a path that qualifies for proxy-based acceleration. Attackers could bypass proxy-enforced restrictions and access internal endpoints intended to be protected (such as administrative pages). The vulnerability did not allow arbitrary file reads but could expose sensitive application routes. This issue only affected systems meeting all of the following conditions: The application used "Rack::Sendfile" with a proxy that supports "x-accel-redirect" (e.g., Nginx); the proxy did not always set or remove the "x-sendfile-type" and "x-accel-mapping" headers; and the application exposed an endpoint that returned a body responding to ".to_path". Users should upgrade to Rack versions 2.2.20, 3.1.18, or 3.2.3, which require explicit configuration to enable "x-accel-redirect". Alternatively, configure the proxy to always set or strip the header, or in Rails applications, disable sendfile completely.
Mend Note: The description of this vulnerability differs from MITRE.
Publish Date: 2025-10-10
URL: CVE-2025-61780
CVSS 3 Score Details (5.8)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Changed
- Impact Metrics:
- Confidentiality Impact: Low
- Integrity Impact: None
- Availability Impact: None
Suggested Fix
Type: Upgrade version
Origin: https://github.com/advisories/GHSA-r657-rxjc-j557
Release Date: 2025-10-10
Fix Resolution: rack - 3.1.18,rack - 3.2.3,rack - 2.2.20
Step up your Open Source Security Game with Mend here
- Dominant language
- Ruby
- Stars
- 30
- Forks
- 27
- PR merge metrics
- No merged PRs in 30d
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from ManageIQ/linux_admin
-
Mend: dependency security vulnerability
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
ManageIQ/linux_admin#291 ·
-
Mend: dependency security vulnerability
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
ManageIQ/linux_admin#290 ·
-
Mend: dependency security vulnerability
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
ManageIQ/linux_admin#289 ·
-
Mend: dependency security vulnerability
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
ManageIQ/linux_admin#288 ·
-
Mend: dependency security vulnerability
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
ManageIQ/linux_admin#286 ·
All issues in ManageIQ/linux_admin
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
yegor256/rubocop-elegant#92 ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
ecosyste-ms/awesome#812 ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
forem/forem#23933 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
rails/mission_control-jobs#347 ·