CVE-2026-34831 (Medium) detected in rack-3.1.16.gem
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 58/100
Research direction
Start with /Gemfile.lock and the vendored dependency at /vendor/cache/rack-3.1.16.gem, then inspect the dependency hierarchy showing rack is pulled through rubocop-rails. Update the resolved Rack version to one of the listed fixed releases and verify that the lockfile and vendored package no longer contain 3.1.16.
Written by the indexing model from the issue text.
Description
CVE-2026-34831 - 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.23, 3.1.21, and 3.2.6, Rack::Files#fail sets the Content-Length response header using String#size instead of String#bytesize. When the response body contains multibyte UTF-8 characters, the declared Content-Length is smaller than the number of bytes actually sent on the wire. Because Rack::Files reflects the requested path in 404 responses, an attacker can trigger this mismatch by requesting a non-existent path containing percent-encoded UTF-8 characters. This results in incorrect HTTP response framing and may cause response desynchronization in deployments that rely on the incorrect Content-Length value. This issue has been patched in versions 2.2.23, 3.1.21, and 3.2.6.
Publish Date: 2026-04-02
URL: CVE-2026-34831
CVSS 3 Score Details (4.8)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: High
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: Low
- Integrity Impact: Low
- Availability Impact: None
Suggested Fix
Type: Upgrade version
Origin: https://github.com/advisories/GHSA-q2ww-5357-x388
Release Date: 2026-04-02
Fix Resolution: rack - 3.1.21,rack - 3.2.6,rack - 2.2.23
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 86/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
simp/pupmod-simp-stunnel#173 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
TheOdinProject/curriculum#31444 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100