Every CVE Search/ Get API key

CVE-2026-42034

Axios: HTTP adapter streamed uploads bypass maxBodyLength when maxRedirects: 0

5.3 MediumFix available

Axios is a promise based HTTP client for the browser and Node.js. Prior to 1.15.1 and 0.31.1, for stream request bodies, maxBodyLength is bypassed when maxRedirects is set to 0 (native http/https transport path). Oversized streamed uploads are sent fully even when the caller sets strict body limits. This vulnerability is fixed in 1.15.1 and 0.31.1.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
Low

Exploit likelihood

0.33%Up 0.3 points since Apr 25, 2026
90%50%10%1%

What each source reports

CVE List Score used 5.3

Axios: HTTP adapter streamed uploads bypass maxBodyLength when maxRedirects: 0

Axios is a promise based HTTP client for the browser and Node.js. Prior to 1.15.1 and 0.31.1, for stream request bodies, maxBodyLength is bypassed when maxRedirects is set to 0 (native http/https transport path). Oversized streamed uploads are sent fully even when the caller sets strict body limits. This vulnerability is fixed in 1.15.1 and 0.31.1.

Record
CVE-2026-42034
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-770
Updated
2026-11-02
EUVDEUVD-2026-25601 5.3

Axios is a promise based HTTP client for the browser and Node.js. Prior to 1.15.1 and 0.31.1, for stream request bodies, maxBodyLength is bypassed when maxRedirects is set to 0 (native http/https transport path). Oversized streamed uploads are sent fully even when the caller sets strict body limits. This vulnerability is fixed in 1.15.1 and 0.31.1.

Record
EUVD-2026-25601
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Updated
2026-11-02
GitHub AdvisoriesGHSA-5c9x-8gcm-mpgx 5.3

Axios' HTTP adapter-streamed uploads bypass maxBodyLength when maxRedirects: 0

Summary

For stream request bodies, maxBodyLength is bypassed when maxRedirects is set to 0 (native http/https transport path). Oversized streamed uploads are sent fully even when the caller sets strict body limits.

Details

Relevant flow in lib/adapters/http.js:

  • 556-564: maxBodyLength check applies only to buffered/non-stream data.
  • 681-682: maxRedirects === 0 selects native http/https transport.
  • 694-699: options.maxBodyLength is set, but native transport does not enforce it.
  • 925-945: stream is piped directly to socket (data.pipe(req)) with no Axios byte counting.

This creates a path-specific bypass for streamed uploads.

PoC

Environment:

  • Axios main at commit f7a4ee2
  • Node v24.2.0

Steps:

  1. Start an HTTP server that counts uploaded bytes and returns {received}.
  2. Send a 2 MiB Readable stream with:
    • adapter: 'http'
    • maxBodyLength: 1024
    • maxRedirects: 0

Observed:

  • Request succeeds; server reports received: 2097152.

Control checks:

  • Same stream with default/nonzero redirects: rejected with ERR_FR_MAX_BODY_LENGTH_EXCEEDED.
  • Buffered body with maxRedirects: 0: rejected with ERR_BAD_REQUEST.

Impact

Type: DoS / uncontrolled upstream upload / resource exhaustion. Impacted: Node.js services using streamed request bodies with maxBodyLength expecting hard enforcement, especially when following Axios guidance to use maxRedirects: 0 for streams.

Record
GHSA-5c9x-8gcm-mpgx
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-770
Updated
2026-11-02
NVD 5.3

Axios is a promise based HTTP client for the browser and Node.js. Prior to 1.15.1 and 0.31.1, for stream request bodies, maxBodyLength is bypassed when maxRedirects is set to 0 (native http/https transport path). Oversized streamed uploads are sent fully even when the caller sets strict body limits. This vulnerability is fixed in 1.15.1 and 0.31.1.

Record
CVE-2026-42034
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-770
Updated
2026-11-02
OSV 5.3

Axios: HTTP adapter streamed uploads bypass maxBodyLength when maxRedirects: 0

Axios is a promise based HTTP client for the browser and Node.js. Prior to 1.15.1 and 0.31.1, for stream request bodies, maxBodyLength is bypassed when maxRedirects is set to 0 (native http/https transport path). Oversized streamed uploads are sent fully even when the caller sets strict body limits. This vulnerability is fixed in 1.15.1 and 0.31.1.

Record
CVE-2026-42034
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-770
Updated
2026-11-02
OSVDEBIAN-CVE-2026-42034 5.3

Axios is a promise based HTTP client for the browser and Node.js. Prior to 1.15.1 and 0.31.1, for stream request bodies, maxBodyLength is bypassed when maxRedirects is set to 0 (native http/https transport path). Oversized streamed uploads are sent fully even when the caller sets strict body limits. This vulnerability is fixed in 1.15.1 and 0.31.1.

Record
DEBIAN-CVE-2026-42034
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Updated
2026-11-02
Show 20 moreShow less
OSVGHSA-5c9x-8gcm-mpgx 5.3

Axios' HTTP adapter-streamed uploads bypass maxBodyLength when maxRedirects: 0

Summary

For stream request bodies, maxBodyLength is bypassed when maxRedirects is set to 0 (native http/https transport path). Oversized streamed uploads are sent fully even when the caller sets strict body limits.

Details

Relevant flow in lib/adapters/http.js:

  • 556-564: maxBodyLength check applies only to buffered/non-stream data.
  • 681-682: maxRedirects === 0 selects native http/https transport.
  • 694-699: options.maxBodyLength is set, but native transport does not enforce it.
  • 925-945: stream is piped directly to socket (data.pipe(req)) with no Axios byte counting.

This creates a path-specific bypass for streamed uploads.

PoC

Environment:

  • Axios main at commit f7a4ee2
  • Node v24.2.0

Steps:

  1. Start an HTTP server that counts uploaded bytes and returns {received}.
  2. Send a 2 MiB Readable stream with:
    • adapter: 'http'
    • maxBodyLength: 1024
    • maxRedirects: 0

Observed:

  • Request succeeds; server reports received: 2097152.

Control checks:

  • Same stream with default/nonzero redirects: rejected with ERR_FR_MAX_BODY_LENGTH_EXCEEDED.
  • Buffered body with maxRedirects: 0: rejected with ERR_BAD_REQUEST.

Impact

Type: DoS / uncontrolled upstream upload / resource exhaustion. Impacted: Node.js services using streamed request bodies with maxBodyLength expecting hard enforcement, especially when following Axios guidance to use maxRedirects: 0 for streams.

Record
GHSA-5c9x-8gcm-mpgx
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-770
Updated
2026-11-02
OSVROOT-APP-NPM-CVE-2026-42034 5.3

CVE-2026-42034 in axios - Patched by Root

Root has patched CVE-2026-42034 in the axios package for Root:npm. Multiple fixed versions available.

Record
ROOT-APP-NPM-CVE-2026-42034
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Updated
2026-11-06
OSVUBUNTU-CVE-2026-42034 5.3

Axios is a promise based HTTP client for the browser and Node.js. Prior to 1.15.1 and 0.31.1, for stream request bodies, maxBodyLength is bypassed when maxRedirects is set to 0 (native http/https transport path). Oversized streamed uploads are sent fully even when the caller sets strict body limits. This vulnerability is fixed in 1.15.1 and 0.31.1.

Record
UBUNTU-CVE-2026-42034
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Updated
2026-11-02
OSVCLSA-2026-1782521951 No score

TuxCare security update for axios (17 CVEs)

TuxCare rebuilt axios to address 17 CVEs. Fixed in 0.19.2-tuxcare.1.

Record
CLSA-2026-1782521951
Updated
2026-11-02
OSVCLSA-2026-1782781178 No score

TuxCare security update for axios (16 CVEs)

TuxCare rebuilt axios to address 16 CVEs. Fixed in 0.21.1-tuxcare.1.

Record
CLSA-2026-1782781178
Updated
2026-11-02
OSVCLSA-2026-1782867613 No score

TuxCare security update for axios (15 CVEs)

TuxCare rebuilt axios to address 15 CVEs. Fixed in 0.21.4-tuxcare.1.

Record
CLSA-2026-1782867613
Updated
2026-11-02
OSVCLSA-2026-1783040460 No score

TuxCare security update for axios (15 CVEs)

TuxCare rebuilt axios to address 15 CVEs. Fixed in 0.24.0-tuxcare.1.

Record
CLSA-2026-1783040460
Updated
2026-11-02
OSVCLSA-2026-1783299714 No score

TuxCare security update for axios (15 CVEs)

TuxCare rebuilt axios to address 15 CVEs. Fixed in 0.26.1-tuxcare.1.

Record
CLSA-2026-1783299714
Updated
2026-11-02
OSVCLSA-2026-1784769505 No score

TuxCare security update for axios (18 CVEs)

TuxCare rebuilt axios to address 18 CVEs. Fixed in 1.7.7-tuxcare.3.

Record
CLSA-2026-1784769505
Updated
2026-11-02
OSVCLSA-2026-1784769531 No score

TuxCare security update for axios (18 CVEs)

TuxCare rebuilt axios to address 18 CVEs. Fixed in 1.7.5-tuxcare.2.

Record
CLSA-2026-1784769531
Updated
2026-11-02
OSVCLSA-2026-1784856205 No score

TuxCare security update for axios (21 CVEs)

TuxCare rebuilt axios to address 21 CVEs. Fixed in 1.7.9-tuxcare.1.

Record
CLSA-2026-1784856205
Updated
2026-11-02
OSVCLSA-2026-1784943297 No score

TuxCare security update for axios (11 CVEs)

TuxCare rebuilt axios to address 11 CVEs. Fixed in 1.6.2-tuxcare.2.

Record
CLSA-2026-1784943297
Updated
2026-11-02
OSVCLSA-2026-1785468080 No score

TuxCare security update for axios (15 CVEs)

TuxCare rebuilt axios to address 15 CVEs. Fixed in 0.26.0-tuxcare.4.

Record
CLSA-2026-1785468080
Updated
2026-11-02
OSVCLSA-2026-1787930357 No score

TuxCare security update for axios (13 CVEs)

TuxCare rebuilt axios to address 13 CVEs. Fixed in 0.27.2-tuxcare.5.

Record
CLSA-2026-1787930357
Updated
2026-11-02
OSVCLSA-2026-1790764333 No score

TuxCare security update for axios (28 CVEs)

TuxCare rebuilt axios to address 28 CVEs. Fixed in 1.13.5-tuxcare.1.

Record
CLSA-2026-1790764333
Updated
2026-11-02
OSVCLSA-2026-1793101832 No score

TuxCare security update for axios (11 CVEs)

TuxCare rebuilt axios to address 11 CVEs. Fixed in 0.21.2-tuxcare.2.

Record
CLSA-2026-1793101832
Updated
2026-11-06
OSVCLSA-2026-1793101849 No score

TuxCare security update for axios (32 CVEs)

TuxCare rebuilt axios to address 32 CVEs. Fixed in 1.13.2-tuxcare.2.

Record
CLSA-2026-1793101849
Updated
2026-11-02
OSVCLSA-2026-1793110604 No score

TuxCare security update for axios (32 CVEs)

TuxCare rebuilt axios to address 32 CVEs. Fixed in 1.12.2-tuxcare.1.

Record
CLSA-2026-1793110604
Updated
2026-11-02
OSVCLSA-2026-1793358541 No score

TuxCare security update for axios (3 CVEs)

TuxCare rebuilt axios to address 3 CVEs. Fixed in 0.18.0-tuxcare.3.

Record
CLSA-2026-1793358541
Updated
2026-11-02
OSVCLSA-2026-1793874599 No score

TuxCare security update for axios (27 CVEs)

TuxCare rebuilt axios to address 27 CVEs. Fixed in 1.13.6-tuxcare.3.

Record
CLSA-2026-1793874599
Updated
2026-11-05

Affected products

Affected packages

Affected packages
PackageAffectedFixed
axios
npm
1.0.0 up to 1.15.1
1.15.1
axios
npm
through 0.31.0
0.31.1
axios
TuxCare:npm
From an advisory covering 17 CVEs
0.19.2-tuxcare.0 up to 0.19.2-tuxcare.1, plus listed versions
0.19.2
0.19.2-tuxcare.1
axios
TuxCare:npm
From an advisory covering 16 CVEs
0.21.1-tuxcare.0 up to 0.21.1-tuxcare.1, plus listed versions
0.21.1
0.21.1-tuxcare.1
axios
TuxCare:npm
From an advisory covering 15 CVEs
0.21.4-tuxcare.0 up to 0.21.4-tuxcare.1, plus listed versions
0.21.4
0.21.4-tuxcare.1
axios
TuxCare:npm
From an advisory covering 15 CVEs
0.24.0-tuxcare.0 up to 0.24.0-tuxcare.1, plus listed versions
0.24.0
0.24.0-tuxcare.1
axios
TuxCare:npm
From an advisory covering 15 CVEs
0.26.1-tuxcare.0 up to 0.26.1-tuxcare.1, plus listed versions
0.26.1
0.26.1-tuxcare.1
axios
TuxCare:npm
From an advisory covering 18 CVEs
1.7.7-tuxcare.0 up to 1.7.7-tuxcare.3, plus listed versions
1.7.71.7.7-tuxcare.11.7.7-tuxcare.2
1.7.7-tuxcare.3
axios
TuxCare:npm
From an advisory covering 18 CVEs
1.7.5-tuxcare.0 up to 1.7.5-tuxcare.2, plus listed versions
1.7.51.7.5-tuxcare.1
1.7.5-tuxcare.2
axios
TuxCare:npm
From an advisory covering 21 CVEs
1.7.9-tuxcare.0 up to 1.7.9-tuxcare.1, plus listed versions
1.7.9
1.7.9-tuxcare.1
Show 21 moreShow less
Affected packages
PackageAffectedFixed
axios
TuxCare:npm
From an advisory covering 11 CVEs
1.6.2-tuxcare.0 up to 1.6.2-tuxcare.2, plus listed versions
1.6.21.6.2-tuxcare.1
1.6.2-tuxcare.2
axios
TuxCare:npm
From an advisory covering 14 CVEs
0.26.0-tuxcare.0 up to 0.26.0-tuxcare.4, plus listed versions
0.26.00.26.0-tuxcare.10.26.0-tuxcare.20.26.0-tuxcare.3
0.26.0-tuxcare.4
axios
TuxCare:npm
From an advisory covering 13 CVEs
0.27.2-tuxcare.0 up to 0.27.2-tuxcare.5, plus listed versions
0.27.20.27.2-tuxcare.10.27.2-tuxcare.20.27.2-tuxcare.30.27.2-tuxcare.4
0.27.2-tuxcare.5
axios
TuxCare:npm
From an advisory covering 28 CVEs
1.13.5-tuxcare.0 up to 1.13.5-tuxcare.1, plus listed versions
1.13.5
1.13.5-tuxcare.1
axios
TuxCare:npm
From an advisory covering 11 CVEs
0.21.2-tuxcare.0 up to 0.21.2-tuxcare.2, plus listed versions
0.21.20.21.2-tuxcare.1
0.21.2-tuxcare.2
axios
TuxCare:npm
From an advisory covering 32 CVEs
1.13.2-tuxcare.0 up to 1.13.2-tuxcare.2, plus listed versions
1.13.21.13.2-tuxcare.1
1.13.2-tuxcare.2
axios
TuxCare:npm
From an advisory covering 32 CVEs
1.12.2-tuxcare.0 up to 1.12.2-tuxcare.1, plus listed versions
1.12.2
1.12.2-tuxcare.1
axios
TuxCare:npm
From an advisory covering 3 CVEs
0.18.0-tuxcare.0 up to 0.18.0-tuxcare.3, plus listed versions
0.18.00.18.0-tuxcare.10.18.0-tuxcare.2
0.18.0-tuxcare.3
axios
TuxCare:npm
From an advisory covering 27 CVEs
1.13.6-tuxcare.0 up to 1.13.6-tuxcare.3, plus listed versions
1.13.61.13.6-tuxcare.11.13.6-tuxcare.2
1.13.6-tuxcare.3
node-axios
Debian:12
All versions, plus listed versions
1.11.0+dfsg-11.12.1+dfsg-11.13.1+dfsg-11.13.2+dfsg-11.14.0+dfsg-1
Show 17 moreShow less
1.15.0-11.15.2-11.16.0-11.18.0-11.19.0-11.2.1+dfsg-11.2.1+dfsg-1+deb12u11.20.0-11.5.1+dfsg-11.6.2+dfsg-11.6.8+dfsg-11.6.8+dfsg-21.7.3+dfsg-11.7.4+dfsg-11.7.7+dfsg-11.7.9+dfsg-11.8.4+dfsg-1
None known
node-axios
Debian:13
All versions, plus listed versions
1.11.0+dfsg-11.12.1+dfsg-11.13.1+dfsg-11.13.2+dfsg-11.14.0+dfsg-1
Show 7 moreShow less
1.15.0-11.15.2-11.16.0-11.18.0-11.19.0-11.20.0-11.8.4+dfsg-1
None known
node-axios
Debian:14
before 1.15.2-1, plus listed versions
1.11.0+dfsg-11.12.1+dfsg-11.13.1+dfsg-11.13.2+dfsg-11.14.0+dfsg-11.15.0-11.8.4+dfsg-1
1.15.2-1
axios
npm
before 0.31.1
0.31.1
axios
Root:npm
before 1.13.5-aikido.6
1.13.5-aikido.61.12.0-aikido.81.13.5-aikido.71.13.2-aikido.71.13.5-aikido.81.12.1-aikido.181.13.5-aikido.91.13.5-aikido.101.12.0-aikido.91.13.2-aikido.81.8.4-aikido.91.12.0-aikido.100.21.4-aikido.71.12.1-aikido.191.13.5-aikido.111.13.2-aikido.91.13.5-aikido.121.13.4-aikido.61.12.1-aikido.200.21.4-aikido.81.13.5-aikido.131.13.4-aikido.71.8.4-aikido.101.12.0-aikido.111.13.2-aikido.100.21.1-aikido.51.2.1-aikido.41.15.0-aikido.91.15.0-aikido.101.15.0-aikido.111.14.0-aikido.71.15.0-aikido.120.27.2-aikido.80.27.2-aikido.90.27.2-aikido.101.14.0-aikido.81.14.0-aikido.91.14.0-aikido.101.12.2-aikido.71.7.9-aikido.91.7.9-aikido.101.13.4-aikido.81.8.3-aikido.81.15.0-aikido.131.13.2-aikido.111.12.0-aikido.121.7.9-aikido.111.8.4-aikido.111.13.5-aikido.141.8.3-aikido.91.14.0-aikido.111.2.1-aikido.51.12.2-aikido.81.15.0-aikido.141.12.2-aikido.91.12.2-aikido.101.12.2-aikido.110.21.4-aikido.91.7.9-aikido.120.27.2-aikido.111.13.2-aikido.121.11.0-aikido.131.8.4-aikido.121.7.9-aikido.131.15.1-aikido.11.15.1-aikido.2
@rootio/axios
Root:npm
before 1.13.5-root.io.5
1.13.5-root.io.51.12.0-root.io.71.13.2-root.io.61.13.5-root.io.61.12.0-root.io.81.13.5-root.io.71.13.2-root.io.71.13.5-root.io.81.12.1-root.io.181.13.5-root.io.91.13.5-root.io.101.12.0-root.io.91.13.2-root.io.81.8.4-root.io.91.12.0-root.io.100.21.4-root.io.71.12.1-root.io.191.13.5-root.io.111.13.2-root.io.91.13.5-root.io.121.13.4-root.io.61.12.1-root.io.200.21.4-root.io.81.13.5-root.io.131.13.4-root.io.71.8.4-root.io.101.12.0-root.io.111.13.2-root.io.100.21.1-root.io.51.2.1-root.io.41.15.0-root.io.91.15.0-root.io.101.15.0-root.io.111.14.0-root.io.71.15.0-root.io.120.27.2-root.io.80.27.2-root.io.90.27.2-root.io.101.14.0-root.io.81.14.0-root.io.91.14.0-root.io.101.12.2-root.io.71.7.9-root.io.91.7.9-root.io.101.13.4-root.io.81.8.3-root.io.81.15.0-root.io.131.13.2-root.io.111.12.0-root.io.121.7.9-root.io.111.8.4-root.io.111.13.5-root.io.141.8.3-root.io.91.14.0-root.io.111.2.1-root.io.51.12.2-root.io.81.15.0-root.io.141.12.2-root.io.91.12.2-root.io.101.12.2-root.io.110.21.4-root.io.91.7.9-root.io.120.27.2-root.io.111.13.2-root.io.121.11.0-root.io.131.8.4-root.io.121.7.9-root.io.131.15.1-root.io.11.15.1-root.io.2
node-axios
Ubuntu:Pro:20.04:LTS
All versions, plus listed versions
0.19.0+dfsg-20.19.0+dfsg-2ubuntu0.1~esm1
None known
node-axios
Ubuntu:Pro:22.04:LTS
All versions, plus listed versions
0.21.1+dfsg-10.23.0+dfsg-20.24.0+dfsg-10.25.0+dfsg-20.26.0+dfsg-10.26.0+dfsg-1ubuntu0.1~esm1
None known
node-axios
Ubuntu:Pro:24.04:LTS
All versions, plus listed versions
1.2.1+dfsg-11.5.1+dfsg-11.6.2+dfsg-11.6.8+dfsg-21.6.8+dfsg-2ubuntu0.1~esm1
None known
node-axios
Ubuntu:25.10
All versions, plus listed versions
1.7.9+dfsg-11.8.4+dfsg-11.11.0+dfsg-1
None known
node-axios
Ubuntu:26.10
All versions, plus listed versions
1.13.2+dfsg-1build11.16.0-11.18.0-11.19.0-1
None known
node-axios
Ubuntu:Pro:26.04:LTS
All versions, plus listed versions
1.11.0+dfsg-11.12.1+dfsg-11.13.2+dfsg-1build11.13.2+dfsg-1ubuntu0.1~esm1
None known

History

History
RecordedChangedSources
affectedOSV
affectedOSV
affectedOSV
affected, aliases, factsOSV
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-42034 is a medium vulnerability (CVSS 5.3) in Axios, published April 24, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.33%, the 25th percentile. Fixed in axios 1.15.1.

References

MoveEnter Open