fix(deps): update dependency fast-xml-parser to v5 [security] #1910
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^4.5.0→^5.0.0Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
GitHub Vulnerability Alerts
CVE-2026-25128
Summary
A RangeError vulnerability exists in the numeric entity processing of fast-xml-parser when parsing XML with out-of-range entity code points (e.g.,
&#​9999999;or�). This causes the parser to throw an uncaught exception, crashing any application that processes untrusted XML input.Details
The vulnerability exists in
/src/xmlparser/OrderedObjParser.jsat lines 44-45:The
String.fromCodePoint()method throws aRangeErrorwhen the code point exceeds the valid Unicode range (0 to 0x10FFFF / 1114111). The regex patterns can capture values far exceeding this:[0-9]{1,7}matches up to 9,999,999[0-9a-fA-F]{1,6}matches up to 0xFFFFFF (16,777,215)The entity replacement in
replaceEntitiesValue()(line 452) has no try-catch:This causes the RangeError to propagate uncaught, crashing the parser and any application using it.
PoC
Setup
Create a directory with these files:
package.json
{ "dependencies": { "fast-xml-parser": "^5.3.3" } }server.js
Run
Result
Server crashes with:
Alternative Payloads
Impact
Denial of Service (DoS):* Any application using fast-xml-parser to process untrusted XML input will crash when encountering malformed numeric entities. This affects:
A single malicious request is sufficient to crash the entire Node.js process, causing service disruption until manual restart.
Release Notes
NaturalIntelligence/fast-xml-parser (fast-xml-parser)
v5.3.4: fix: handle HTML numeric and hex entities when out of rangeCompare Source
v5.3.3: bug fix and performance improvementsCompare Source
v5.3.2Compare Source
v5.3.1Compare Source
v5.3.0Compare Source
v5.2.5Compare Source
v5.2.4Compare Source
v5.2.3Compare Source
v5.2.2: upgrade to ESM module and fixing value parsing issuesCompare Source
Full Changelog: https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/CHANGELOG.md
v5.2.1Compare Source
v5.2.0Compare Source
v5.1.0Compare Source
5.0.9 / 2025-03-14
5.0.8 / 2025-02-27
5.0.7 / 2025-02-25
5.0.6 / 2025-02-20
5.0.5 / 2025-02-20
5.0.4 / 2025-02-20
5.0.3 / 2025-02-20
5.0.2 / 2025-02-20
5.0.1 / 2025-02-19
5.0.0 / 2025-02-19
4.5.2 / 2025-02-18
4.5.1 / 2024-12-15
4.5.0 / 2024-09-03
4.4.1 / 2024-07-28
4.4.0 / 2024-05-18
tagValueProcessor&attributeValueProcessor(#582) (By monholm)4.3.6 / 2024-03-16
4.3.5 / 2024-02-24
4.3.4 / 2024-01-10
4.3.3 / 2024-01-10
4.3.2 / 2023-10-02
jObj.hasOwnPropertywhen give input is null (By Arda TANRIKULU)4.3.1 / 2023-09-24
4.3.0 / 2023-09-20
4.2.7 / 2023-07-30
4.2.6 / 2023-07-17
4.2.5 / 2023-06-22
4.2.4 / 2023-06-06
4.2.3 / 2023-06-05
4.2.2 / 2023-04-18
4.2.1 / 2023-04-18
4.2.0 / 2023-04-09
updateTagparser property4.1.4 / 2023-04-08
oneListGroupto group repeated children tags udder single group4.1.3 / 2023-02-26
4.1.2 / 2023-02-12
4.1.1 / 2023-02-03
4.1.0 / 2023-02-02
4.0.15 / 2023-01-25
4.0.14 / 2023-01-22
4.0.13 / 2023-01-07
transformAttributeName(By Erik Rothoff Andersson)4.0.12 / 2022-11-19
4.0.11 / 2022-10-05
4.0.10 / 2022-09-14
4.0.9 / 2022-07-10
4.0.8 / 2022-05-28
4.0.7 / 2022-03-18
4.0.6 / 2022-03-08
4.0.5 / 2022-03-06
4.0.4 / 2022-03-03
4.0.3 / 2022-02-15
4.0.2 / 2022-02-04
suppressUnpairedNodeignoreDeclarationandignorePiTags<!--> ...#423&4.0.1 / 2022-01-08
4.0.0 / 2022-01-06
esmbranch.4.0.0-beta.8 / 2021-12-13
4.0.0-beta.7 / 2021-12-09
4.0.0-beta.6 / 2021-12-05
suppressBooleanAttributesby XML Builder for attributes with valuetrue.4.0.0-beta.5 / 2021-12-04
4.0.0-beta.4 / 2021-12-02
4.0.0-beta.3 / 2021-11-30
attrMaptoattibutesin parser output whenpreserveOrder:truecdataTagNametocdataPropNamecommentPropNameattrNodeNametoattributesGroupNameattrValueProcessortoattributeValueProcessorparseNodeValuetoparseTagValueignoreNameSpacetoremoveNSPrefixnumParseOptionstonumberParseOptionssuppressEmptyNodeisArrayoption is added to parse a tag into arraypreserveOrderoption is added to render XML in such a way that the result js Object maintains the order of properties same as in XML.tagValueProcessorandattributeValueProcessorare changes with extra input parameters3.21.1 / 2021-10-31
3.21.0 / 2021-10-25
rootNodeNameto set tag name for array input when converting js object to XML.alwaysCreateTextNodeto force text node creation (by: @massimo-ua){ InvalidXml: "Invalid '[ \"rootNode\"]' found." }→{InvalidTag: "Unclosed tag 'rootNode'."}{ InvalidTag: "Closing tag 'rootNode' is expected inplace of 'rootnode'." }→{ InvalidTag: "Expected closing tag 'rootNode' (opened in line 1) instead of closing tag 'rootnode'."}3.20.1 / 2021-09-25
3.20.0 / 2021-09-10
3.19.0 / 2021-03-14
3.18.0 / 2021-02-05
3.17.4 / 2020-06-07
<tag >space as attribute string3.17.3 / 2020-05-23
3.17.2 / 2020-05-23
3.17.1 / 2020-05-19
3.17.0 / 2020-05-18
3.16.0 / 2020-01-12
3.15.1 / 2019-12-09
3.15.0 / 2019-11-23
3.14.0 / 2019-10-25
3.13.0 / 2019-10-02
3.12.21 / 2019-10-02
3.12.20 / 2019-08-16
3.12.19 / 2019-07-28
tagValueProcessorwill receive the original value instead of string always) (breaking change)3.12.18 / 2019-07-27
3.12.17 / 2019-07-14
3.12.16 / 2019-03-23
Accept the list of tags which are not required to be parsed. Instead, all the nested tag and data will be assigned as string.
3.12.12 / 2019-01-11
3.12.11 / 2018-12-24
3.12.9 / 2018-11-23
3.12.8 / 2018-11-22
3.12.6 / 2018-11-10
3.12.4 / 2018-09-12
3.12.3 / 2018-09-12
3.12.2 / 2018-09-11
3.12.0 / 2018-08-06
3.11.2 / 2018-07-23
3.11.1 / 2018-06-05
3.11.0 / 2018-05-20
3.10.0 / 2018-05-13
3.9.11 / 2018-05-09
3.3.10 / 2018-04-23
3.3.9 / 2018-04-18
3.3.8 / 2018-04-17
3.3.7 / 2018-04-14
#71 from bb/master
first draft of typings for typescript
#69
#70 from bb/patch-1
fix some typos in readme
3.3.6 / 2018-03-21
3.3.5 / 2018-03-15
3.3.4 / 2018-03-14
3.3.0 / 2018-03-05
parseToNimnmethod.with more light opencollective-postinstall"
This reverts commit
d47aa71.Keep undefined nodes out of the XML output : This is useful when you are deleting nodes from the JSON and rewriting XML.
3.2.4 / 2018-03-01
3.2.3 / 2018-02-28
3.2.2 / 2018-02-22
3.2.1 / 2018-02-17
3.2.0 / 2018-02-16
3.0.1 / 2018-02-09
3.0.0 / 2018-02-08
2.9.4 / 2018-02-02
2.9.3 / 2018-01-26
2.9.2 / 2018-01-18
2.9.1 / 2018-01-16
2.9.0 / 2018-01-10
Ignore DOCTYPE validation.
2.8.3 / 2017-12-15
2.8.2 / 2017-12-04
2.8.1 / 2017-12-01
2.8.0 / 2017-11-29
2.7.4 / 2017-09-22
2.7.3 / 2017-08-02
2.7.2 / 2017-07-30
2.7.1 / 2017-07-26
2.7.0 / 2017-07-25
2.6.0 / 2017-07-14
2.5.1 / 2017-07-01
2.5.0 / 2017-06-25
2.4.4 / 2017-06-08
2.4.3 / 2017-06-05
2.4.1 / 2017-04-14
2.3.1 / 2017-03-15
2.3.0 / 2017-02-26
2.2.1 / 2017-02-05
v5.0.9Compare Source
v5.0.8: Summary update on all the previous releases from v4.2.4Compare Source
Note: Release section in not updated frequently. Please check CHANGELOG or Tags for latest release information.
v5.0.7Compare Source
v5.0.6Compare Source
v5.0.5Compare Source
v5.0.4Compare Source
v5.0.3Compare Source
v5.0.2Compare Source
v5.0.1Compare Source
v5.0.0Compare Source
Configuration
📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, 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.