Vulnerable Library - sinatra-contrib-2.1.0.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Vulnerabilities
| Vulnerability |
Severity |
CVSS |
Exploit Maturity |
EPSS |
Dependency |
Type |
Fixed in (sinatra-contrib version) |
Remediation Possible** |
Reachability |
| CVE-2026-34829 |
High |
7.5 |
Not Defined |
|
rack-2.2.21.gem |
Transitive |
N/A* |
❌ |
|
| CVE-2026-34785 |
High |
7.5 |
Not Defined |
|
rack-2.2.21.gem |
Transitive |
N/A* |
❌ |
|
| CVE-2026-22860 |
High |
7.5 |
Not Defined |
0.1% |
rack-2.2.21.gem |
Transitive |
N/A* |
❌ |
|
| CVE-2026-34830 |
Medium |
5.9 |
Not Defined |
|
rack-2.2.21.gem |
Transitive |
N/A* |
❌ |
|
| CVE-2026-25500 |
Medium |
5.4 |
Not Defined |
0.0% |
rack-2.2.21.gem |
Transitive |
N/A* |
❌ |
|
| CVE-2026-34826 |
Medium |
5.3 |
Not Defined |
|
rack-2.2.21.gem |
Transitive |
N/A* |
❌ |
|
| CVE-2026-34786 |
Medium |
5.3 |
Not Defined |
|
rack-2.2.21.gem |
Transitive |
N/A* |
❌ |
|
| CVE-2026-34763 |
Medium |
5.3 |
Not Defined |
|
rack-2.2.21.gem |
Transitive |
N/A* |
❌ |
|
| CVE-2026-34230 |
Medium |
5.3 |
Not Defined |
|
rack-2.2.21.gem |
Transitive |
N/A* |
❌ |
|
| CVE-2026-34831 |
Medium |
4.8 |
Not Defined |
|
rack-2.2.21.gem |
Transitive |
N/A* |
❌ |
|
| CVE-2026-26961 |
Low |
3.7 |
Not Defined |
|
rack-2.2.21.gem |
Transitive |
N/A* |
❌ |
|
*For some transitive vulnerabilities, there is no version of direct dependency with a fix. Check the "Details" section below to see if there is a version of transitive dependency where vulnerability is fixed.
**In some cases, Remediation PR cannot be created automatically for a vulnerability despite the availability of remediation
Details
CVE-2026-34829
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
- sinatra-contrib-2.1.0.gem (Root Library)
- rack-protection-2.1.0.gem
- ❌ rack-2.2.21.gem (Vulnerable Library)
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::Multipart::Parser only wraps the request body in a BoundedIO when CONTENT_LENGTH is present. When a multipart/form-data request is sent without a Content-Length header, such as with HTTP chunked transfer encoding, multipart parsing continues until end-of-stream with no total size limit. For file parts, the uploaded body is written directly to a temporary file on disk rather than being constrained by the buffered in-memory upload limit. An unauthenticated attacker can therefore stream an arbitrarily large multipart file upload and consume unbounded disk space. This results in a denial of service condition for Rack applications that accept multipart form data. 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-34829
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (7.5)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: None
- Availability Impact: High
For more information on CVSS3 Scores, click here.
Suggested Fix
Type: Upgrade version
Origin: GHSA-8vqr-qjwx-82mw
Release Date: 2026-04-02
Fix Resolution: rack - 3.1.21,rack - 3.2.6,rack - 2.2.23
CVE-2026-34785
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
- sinatra-contrib-2.1.0.gem (Root Library)
- rack-protection-2.1.0.gem
- ❌ rack-2.2.21.gem (Vulnerable Library)
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::Static determines whether a request should be served as a static file using a simple string prefix check. When configured with URL prefixes such as "/css", it matches any request path that begins with that string, including unrelated paths such as "/css-config.env" or "/css-backup.sql". As a result, files under the static root whose names merely share the configured prefix may be served unintentionally, leading to information disclosure. 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-34785
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (7.5)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: High
- Integrity Impact: None
- Availability Impact: None
For more information on CVSS3 Scores, click here.
Suggested Fix
Type: Upgrade version
Origin: GHSA-h2jq-g4cq-5ppq
Release Date: 2026-04-02
Fix Resolution: rack - 3.1.21,rack - 2.2.23,rack - 3.2.6
CVE-2026-22860
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
- sinatra-contrib-2.1.0.gem (Root Library)
- rack-protection-2.1.0.gem
- ❌ rack-2.2.21.gem (Vulnerable Library)
Found in base branch: master
Vulnerability Details
Rack is a modular Ruby web server interface. Prior to versions 2.2.22, 3.1.20, and 3.2.5, "Rack::Directory"’s path check used a string prefix match on the expanded path. A request like "/../root_example/" can escape the configured root if the target path starts with the root string, allowing directory listing outside the intended root. Versions 2.2.22, 3.1.20, and 3.2.5 fix the issue.
Publish Date: 2026-02-18
URL: CVE-2026-22860
Threat Assessment
Exploit Maturity: Not Defined
EPSS: 0.1%
CVSS 3 Score Details (7.5)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: High
- Integrity Impact: None
- Availability Impact: None
For more information on CVSS3 Scores, click here.
Suggested Fix
Type: Upgrade version
Release Date: 2026-02-17
Fix Resolution: https://github.com/rack/rack.git - v3.2.5,https://github.com/rack/rack.git - v3.1.20,https://github.com/rack/rack.git - v2.2.22
CVE-2026-34830
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
- sinatra-contrib-2.1.0.gem (Root Library)
- rack-protection-2.1.0.gem
- ❌ rack-2.2.21.gem (Vulnerable Library)
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::Sendfile#map_accel_path interpolates the value of the X-Accel-Mapping request header directly into a regular expression when rewriting file paths for X-Accel-Redirect. Because the header value is not escaped, an attacker who can supply X-Accel-Mapping to the backend can inject regex metacharacters and control the generated X-Accel-Redirect response header. In deployments using Rack::Sendfile with x-accel-redirect, this can allow an attacker to cause nginx to serve unintended files from configured internal locations. 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-34830
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (5.9)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: High
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: High
- Integrity Impact: None
- Availability Impact: None
For more information on CVSS3 Scores, click here.
Suggested Fix
Type: Upgrade version
Origin: GHSA-qv7j-4883-hwh7
Release Date: 2026-04-02
Fix Resolution: rack - 3.2.6,rack - 2.2.23,rack - 3.1.21
CVE-2026-25500
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
- sinatra-contrib-2.1.0.gem (Root Library)
- rack-protection-2.1.0.gem
- ❌ rack-2.2.21.gem (Vulnerable Library)
Found in base branch: master
Vulnerability Details
Rack is a modular Ruby web server interface. Prior to versions 2.2.22, 3.1.20, and 3.2.5, "Rack::Directory" generates an HTML directory index where each file entry is rendered as a clickable link. If a file exists on disk whose basename starts with the "javascript:" scheme (e.g. "javascript:alert(1)"), the generated index contains an anchor whose "href" is exactly "javascript:alert(1)". Clicking the entry executes JavaScript in the browser (demonstrated with "alert(1)"). Versions 2.2.22, 3.1.20, and 3.2.5 fix the issue.
Publish Date: 2026-02-18
URL: CVE-2026-25500
Threat Assessment
Exploit Maturity: Not Defined
EPSS: 0.0%
CVSS 3 Score Details (5.4)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: Low
- User Interaction: Required
- Scope: Changed
- Impact Metrics:
- Confidentiality Impact: Low
- Integrity Impact: Low
- Availability Impact: None
For more information on CVSS3 Scores, click here.
Suggested Fix
Type: Upgrade version
Release Date: 2026-02-17
Fix Resolution: https://github.com/rack/rack.git - v2.2.22,https://github.com/rack/rack.git - v3.2.5,https://github.com/rack/rack.git - v3.1.20
CVE-2026-34826
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
- sinatra-contrib-2.1.0.gem (Root Library)
- rack-protection-2.1.0.gem
- ❌ rack-2.2.21.gem (Vulnerable Library)
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::Utils.get_byte_ranges parses the HTTP Range header without limiting the number of individual byte ranges. Although the existing fix for CVE-2024-26141 rejects ranges whose total byte coverage exceeds the file size, it does not restrict the count of ranges. An attacker can supply many small overlapping ranges such as 0-0,0-0,0-0,... to trigger disproportionate CPU, memory, I/O, and bandwidth consumption per request. This results in a denial of service condition in Rack file-serving paths that process multipart byte range responses. 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-34826
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (5.3)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: None
- Availability Impact: Low
For more information on CVSS3 Scores, click here.
Suggested Fix
Type: Upgrade version
Origin: GHSA-x8cg-fq8g-mxfx
Release Date: 2026-04-02
Fix Resolution: rack - 3.2.6,rack - 2.2.23,rack - 3.1.21
CVE-2026-34786
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
- sinatra-contrib-2.1.0.gem (Root Library)
- rack-protection-2.1.0.gem
- ❌ rack-2.2.21.gem (Vulnerable Library)
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::Static#applicable_rules evaluates several header_rules types against the raw URL-encoded PATH_INFO, while the underlying file-serving path is decoded before the file is served. As a result, a request for a URL-encoded variant of a static path can serve the same file without the headers that header_rules were intended to apply. In deployments that rely on Rack::Static to attach security-relevant response headers to static content, this can allow an attacker to bypass those headers by requesting an encoded form of the path. 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-34786
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (5.3)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: Low
- Availability Impact: None
For more information on CVSS3 Scores, click here.
Suggested Fix
Type: Upgrade version
Origin: GHSA-q4qf-9j86-f5mh
Release Date: 2026-04-02
Fix Resolution: rack - 3.1.21,rack - 3.2.6,rack - 2.2.23
CVE-2026-34763
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
- sinatra-contrib-2.1.0.gem (Root Library)
- rack-protection-2.1.0.gem
- ❌ rack-2.2.21.gem (Vulnerable Library)
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::Directory interpolates the configured root path directly into a regular expression when deriving the displayed directory path. If root contains regex metacharacters such as +, *, or ., the prefix stripping can fail and the generated directory listing may expose the full filesystem path in the HTML output. 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-34763
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (5.3)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: Low
- Integrity Impact: None
- Availability Impact: None
For more information on CVSS3 Scores, click here.
Suggested Fix
Type: Upgrade version
Origin: GHSA-7mqq-6cf9-v2qp
Release Date: 2026-04-02
Fix Resolution: rack - 3.2.6,rack - 2.2.23,rack - 3.1.21
CVE-2026-34230
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
- sinatra-contrib-2.1.0.gem (Root Library)
- rack-protection-2.1.0.gem
- ❌ rack-2.2.21.gem (Vulnerable Library)
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::Utils.select_best_encoding processes Accept-Encoding values with quadratic time complexity when the header contains many wildcard (*) entries. Because this method is used by Rack::Deflater to choose a response encoding, an unauthenticated attacker can send a single request with a crafted Accept-Encoding header and cause disproportionate CPU consumption on the compression middleware path. This results in a denial of service condition for applications using Rack::Deflater. 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-34230
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (5.3)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: None
- Availability Impact: Low
For more information on CVSS3 Scores, click here.
Suggested Fix
Type: Upgrade version
Origin: GHSA-v569-hp3g-36wr
Release Date: 2026-04-02
Fix Resolution: rack - 3.1.21,rack - 3.2.6,rack - 2.2.23
CVE-2026-34831
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
- sinatra-contrib-2.1.0.gem (Root Library)
- rack-protection-2.1.0.gem
- ❌ rack-2.2.21.gem (Vulnerable Library)
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
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
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
For more information on CVSS3 Scores, click here.
Suggested Fix
Type: Upgrade version
Origin: GHSA-q2ww-5357-x388
Release Date: 2026-04-02
Fix Resolution: rack - 3.2.6,rack - 3.1.21,rack - 2.2.23
CVE-2026-26961
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
- sinatra-contrib-2.1.0.gem (Root Library)
- rack-protection-2.1.0.gem
- ❌ rack-2.2.21.gem (Vulnerable Library)
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::Multipart::Parser extracts the boundary parameter from multipart/form-data using a greedy regular expression. When a Content-Type header contains multiple boundary parameters, Rack selects the last one rather than the first. In deployments where an upstream proxy, WAF, or intermediary interprets the first boundary parameter, this mismatch can allow an attacker to smuggle multipart content past upstream inspection and have Rack parse a different body structure than the intermediary validated. 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-26961
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (3.7)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: High
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: Low
- Availability Impact: None
For more information on CVSS3 Scores, click here.
Suggested Fix
Type: Upgrade version
Origin: GHSA-vgpv-f759-9wx3
Release Date: 2026-04-02
Fix Resolution: rack - 2.2.23,rack - 3.2.6,rack - 3.1.21
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Vulnerabilities
*For some transitive vulnerabilities, there is no version of direct dependency with a fix. Check the "Details" section below to see if there is a version of transitive dependency where vulnerability is fixed.
**In some cases, Remediation PR cannot be created automatically for a vulnerability despite the availability of remediation
Details
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
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::Multipart::Parser only wraps the request body in a BoundedIO when CONTENT_LENGTH is present. When a multipart/form-data request is sent without a Content-Length header, such as with HTTP chunked transfer encoding, multipart parsing continues until end-of-stream with no total size limit. For file parts, the uploaded body is written directly to a temporary file on disk rather than being constrained by the buffered in-memory upload limit. An unauthenticated attacker can therefore stream an arbitrarily large multipart file upload and consume unbounded disk space. This results in a denial of service condition for Rack applications that accept multipart form data. 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-34829
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (7.5)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: None
- Availability Impact: High
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: GHSA-8vqr-qjwx-82mw
Release Date: 2026-04-02
Fix Resolution: rack - 3.1.21,rack - 3.2.6,rack - 2.2.23
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
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::Static determines whether a request should be served as a static file using a simple string prefix check. When configured with URL prefixes such as "/css", it matches any request path that begins with that string, including unrelated paths such as "/css-config.env" or "/css-backup.sql". As a result, files under the static root whose names merely share the configured prefix may be served unintentionally, leading to information disclosure. 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-34785
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (7.5)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: High
- Integrity Impact: None
- Availability Impact: None
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: GHSA-h2jq-g4cq-5ppq
Release Date: 2026-04-02
Fix Resolution: rack - 3.1.21,rack - 2.2.23,rack - 3.2.6
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
Found in base branch: master
Vulnerability Details
Rack is a modular Ruby web server interface. Prior to versions 2.2.22, 3.1.20, and 3.2.5, "Rack::Directory"’s path check used a string prefix match on the expanded path. A request like "/../root_example/" can escape the configured root if the target path starts with the root string, allowing directory listing outside the intended root. Versions 2.2.22, 3.1.20, and 3.2.5 fix the issue.
Publish Date: 2026-02-18
URL: CVE-2026-22860
Threat Assessment
Exploit Maturity: Not Defined
EPSS: 0.1%
CVSS 3 Score Details (7.5)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: High
- Integrity Impact: None
- Availability Impact: None
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Release Date: 2026-02-17
Fix Resolution: https://github.com/rack/rack.git - v3.2.5,https://github.com/rack/rack.git - v3.1.20,https://github.com/rack/rack.git - v2.2.22
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
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::Sendfile#map_accel_path interpolates the value of the X-Accel-Mapping request header directly into a regular expression when rewriting file paths for X-Accel-Redirect. Because the header value is not escaped, an attacker who can supply X-Accel-Mapping to the backend can inject regex metacharacters and control the generated X-Accel-Redirect response header. In deployments using Rack::Sendfile with x-accel-redirect, this can allow an attacker to cause nginx to serve unintended files from configured internal locations. 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-34830
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (5.9)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: High
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: High
- Integrity Impact: None
- Availability Impact: None
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: GHSA-qv7j-4883-hwh7
Release Date: 2026-04-02
Fix Resolution: rack - 3.2.6,rack - 2.2.23,rack - 3.1.21
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
Found in base branch: master
Vulnerability Details
Rack is a modular Ruby web server interface. Prior to versions 2.2.22, 3.1.20, and 3.2.5, "Rack::Directory" generates an HTML directory index where each file entry is rendered as a clickable link. If a file exists on disk whose basename starts with the "javascript:" scheme (e.g. "javascript:alert(1)"), the generated index contains an anchor whose "href" is exactly "javascript:alert(1)". Clicking the entry executes JavaScript in the browser (demonstrated with "alert(1)"). Versions 2.2.22, 3.1.20, and 3.2.5 fix the issue.
Publish Date: 2026-02-18
URL: CVE-2026-25500
Threat Assessment
Exploit Maturity: Not Defined
EPSS: 0.0%
CVSS 3 Score Details (5.4)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: Low
- User Interaction: Required
- Scope: Changed
- Impact Metrics:
- Confidentiality Impact: Low
- Integrity Impact: Low
- Availability Impact: None
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Release Date: 2026-02-17
Fix Resolution: https://github.com/rack/rack.git - v2.2.22,https://github.com/rack/rack.git - v3.2.5,https://github.com/rack/rack.git - v3.1.20
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
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::Utils.get_byte_ranges parses the HTTP Range header without limiting the number of individual byte ranges. Although the existing fix for CVE-2024-26141 rejects ranges whose total byte coverage exceeds the file size, it does not restrict the count of ranges. An attacker can supply many small overlapping ranges such as 0-0,0-0,0-0,... to trigger disproportionate CPU, memory, I/O, and bandwidth consumption per request. This results in a denial of service condition in Rack file-serving paths that process multipart byte range responses. 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-34826
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (5.3)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: None
- Availability Impact: Low
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: GHSA-x8cg-fq8g-mxfx
Release Date: 2026-04-02
Fix Resolution: rack - 3.2.6,rack - 2.2.23,rack - 3.1.21
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
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::Static#applicable_rules evaluates several header_rules types against the raw URL-encoded PATH_INFO, while the underlying file-serving path is decoded before the file is served. As a result, a request for a URL-encoded variant of a static path can serve the same file without the headers that header_rules were intended to apply. In deployments that rely on Rack::Static to attach security-relevant response headers to static content, this can allow an attacker to bypass those headers by requesting an encoded form of the path. 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-34786
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (5.3)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: Low
- Availability Impact: None
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: GHSA-q4qf-9j86-f5mh
Release Date: 2026-04-02
Fix Resolution: rack - 3.1.21,rack - 3.2.6,rack - 2.2.23
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
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::Directory interpolates the configured root path directly into a regular expression when deriving the displayed directory path. If root contains regex metacharacters such as +, *, or ., the prefix stripping can fail and the generated directory listing may expose the full filesystem path in the HTML output. 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-34763
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (5.3)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: Low
- Integrity Impact: None
- Availability Impact: None
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: GHSA-7mqq-6cf9-v2qp
Release Date: 2026-04-02
Fix Resolution: rack - 3.2.6,rack - 2.2.23,rack - 3.1.21
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
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::Utils.select_best_encoding processes Accept-Encoding values with quadratic time complexity when the header contains many wildcard (*) entries. Because this method is used by Rack::Deflater to choose a response encoding, an unauthenticated attacker can send a single request with a crafted Accept-Encoding header and cause disproportionate CPU consumption on the compression middleware path. This results in a denial of service condition for applications using Rack::Deflater. 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-34230
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (5.3)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: None
- Availability Impact: Low
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: GHSA-v569-hp3g-36wr
Release Date: 2026-04-02
Fix Resolution: rack - 3.1.21,rack - 3.2.6,rack - 2.2.23
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
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
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
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
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: GHSA-q2ww-5357-x388
Release Date: 2026-04-02
Fix Resolution: rack - 3.2.6,rack - 3.1.21,rack - 2.2.23
Vulnerable Library - rack-2.2.21.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-2.2.21.gem
Path to dependency file: /Gemfile.lock
Path to vulnerable library: /vendor/cache/rack-2.2.21.gem
Dependency Hierarchy:
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::Multipart::Parser extracts the boundary parameter from multipart/form-data using a greedy regular expression. When a Content-Type header contains multiple boundary parameters, Rack selects the last one rather than the first. In deployments where an upstream proxy, WAF, or intermediary interprets the first boundary parameter, this mismatch can allow an attacker to smuggle multipart content past upstream inspection and have Rack parse a different body structure than the intermediary validated. 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-26961
Threat Assessment
Exploit Maturity: Not Defined
EPSS:
CVSS 3 Score Details (3.7)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: High
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: Low
- Availability Impact: None
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: GHSA-vgpv-f759-9wx3
Release Date: 2026-04-02
Fix Resolution: rack - 2.2.23,rack - 3.2.6,rack - 3.1.21