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

Update rexml #3656

Merged
merged 4 commits into from
May 23, 2024
Merged

Update rexml #3656

merged 4 commits into from
May 23, 2024

Conversation

TonyCTHsu
Copy link
Contributor

What does this PR do?

Update rexml due to CVE-2024-35176

@TonyCTHsu TonyCTHsu requested a review from a team as a code owner May 21, 2024 11:06
@TonyCTHsu TonyCTHsu force-pushed the tonyctthsu/CVE-2024-35176-Dos-in-REXML branch from 530fb99 to 500afe0 Compare May 21, 2024 11:07
@TonyCTHsu TonyCTHsu force-pushed the tonyctthsu/CVE-2024-35176-Dos-in-REXML branch from 500afe0 to 710470a Compare May 21, 2024 11:07
@p-datadog
Copy link
Contributor

Behavior of StringScanner#scan changed for ruby 2.7 to accept a string. The following is accepted by 2.7 but not 2.6:

irb(main):003:0> require'strscan'
=> true
irb(main):004:0> StringScanner.new('x').scan 'y'
=> nil

This usage is employed by rexml (latest).

jruby 9.2 & 9.3 follow ruby 2.6 behavior and reject it. jruby 9.4 (master) no longer implements strscan internally as 9.2 & 9.3 did, instead relying on the gem with the same name (perhaps extracted from MRI).

Unfortunately installing strscan on jruby 9.2 doesn't seem to fix the issue - it looks like jruby is prioritizing its bundled implementation of strscan over the installed gem.

@TonyCTHsu TonyCTHsu force-pushed the tonyctthsu/CVE-2024-35176-Dos-in-REXML branch from 7befc32 to b278b8e Compare May 22, 2024 06:54
@codecov-commenter
Copy link

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 98.10%. Comparing base (4a3cc53) to head (b278b8e).

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #3656      +/-   ##
==========================================
- Coverage   98.10%   98.10%   -0.01%     
==========================================
  Files        1232     1232              
  Lines       72560    72560              
  Branches     3447     3447              
==========================================
- Hits        71188    71187       -1     
- Misses       1372     1373       +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@TonyCTHsu TonyCTHsu added the dev/testing Involves testing processes (e.g. RSpec) label May 22, 2024
@TonyCTHsu TonyCTHsu merged commit f8144d9 into master May 23, 2024
166 checks passed
@TonyCTHsu TonyCTHsu deleted the tonyctthsu/CVE-2024-35176-Dos-in-REXML branch May 23, 2024 07:33
@github-actions github-actions bot added this to the 2.0.0 milestone May 23, 2024
p-datadog pushed a commit to p-datadog/dd-trace-rb that referenced this pull request Jun 4, 2024
* master: (22 commits)
  Remove experimental warning from OpenTelemetry.md
  Remove latest tag on docker images
  add installer system tests
  Extract trace id format helper method (DataDog#3670)
  Remaps http status code tag for otel span for trace metrics (DataDog#3664)
  Update .github/labeler.yml
  Use 3.20
  rb -> ruby
  Add a note about `use` vs `instrument`
  GitHub: Update labeller bot with new products
  Update lockfiles for release 2.0.0.rc1
  Bump version 2.0.0.beta2 to 2.0.0.rc1
  Add 2.0.0.rc1 to CHANGELOG.md
  chore(lib-injection): update base image to alpine 3.18.6
  Apply suggestions from code review
  Revert "DEBUG-2334 Add Debugger component (DataDog#3640)"
  Implement `latest_major` and `lastest_minor` tag for docker init container (DataDog#3643)
  Build oci package
  Update `rexml`  (DataDog#3656)
  Remove bundler cache in for `setup-ruby` step and pin bundler and rubygem version
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dev/testing Involves testing processes (e.g. RSpec)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants