Skip to content

🚨 [security] Update rack 2.2.8 → 2.2.23 (patch)#386

Open
depfu[bot] wants to merge 1 commit intomasterfrom
depfu/update/rack-2.2.23
Open

🚨 [security] Update rack 2.2.8 → 2.2.23 (patch)#386
depfu[bot] wants to merge 1 commit intomasterfrom
depfu/update/rack-2.2.23

Conversation

@depfu
Copy link
Copy Markdown

@depfu depfu bot commented Apr 3, 2026


🚨 Your current dependencies have known security vulnerabilities 🚨

This dependency update fixes known security vulnerabilities. Please see the details below and assess their impact carefully. We recommend to merge and deploy this as soon as possible!


Here is everything you need to know about this update. Please take a good look at what changed and the test results before merging this pull request.

What changed?

↗️ rack (indirect, 2.2.8 → 2.2.23) · Repo · Changelog

Security Advisories 🚨

🚨 Rack::Static prefix matching can expose unintended files under the static root

More info than we can show here.

🚨 Rack has Content-Length mismatch in Rack::Files error responses

More info than we can show here.

🚨 Rack::Sendfile header-based X-Accel-Mapping regex injection enables unauthorized X-Accel-Redirect

More info than we can show here.

🚨 Rack's multipart parsing without Content-Length header allows unbounded chunked file uploads

More info than we can show here.

🚨 Rack has a root directory disclosure via unescaped regex interpolation in Rack::Directory

More info than we can show here.

🚨 Rack has quadratic complexity in Rack::Utils.select_best_encoding via wildcard Accept-Encoding header

More info than we can show here.

🚨 Rack's greedy multipart boundary parsing can cause parser differentials and WAF bypass.

More info than we can show here.

🚨 Rack's multipart byte range processing allows denial of service via excessive overlapping ranges

More info than we can show here.

🚨 Rack:: Static header_rules bypass via URL-encoded paths

More info than we can show here.

🚨 Stored XSS in Rack::Directory via javascript: filenames rendered into anchor href

More info than we can show here.

🚨 Rack has a Directory Traversal via Rack:Directory

More info than we can show here.

🚨 Rack has a Possible Information Disclosure Vulnerability

More info than we can show here.

🚨 Rack is vulnerable to a memory-exhaustion DoS through unbounded URL-encoded body parsing

More info than we can show here.

🚨 Rack's unbounded multipart preamble buffering enables DoS (memory exhaustion)

More info than we can show here.

🚨 Rack's multipart parser buffers unbounded per-part headers, enabling DoS (memory exhaustion)

More info than we can show here.

🚨 Rack: Multipart parser buffers large non‑file fields entirely in memory, enabling DoS (memory exhaustion)

More info than we can show here.

🚨 Rack has an unsafe default in Rack::QueryParser allows params_limit bypass via semicolon-separated parameters

More info than we can show here.

🚨 Rack has an Unbounded-Parameter DoS in Rack::QueryParser

More info than we can show here.

🚨 Rack session gets restored after deletion

More info than we can show here.

🚨 Local File Inclusion in Rack::Static

More info than we can show here.

🚨 Escape Sequence Injection vulnerability in Rack lead to Possible Log Injection

More info than we can show here.

🚨 Possible Log Injection in Rack::CommonLogger

More info than we can show here.

🚨 Rack vulnerable to ReDoS in content type parsing (2nd degree polynomial)

More info than we can show here.

🚨 Rack Header Parsing leads to Possible Denial of Service Vulnerability

More info than we can show here.

🚨 Rack has possible DoS Vulnerability with Range Header

More info than we can show here.
Release Notes

2.2.23 (from changelog)

More info than we can show here.

2.2.21 (from changelog)

More info than we can show here.

2.2.19 (from changelog)

More info than we can show here.

2.2.16 (from changelog)

More info than we can show here.

2.2.15 (from changelog)

More info than we can show here.

2.2.14 (from changelog)

More info than we can show here.

2.2.13 (from changelog)

More info than we can show here.

2.2.12 (from changelog)

More info than we can show here.

2.2.10 (from changelog)

More info than we can show here.

2.2.8.1

More info than we can show here.

Does any of this look wrong? Please let us know.

Commits

See the full diff on Github. The new version differs by more commits than we can show here.

🆕 mini_portile2 (added, 2.8.9)


Depfu Status

Depfu will automatically keep this PR conflict-free, as long as you don't add any commits to this branch yourself. You can also trigger a rebase manually by commenting with @depfu rebase.

All Depfu comment commands
@​depfu rebase
Rebases against your default branch and redoes this update
@​depfu recreate
Recreates this PR, overwriting any edits that you've made to it
@​depfu merge
Merges this PR once your tests are passing and conflicts are resolved
@​depfu cancel merge
Cancels automatic merging of this PR
@​depfu close
Closes this PR and deletes the branch
@​depfu reopen
Restores the branch and reopens this PR (if it's closed)
@​depfu pause
Ignores all future updates for this dependency and closes this PR
@​depfu pause [minor|major]
Ignores all future minor/major updates for this dependency and closes this PR
@​depfu resume
Future versions of this dependency will create PRs again (leaves this PR as is)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants