Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🚨 [security] [ruby] Update all of rails: 5.2.4.2 → 5.2.4.3 (patch) #397

Merged
merged 1 commit into from May 19, 2020

Conversation

@depfu
Copy link
Contributor

depfu bot commented May 18, 2020


🚨 Your version of activesupport has known security vulnerabilities 🚨

Advisory: CVE-2020-8165
Disclosed: May 18, 2020
URL: https://groups.google.com/forum/#!topic/rubyonrails-security/bv6fW4S0Y1c

Potentially unintended unmarshalling of user-provided objects in MemCacheStore and RedisCacheStore

There is potentially unexpected behaviour in the MemCacheStore and RedisCacheStore where, when
untrusted user input is written to the cache store using the raw: true parameter, re-reading the result
from the cache can evaluate the user input as a Marshalled object instead of plain text. Vulnerable code looks like:

data = cache.fetch("demo", raw: true) { untrusted_string }

Versions Affected: rails < 5.2.5, rails < 6.0.4
Not affected: Applications not using MemCacheStore or RedisCacheStore. Applications that do not use the raw option when storing untrusted user input.
Fixed Versions: rails >= 5.2.4.3, rails >= 6.0.3.1

Impact

Unmarshalling of untrusted user input can have impact up to and including RCE. At a minimum,
this vulnerability allows an attacker to inject untrusted Ruby objects into a web application.

In addition to upgrading to the latest versions of Rails, developers should ensure that whenever
they are calling Rails.cache.fetch they are using consistent values of the raw parameter for both
reading and writing, especially in the case of the RedisCacheStore which does not, prior to these changes,
detect if data was serialized using the raw option upon deserialization.

Workarounds

It is recommended that application developers apply the suggested patch or upgrade to the latest release as
soon as possible. If this is not possible, we recommend ensuring that all user-provided strings cached using
the raw argument should be double-checked to ensure that they conform to the expected format.


🚨 We recommend to merge and deploy this update 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?

✳️ rails (5.2.4.2 → 5.2.4.3) · Repo

Commits

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

↗️ actioncable (indirect, 5.2.4.2 → 5.2.4.3) · Repo · Changelog

Commits

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

↗️ actionmailer (indirect, 5.2.4.2 → 5.2.4.3) · Repo · Changelog

Commits

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

↗️ actionpack (indirect, 5.2.4.2 → 5.2.4.3) · Repo · Changelog

Commits

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

↗️ actionview (indirect, 5.2.4.2 → 5.2.4.3) · Repo · Changelog

Commits

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

↗️ activejob (indirect, 5.2.4.2 → 5.2.4.3) · Repo · Changelog

Commits

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

↗️ activemodel (indirect, 5.2.4.2 → 5.2.4.3) · Repo · Changelog

Commits

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

↗️ activerecord (indirect, 5.2.4.2 → 5.2.4.3) · Repo · Changelog

Commits

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

↗️ activestorage (indirect, 5.2.4.2 → 5.2.4.3) · Repo · Changelog

↗️ activesupport (indirect, 5.2.4.2 → 5.2.4.3) · Repo · Changelog

Commits

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

↗️ mimemagic (indirect, 0.3.4 → 0.3.5) · Repo · Changelog

Release Notes

0.3.5 (from changelog)

Mimetype extensions are now ordered by freedesktop.org's priority

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

Commits

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

↗️ minitest (indirect, 5.14.0 → 5.14.1) · Repo · Changelog

Commits

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

↗️ railties (indirect, 5.2.4.2 → 5.2.4.3) · Repo · Changelog

Commits

See the full diff on Github. The new version differs by 10 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 depfu bot added the depfu label May 18, 2020
@codecov
Copy link

codecov bot commented May 18, 2020

Codecov Report

Merging #397 into master will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master     #397   +/-   ##
=======================================
  Coverage   88.30%   88.30%           
=======================================
  Files          35       35           
  Lines         633      633           
=======================================
  Hits          559      559           
  Misses         74       74           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update f24a2c9...f728a7e. Read the comment docs.

@ruebot ruebot merged commit 0aacaf1 into master May 19, 2020
2 checks passed
2 checks passed
codecov/patch Coverage not affected when comparing f24a2c9...f728a7e
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@depfu depfu bot deleted the depfu/update/group/rails-5.2.4.3 branch May 19, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

1 participant
You can’t perform that action at this time.