chore(deps): update dependency nokogiri to v1.19.3 [security]#3402
chore(deps): update dependency nokogiri to v1.19.3 [security]#3402renovate-bot wants to merge 1 commit into
Conversation
|
/gcbrun |
There was a problem hiding this comment.
Code Review
This pull request updates the nokogiri gem from version 1.18.9 to 1.19.2 in the Gemfile.lock. A review comment highlights a discrepancy between the version implemented in the code and the version referenced in the pull request title and description, suggesting that the metadata be updated to ensure a clear audit trail.
| net-ssh (>= 4.0.0) | ||
| netrc (0.11.0) | ||
| nokogiri (1.18.9) | ||
| nokogiri (1.19.2) |
There was a problem hiding this comment.
There is a discrepancy between the version updated in the code (1.19.2) and the version mentioned in the pull request title and description (1.19.1). While 1.19.2 is a newer version that includes the required security fix, the PR metadata should be updated to accurately reflect the changes being merged to maintain a clear audit trail.
395c97f to
837bcbf
Compare
|
/gcbrun |
837bcbf to
3ee252c
Compare
|
/gcbrun |
3ee252c to
653fca1
Compare
|
/gcbrun |
653fca1 to
28d09fe
Compare
|
/gcbrun |
28d09fe to
d7fbf95
Compare
|
/gcbrun |
d7fbf95 to
d7491ae
Compare
|
/gcbrun |
d7491ae to
cc347f0
Compare
|
/gcbrun |
cc347f0 to
ee3f178
Compare
|
/gcbrun |
ee3f178 to
6149c89
Compare
|
/gcbrun |
6149c89 to
03e8917
Compare
|
/gcbrun |
03e8917 to
e8447e9
Compare
|
/gcbrun |
This PR contains the following updates:
1.18.9→1.19.3Nokogiri does not check the return value from xmlC14NExecute
GHSA-wx95-c6cv-8532
More information
Details
Summary
Nokogiri's CRuby extension fails to check the return value from
xmlC14NExecutein the methodNokogiri::XML::Document#canonicalizeandNokogiri::XML::Node#canonicalize. When canonicalization fails, an empty string is returned instead of raising an exception. This incorrect return value may allow downstream libraries to accept invalid or incomplete canonicalized XML, which has been demonstrated to enable signature validation bypass in SAML libraries.JRuby is not affected, as the Java implementation correctly raises
RuntimeErroron canonicalization failure.Mitigation
Upgrade to Nokogiri
>= 1.19.1.Severity
The maintainers have assessed this as Medium severity. Nokogiri itself is a parsing library without a clear security boundary related to canonicalization, so the direct impact is that a method returns incorrect data on invalid input. However, this behavior was exploited in practice to bypass SAML signature validation in downstream libraries (see References).
Credit
This vulnerability was responsibly reported by HackerOne researcher
d4d.Severity
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Nokogiri CSS selector tokenizer has regular expression backtracking
GHSA-c4rq-3m3g-8wgx
More information
Details
Summary
Nokogiri's CSS selector tokenizer contains regular expressions whose construction may result in exponential regex backtracking on adversarial selectors. Three ReDoS vectors are addressed in this release:
The public CSS selector methods that funnel through the affected tokenizer are
Nokogiri::CSS.xpath_for,Node#css,Node#at_css,Searchable#search, andCSS::Parser#parse.Mitigation
Upgrade to Nokogiri
>= 1.19.3.If users are unable to upgrade, two options are available:
Regexp.timeout(Ruby 3.2+, JRuby 9.4+) to bound parse time.Severity
The Nokogiri maintainers have evaluated this as High Severity (CVSS 7.5,
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H).An attacker able to inject user-supplied text into a CSS selector parse method can cause exponential backtracking, resulting in a potential denial of service.
Resources
Credit
Vector 1 was responsibly reported by @colby-swandale. Vectors 2 and 3 were discovered by @flavorjones during the response to the original report.
Severity
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Nokogiri XSLT transform has a memory leak
GHSA-v2fc-qm4h-8hqv
More information
Details
Summary
Nokogiri's
Nokogiri::XSLT::Stylesheet#transformleaks a small heap allocation when passed a Ruby string parameter containing a null byte.For applications that pass attacker-controlled input through
XSLT.transformparameters, this may be a vector for a denial of service attack against long-running processes.Mitigation
Upgrade to Nokogiri
>= 1.19.3.Users may also be able to mitigate this issue without upgrading by validating untrusted transform parameters before passing them to
Nokogiri::XSLT::Stylesheet#transform.Severity
The Nokogiri maintainers have evaluated this as Moderate Severity, CVSS 5.3.
Each leaked allocation is approximately 24–32 bytes, so meaningful memory growth requires sustained attacker-controlled traffic at high call rates. The bug does not cause memory corruption, information disclosure, or any change in the behavior of the transform itself, and the string-handling exception is raised as expected.
Applications that do not pass raw attacker-controlled bytes to XSLT parameters are unlikely to be affected in practice.
Resources
Credit
This vulnerability was responsibly reported by @Captainjack-kor.
Severity
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:LReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.