-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Permalink
Choose a base ref
{{ refName }}
default
Choose a head ref
{{ refName }}
default
Comparing changes
Choose two branches to see what’s changed or to start a new pull request.
If you need to, you can also or
learn more about diff comparisons.
Open a pull request
Create a new pull request by comparing changes across two branches. If you need to, you can also .
Learn more about diff comparisons here.
base repository: rack/rack
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v3.2.1
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
...
head repository: rack/rack
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v3.2.3
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
- 8 commits
- 10 files changed
- 2 contributors
Commits on Oct 7, 2025
-
Fix denial of service vulnerbilties in multipart parsing
Two separate vulnerabilities: 1. Unbounded buffering of uploaded data waiting for a boundary. 2. Unbounded buffering of uploaded data waiting for complete mime part header. The respective limits are 16KB for (1) and 64KB for (2), but those limits only apply for non-default buffer sizes. If left at the default configuration, 1MB (default buffer size) will be the limit for both. This changes one EmptyContentError exception to an Error exception, but EmptyContentError is probably the wrong error to raise for a very long boundary.
Configuration menu - View commit details
-
Copy full SHA for 589127f - Browse repository at this point
Copy the full SHA 589127fView commit details -
Limit amount of retained data when parsing multipart requests
The limit is 16MB by default, and it can be adjusted with the RACK_MULTIPART_MAX_BUFFERED_UPLOAD_SIZE environment variable. Data stored in temporary files is not counted against this limit. However data for other parameters, as well as the data for the mime headers for each parameter (which is retained during parsing) is counted against the limit.
Configuration menu - View commit details
-
Copy full SHA for 3beacfc - Browse repository at this point
Copy the full SHA 3beacfcView commit details -
Configuration menu - View commit details
-
Copy full SHA for bce149b - Browse repository at this point
Copy the full SHA bce149bView commit details -
Configuration menu - View commit details
-
Copy full SHA for fb395bb - Browse repository at this point
Copy the full SHA fb395bbView commit details
Commits on Oct 9, 2025
-
Configuration menu - View commit details
-
Copy full SHA for 403b74b - Browse repository at this point
Copy the full SHA 403b74bView commit details
Commits on Oct 10, 2025
-
Improper handling of proxy headers in
Rack::Sendfilemay allow prox……y bypass. - Ignore `HTTP_X_SENDFILE_TYPE` header from requests to prevent attackers from enabling sendfile features. - Only read `HTTP_X_ACCEL_MAPPING` when `x-accel-redirect` is explicitly configured and no app-level mappings exist. - Prefer `\A` instead of `^` to match the start of path mappings.
Configuration menu - View commit details
-
Copy full SHA for 57277b7 - Browse repository at this point
Copy the full SHA 57277b7View commit details -
Unbounded read in
Rack::Requestform parsing can lead to memory exh……austion. - Limit read to `query_parser.bytesize_limit`.
1Configuration menu - View commit details
-
Copy full SHA for e179614 - Browse repository at this point
Copy the full SHA e179614View commit details -
Configuration menu - View commit details
-
Copy full SHA for 32bf888 - Browse repository at this point
Copy the full SHA 32bf888View commit details
Loading
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v3.2.1...v3.2.3