Skip to content

Comments

🚨 [security] Update sinatra: 2.1.0 → 2.2.3 (minor)#424

Closed
depfu[bot] wants to merge 1 commit intomasterfrom
depfu/update/sinatra-2.2.3
Closed

🚨 [security] Update sinatra: 2.1.0 → 2.2.3 (minor)#424
depfu[bot] wants to merge 1 commit intomasterfrom
depfu/update/sinatra-2.2.3

Conversation

@depfu
Copy link

@depfu depfu bot commented Nov 26, 2022


🚨 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?

✳️ sinatra (2.1.0 → 2.2.3) · Repo · Changelog

Security Advisories 🚨

🚨 Sinatra vulnerable to Reflected File Download attack

An issue was discovered in Sinatra 2.0 before 2.2.3 and 3.0 before 3.0.4.
An application is vulnerable to a reflected file download (RFD) attack that
sets the Content-Disposition header of a response when the filename is
derived from user-supplied input.

🚨 sinatra does not validate expanded path matches

Sinatra before 2.2.0 does not validate that the expanded path matches
public_dir when serving static files.

Release Notes

2.2.3 (from changelog)

  • Fix: Escape filename in the Content-Disposition header. #1841 by Kunpei Sakai

  • Fix: fixed ReDoS for Rack::Protection::IPSpoofing. #1823 by @ooooooo-q

2.2.2 (from changelog)

  • Update mustermann dependency to version 2.

2.2.0 (from changelog)

  • Handle EOFError raised by Rack and return Bad Request 400 status. #1743 by tamazon

  • Update README.es.md with removal of Thin. #1630 by Espartaco Palma

  • Minor refactors in base.rb. #1640 by ceclinux

  • Fixed typos in german README.md. #1648 by Juri

  • Add escaping to the static 404 page. #1645 by Chris Gavin

  • Remove detect_rack_handler method. #1652 by ceclinux

  • Respect content type set in superclass before filter. Fixes #1647 #1649 by Jordan Owens

  • Update README.ja.md with removal of Thin. #1629 by Ryuichi KAWAMATA

  • Revert "Use prepend instead of include for helpers. #1662 by namusyaka

  • Various minor fixes to README.md. #1663 by Yanis Zafirópulos

  • Document when dump_errors is enabled. Fixes #1664 #1665 by Patrik Ragnarsson

  • Update README.pt-br.md. #1668 by Vitor Oliveira

  • Fix usage of inherited Sinatra::Base classes keyword arguments. Fixes #1669 #1670 by Cadu Ribeiro

  • Reduce RDoc generation time by not including every README. Fixes #1578 #1671 by Eloy Pérez

  • Add support for per form csrf tokens. Fixes #1616 #1653 by Jordan Owens

  • Update MAINTENANCE.md with the stable branch status. #1681 by Fredrik Rubensson

  • Validate expanded path matches public_dir when serving static files. #1683 by cji-stripe

  • Fix Delegator to pass keyword arguments for Ruby 3.0. #1684 by andrewtblake

  • Fix use with keyword arguments for Ruby 3.0. #1701 by Robin Wallin

  • Fix memory leaks for proc template. Fixes #1704 #1719 by Slevin

  • Remove unnecessary test_files from the gemspec. #1712 by Masataka Pocke Kuwabara

  • Add #select, #reject and #compact methods to Sinatra::IndifferentHash. #1711 by Olivier Bellone

CI

  • Use latest JRuby 9.2.16.0 on CI. #1682 by Olle Jonsson

  • Switch CI from travis to Github actions. #1691 by namusyaka

  • Skip the Slack action if secrets.SLACK_WEBHOOK is not set. #1705 by Robin Wallin

  • Small CI improvements. #1703 by Robin Wallin

  • Drop auto-generated boilerplate comments from CI configuration file. #1728 by Olle Jonsson

sinatra-contrib

  • Do not raise when key is an enumerable. #1619 by Ulysse Buonomo

Rack protection

  • Fix broken origin_whitelist option. Fixes #1641 #1642 by Takeshi YASHIRO

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.

✳️ sinatra-contrib (2.1.0 → 2.2.3) · Repo · Changelog

Release Notes

2.2.3 (from changelog)

  • Fix: Escape filename in the Content-Disposition header. #1841 by Kunpei Sakai

  • Fix: fixed ReDoS for Rack::Protection::IPSpoofing. #1823 by @ooooooo-q

2.2.2 (from changelog)

  • Update mustermann dependency to version 2.

2.2.0 (from changelog)

  • Handle EOFError raised by Rack and return Bad Request 400 status. #1743 by tamazon

  • Update README.es.md with removal of Thin. #1630 by Espartaco Palma

  • Minor refactors in base.rb. #1640 by ceclinux

  • Fixed typos in german README.md. #1648 by Juri

  • Add escaping to the static 404 page. #1645 by Chris Gavin

  • Remove detect_rack_handler method. #1652 by ceclinux

  • Respect content type set in superclass before filter. Fixes #1647 #1649 by Jordan Owens

  • Update README.ja.md with removal of Thin. #1629 by Ryuichi KAWAMATA

  • Revert "Use prepend instead of include for helpers. #1662 by namusyaka

  • Various minor fixes to README.md. #1663 by Yanis Zafirópulos

  • Document when dump_errors is enabled. Fixes #1664 #1665 by Patrik Ragnarsson

  • Update README.pt-br.md. #1668 by Vitor Oliveira

  • Fix usage of inherited Sinatra::Base classes keyword arguments. Fixes #1669 #1670 by Cadu Ribeiro

  • Reduce RDoc generation time by not including every README. Fixes #1578 #1671 by Eloy Pérez

  • Add support for per form csrf tokens. Fixes #1616 #1653 by Jordan Owens

  • Update MAINTENANCE.md with the stable branch status. #1681 by Fredrik Rubensson

  • Validate expanded path matches public_dir when serving static files. #1683 by cji-stripe

  • Fix Delegator to pass keyword arguments for Ruby 3.0. #1684 by andrewtblake

  • Fix use with keyword arguments for Ruby 3.0. #1701 by Robin Wallin

  • Fix memory leaks for proc template. Fixes #1704 #1719 by Slevin

  • Remove unnecessary test_files from the gemspec. #1712 by Masataka Pocke Kuwabara

  • Add #select, #reject and #compact methods to Sinatra::IndifferentHash. #1711 by Olivier Bellone

CI

  • Use latest JRuby 9.2.16.0 on CI. #1682 by Olle Jonsson

  • Switch CI from travis to Github actions. #1691 by namusyaka

  • Skip the Slack action if secrets.SLACK_WEBHOOK is not set. #1705 by Robin Wallin

  • Small CI improvements. #1703 by Robin Wallin

  • Drop auto-generated boilerplate comments from CI configuration file. #1728 by Olle Jonsson

sinatra-contrib

  • Do not raise when key is an enumerable. #1619 by Ulysse Buonomo

Rack protection

  • Fix broken origin_whitelist option. Fixes #1641 #1642 by Takeshi YASHIRO

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.

↗️ mustermann (indirect, 1.1.1 → 2.0.2) · Repo

Commits

See the full diff on Github. The new version differs by 64 commits:

↗️ rack (indirect, 2.2.3 → 2.2.4) · Repo · Changelog

Security Advisories 🚨

🚨 Denial of Service Vulnerability in Rack Multipart Parsing

There is a possible denial of service vulnerability in the multipart parsing
component of Rack. This vulnerability has been assigned the CVE identifier
CVE-2022-30122.

Versions Affected: >= 1.2
Not affected: < 1.2
Fixed Versions: 2.0.9.1, 2.1.4.1, 2.2.3.1

Impact

Carefully crafted multipart POST requests can cause Rack's multipart parser to
take much longer than expected, leading to a possible denial of service
vulnerability.

Impacted code will use Rack's multipart parser to parse multipart posts. This
includes directly using the multipart parser like this:

params = Rack::Multipart.parse_multipart(env)

But it also includes reading POST data from a Rack request object like this:

p request.POST # read POST data
p request.params # reads both query params and POST data

All users running an affected release should either upgrade or use one of the
workarounds immediately.

Workarounds

There are no feasible workarounds for this issue.

🚨 Possible shell escape sequence injection vulnerability in Rack

There is a possible shell escape sequence injection vulnerability in the Lint
and CommonLogger components of Rack. This vulnerability has been assigned the
CVE identifier CVE-2022-30123.

Versions Affected: All.
Not affected: None
Fixed Versions: 2.0.9.1, 2.1.4.1, 2.2.3.1

Impact

Carefully crafted requests can cause shell escape sequences to be written to
the terminal via Rack's Lint middleware and CommonLogger middleware. These
escape sequences can be leveraged to possibly execute commands in the victim's
terminal.

Impacted applications will have either of these middleware installed, and
vulnerable apps may have something like this:

use Rack::Lint

Or

use Rack::CommonLogger

All users running an affected release should either upgrade or use one of the
workarounds immediately.

Workarounds

Remove these middleware from your application

Commits

See the full diff on Github. The new version differs by 18 commits:

↗️ rack-protection (indirect, 2.1.0 → 2.2.3) · Repo · Changelog

Release Notes

2.2.3 (from changelog)

  • Fix: Escape filename in the Content-Disposition header. #1841 by Kunpei Sakai

  • Fix: fixed ReDoS for Rack::Protection::IPSpoofing. #1823 by @ooooooo-q

2.2.2 (from changelog)

  • Update mustermann dependency to version 2.

2.2.0 (from changelog)

  • Handle EOFError raised by Rack and return Bad Request 400 status. #1743 by tamazon

  • Update README.es.md with removal of Thin. #1630 by Espartaco Palma

  • Minor refactors in base.rb. #1640 by ceclinux

  • Fixed typos in german README.md. #1648 by Juri

  • Add escaping to the static 404 page. #1645 by Chris Gavin

  • Remove detect_rack_handler method. #1652 by ceclinux

  • Respect content type set in superclass before filter. Fixes #1647 #1649 by Jordan Owens

  • Update README.ja.md with removal of Thin. #1629 by Ryuichi KAWAMATA

  • Revert "Use prepend instead of include for helpers. #1662 by namusyaka

  • Various minor fixes to README.md. #1663 by Yanis Zafirópulos

  • Document when dump_errors is enabled. Fixes #1664 #1665 by Patrik Ragnarsson

  • Update README.pt-br.md. #1668 by Vitor Oliveira

  • Fix usage of inherited Sinatra::Base classes keyword arguments. Fixes #1669 #1670 by Cadu Ribeiro

  • Reduce RDoc generation time by not including every README. Fixes #1578 #1671 by Eloy Pérez

  • Add support for per form csrf tokens. Fixes #1616 #1653 by Jordan Owens

  • Update MAINTENANCE.md with the stable branch status. #1681 by Fredrik Rubensson

  • Validate expanded path matches public_dir when serving static files. #1683 by cji-stripe

  • Fix Delegator to pass keyword arguments for Ruby 3.0. #1684 by andrewtblake

  • Fix use with keyword arguments for Ruby 3.0. #1701 by Robin Wallin

  • Fix memory leaks for proc template. Fixes #1704 #1719 by Slevin

  • Remove unnecessary test_files from the gemspec. #1712 by Masataka Pocke Kuwabara

  • Add #select, #reject and #compact methods to Sinatra::IndifferentHash. #1711 by Olivier Bellone

CI

  • Use latest JRuby 9.2.16.0 on CI. #1682 by Olle Jonsson

  • Switch CI from travis to Github actions. #1691 by namusyaka

  • Skip the Slack action if secrets.SLACK_WEBHOOK is not set. #1705 by Robin Wallin

  • Small CI improvements. #1703 by Robin Wallin

  • Drop auto-generated boilerplate comments from CI configuration file. #1728 by Olle Jonsson

sinatra-contrib

  • Do not raise when key is an enumerable. #1619 by Ulysse Buonomo

Rack protection

  • Fix broken origin_whitelist option. Fixes #1641 #1642 by Takeshi YASHIRO

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.

↗️ ruby2_keywords (indirect, 0.0.2 → 0.0.5) · Repo

Commits

See the full diff on Github. The new version differs by 43 commits:

↗️ tilt (indirect, 2.0.10 → 2.0.11) · Repo · Changelog

Release Notes

2.0.11 (from changelog)

  • Fix #extensions_for for RedcarpetTemplate (judofyr)
  • Support the new sass-embedded gem (#367, ntkme)
  • Add Tilt::EmacsOrg support (#366, hacktivista)
  • Improve rendering of BasicObject instances (#348, jeremyevans)
  • Fix Ruby 3.0 compatibility (#360, voxik)

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

Commits

See the full diff on Github. The new version differs by 23 commits:


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 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)

@depfu
Copy link
Author

depfu bot commented Dec 18, 2022

Closed in favor of #429.

@depfu depfu bot closed this Dec 18, 2022
@depfu depfu bot deleted the depfu/update/sinatra-2.2.3 branch December 18, 2022 00:19
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.

1 participant