CVE-2026-34785: rack Partial String Comparison
Vulnerability summary
CVE-2026-34785 is a high (CVSS 7.5) Partial String Comparison vulnerability in rack. EPSS estimates a 0.52% chance of exploitation in the next 30 days, higher than 42.8% of scored vulnerabilities.
Advisory lineage
Upstream 0 · Downstream 5 · Related 6Timeline
- 02-04-2026PublishedVulnerability first disclosed.
- 15-07-2026Last modifiedVulnerability information updated.
Description
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.
CVSS metrics
7 scores · 7 sources · 1 version- OSV · UbuntuEcosystem advisory · calculated7.5HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
- OSV · DebianEcosystem advisory · calculated7.5HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
- OSV · WolfiEcosystem advisory · calculated7.5HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
- OSV · ChainguardEcosystem advisory · calculated7.5HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
- OSV · RubygemsEcosystem advisory · calculated7.5HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
- NVDNIST7.5HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
EPSS trend
Probability
0.52%
Chance of exploitation in the next 30 days
Percentile
43%
Versus all other CVEs
30-day change
+0.13 pp
From 0.39% on 20-09-2026
Known exploited
Compare KEV catalogsNot in any of the 3 tracked catalogs.
Public exploits
0 foundNo public exploits indexed.
Weaknesses
CWE · root cause- CWE-187Partial String ComparisonThe product performs a comparison that only examines a portion of a factor before determining whether there is a match, such as a substring, leading to resultant weaknesses.
- CWE-200Exposure of Sensitive Information to an Unauthorized ActorThe product exposes sensitive information to an actor that is not explicitly authorized to have access to that information.
- CWE-552Files or Directories Accessible to External PartiesThe product makes files or directories accessible to unauthorized actors, even though they should not be.
Affected systems
Chainguard57 products
- gitlab-exporter-18.10< 18.10.3-r0
- gitlab-exporter-18.7All versions (No fix recorded)
- gitlab-exporter-18.8< 18.8.9-r0
- gitlab-exporter-18.9< 18.9.5-r0
- gitlab-rails-ce-18.1< 18.1.6-r13
Wolfi8 products
- kube-fluentd-operator< 1.18.2-r67 | < 1.18.2-r60
- logstash-9.3< 9.3.3-r2
- logstash-9.3-iamguarded-compat< 9.3.3-r2
- logstash-9.3-with-output-opensearch< 9.3.3-r2
- ruby3.2-rack-2.2< 2.2.23-r0
Debian1 product
- ruby-rack< 2.2.22-0+deb12u2 | < 3.1.20-0+deb13u2 | < 3.2.6-2
Rack1 product
- rack≥ 3.0.0.beta1, < 3.1.21 | < 2.2.23 | ≥ 3.0.0, < 3.1.21 | ≥ 3.2.0, < 3.2.6
RubyGems1 product
- rack< 2.2.23 | ≥ 3.0.0.beta1, < 3.1.21 | ≥ 3.2.0, < 3.2.6
Ubuntu1 product
- ruby-rack< 1.5.2-3+deb8u3ubuntu1~esm11 | < 1.6.4-3ubuntu0.2+esm10 | < 1.6.4-4ubuntu0.2+esm10 | < 2.1.4-5ubuntu1.2+esm3 | < 2.2.7-1ubuntu0.7 | < 3.1.16-0.1ubuntu0.3 | All versions (No fix recorded)
6 vendors · 69 products
References
12 links- github.com/rack/rack/security/advisories/GHSA-h2jq-g4cq-5ppqX Refsource CONFIRMREPORTAdvisoryWEBVendor Advisory
Show all 12 references
- github.com/rack/rackPACKAGE