zync
zync copied to clipboard
🚨 [security] Update rexml 3.2.5 → 3.3.6 (minor)
🚨 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?
↗️ rexml (indirect, 3.2.5 → 3.3.6) · Repo · Changelog
Security Advisories 🚨
🚨 REXML denial of service vulnerability
Impact
The REXML gem before 3.3.6 has a DoS vulnerability when it parses an XML that has many deep elements that have same local name attributes.
If you need to parse untrusted XMLs with tree parser API like
REXML::Document.new
, you may be impacted to this vulnerability. If you use other parser APIs such as stream parser API and SAX2 parser API, this vulnerability is not affected.Patches
The REXML gem 3.3.6 or later include the patch to fix the vulnerability.
Workarounds
Don't parse untrusted XMLs with tree parser API.
🚨 REXML DoS vulnerability
Impact
The REXML gem before 3.3.2 has a DoS vulnerability when it parses an XML that has many entity expansions with SAX2 or pull parser API.
If you need to parse untrusted XMLs with SAX2 or pull parser API, you may be impacted to this vulnerability.
Patches
The REXML gem 3.3.3 or later include the patch to fix the vulnerability.
Workarounds
Don't parse untrusted XMLs with SAX2 or pull parser API.
References
- https://www.ruby-lang.org/en/news/2008/08/23/dos-vulnerability-in-rexml/ : This is a similar vulnerability
- https://www.ruby-lang.org/en/news/2024/08/01/dos-rexml-cve-2024-41946/: An announce on www.ruby-lang.org
🚨 REXML DoS vulnerability
Impact
The REXML gem before 3.3.2 has some DoS vulnerabilities when it parses an XML that has many specific characters such as whitespace character,
>]
and]>
.If you need to parse untrusted XMLs, you may be impacted to these vulnerabilities.
Patches
The REXML gem 3.3.3 or later include the patches to fix these vulnerabilities.
Workarounds
Don't parse untrusted XMLs.
References
- GHSA-vg3r-rm7w-2xgh : This is a similar vulnerability
- GHSA-4xqq-m2hx-25v8 : This is a similar vulnerability
- https://www.ruby-lang.org/en/news/2024/08/01/dos-rexml-cve-2024-41123/: An announce on www.ruby-lang.org
🚨 REXML denial of service vulnerability
Impact
The REXML gem before 3.3.1 has some DoS vulnerabilities when it parses an XML that has many specific characters such as
<
,0
and%>
.If you need to parse untrusted XMLs, you may be impacted to these vulnerabilities.
Patches
The REXML gem 3.3.2 or later include the patches to fix these vulnerabilities.
Workarounds
Don't parse untrusted XMLs.
References
- GHSA-vg3r-rm7w-2xgh : This is a similar vulnerability
- https://www.ruby-lang.org/en/news/2024/07/16/dos-rexml-cve-2024-39908/
🚨 REXML contains a denial of service vulnerability
Impact
The REXML gem before 3.2.6 has a DoS vulnerability when it parses an XML that has many
<
s in an attribute value.If you need to parse untrusted XMLs, you may be impacted to this vulnerability.
Patches
The REXML gem 3.2.7 or later include the patch to fix this vulnerability.
Workarounds
Don't parse untrusted XMLs.
References
Release Notes
3.3.6
Improvements
Removed duplicated entity expansions for performance.
- GH-194
- Patch by Viktor Ivarsson.
Improved namespace conflicted attribute check performance. It was
too slow for deep elements.
- Reported by l33thaxor.
Fixes
Fixed a bug that default entity expansions are counted for
security check. Default entity expansions should not be counted
because they don't have a security risk.Fixed a parser bug that parameter entity references in internal
subsets are expanded. It's not allowed in the XML specification.
- GH-191
- Patch by NAITOH Jun.
Fixed a stream parser bug that user-defined entity references in
text aren't expanded.
- GH-200
- Patch by NAITOH Jun.
Thanks
Viktor Ivarsson
NAITOH Jun
l33thaxor
3.3.5
Fixes
- Fixed a bug that
REXML::Security.entity_expansion_text_limit
check has wrong text size calculation in SAX and pull parsers.Thanks
Viktor Ivarsson
NAITOH Jun
3.3.4
Fixes
- Fixed a bug that
REXML::Security
isn't defined when
REXML::Parsers::StreamParser
is used and
rexml/parsers/streamparser
is only required.
- GH-189
- Patch by takuya kodama.
Thanks
- takuya kodama
3.3.3
Improvements
Added support for detecting invalid XML that has unsupported
content before root element
- GH-184
- Patch by NAITOH Jun.
Added support for
REXML::Security.entity_expansion_limit=
and
REXML::Security.entity_expansion_text_limit=
in SAX2 and pull
parsers
- GH-187
- Patch by NAITOH Jun.
Added more tests for invalid XMLs.
- GH-183
- Patch by Watson.
Added more performance tests.
- Patch by Watson.
Improved parse performance.
- GH-186
- Patch by tomoya ishida.
Thanks
NAITOH Jun
Watson
tomoya ishida
3.3.2
Improvements
Improved parse performance.
- GH-160
- Patch by NAITOH Jun.
Improved parse performance.
Added support for raising a parse exception when an XML has extra
content after the root element.
- GH-161
- Patch by NAITOH Jun.
Added support for raising a parse exception when an XML
declaration exists in wrong position.
- GH-162
- Patch by NAITOH Jun.
Removed needless a space after XML declaration in pretty print mode.
- GH-164
- Patch by NAITOH Jun.
Stopped to emit
:text
event after the root element.
- GH-167
- Patch by NAITOH Jun.
Fixes
- Fixed a bug that SAX2 parser doesn't expand predefined entities for
characters
callback.
- GH-168
- Patch by NAITOH Jun.
Thanks
NAITOH Jun
Watson
3.3.1
Improvements
Added support for detecting malformed top-level comments.
- GH-145
- Patch by Hiroya Fujinami.
Improved
REXML::Element#attribute
performance.
- GH-146
- Patch by Hiroya Fujinami.
Added support for detecting malformed
<!-->
comments.
- GH-147
- Patch by Hiroya Fujinami.
Added support for detecting unclosed
DOCTYPE
.
- GH-152
- Patch by Hiroya Fujinami.
Added
changlog_uri
metadata to gemspec.
- GH-156
- Patch by fynsta.
Improved parse performance.
Fixes
Fixed a bug that large XML can't be parsed.
- GH-154
- Patch by NAITOH Jun.
Fixed a bug that private constants are visible.
- GH-155
- Patch by NAITOH Jun.
Thanks
Hiroya Fujinami
NAITOH Jun
fynsta
3.3.0
Improvements
- Added support for strscan 0.7.0 installed with Ruby 2.6.
- GH-142
- Reported by Fernando Trigoso.
Thanks
- Fernando Trigoso
3.2.9
Improvements
Added support for old strscan.
- GH-132
- Reported by Adam
Improved attribute value parse performance.
- GH-135
- Patch by NAITOH Jun.
Improved
REXML::Node#each_recursive
performance.Improved text parse performance.
- Reported by mprogrammer.
Thanks
- Adam
- NAITOH Jun
- Hiroya Fujinami
- mprogrammer
3.2.8
Fixes
- Suppressed a warning
3.2.7
Improvements
Improve parse performance by using
StringScanner
.Improved parse performance when an attribute has many
<
s.Fixes
XPath: Fixed a bug of
normalize_space(array)
.XPath: Fixed a bug that wrong position is used with nested path.
Fixed a bug that an exception message can't be generated for
invalid encoding XML.
3.2.6
Improvements
Required Ruby 2.5 or later explicitly.
GH-69
[Patch by Ivo Anjo]Added documentation for maintenance cycle.
GH-71
[Patch by Ivo Anjo]Improved performance and memory usage.
GH-94
[Patch by fatkodima]
REXML::Parsers::XPathParser#abbreviate
: Added support for
function arguments.
GH-95
[Reported by pulver]
REXML::Parsers::XPathParser#abbreviate
: Added support for string
literal that contains double-quote.
GH-96
[Patch by pulver]
REXML::Parsers::XPathParser#abbreviate
: Added missing/
to
:descendant_or_self/:self/:parent
.
GH-97
[Reported by pulver]
REXML::Parsers::XPathParser#abbreviate
: Added support for more patterns.
GH-97
[Reported by pulver]Fixes
Fixed a typo in NEWS.
GH-72
[Patch by Spencer Goodman]Fixed a typo in NEWS.
GH-75
[Patch by Andrew Bromwich]Fixed documents.
GH-87
[Patch by Alexander Ilyin]Fixed a bug that
Attriute
convert'
and'
even when
attribute_quote: :quote
is used.
GH-92
[Reported by Edouard Brière]Fixed links in tutorial.
GH-99
[Patch by gemmaro]Thanks
Ivo Anjo
Spencer Goodman
Andrew Bromwich
Burdette Lamar
Alexander Ilyin
Edouard Brière
fatkodima
pulver
gemmaro
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.
🆕 strscan (added, 3.1.0)
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)