Skip to content

chore(deps): update dependency @apollo/server to v4.13.0 [security]#1740

Merged
renovate[bot] merged 1 commit intomasterfrom
renovate/npm-apollo-server-vulnerability
Feb 6, 2026
Merged

chore(deps): update dependency @apollo/server to v4.13.0 [security]#1740
renovate[bot] merged 1 commit intomasterfrom
renovate/npm-apollo-server-vulnerability

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Feb 5, 2026

This PR contains the following updates:

Package Change Age Confidence
@apollo/server (source) 4.12.24.13.0 age confidence

GitHub Vulnerability Alerts

CVE-2026-23897

Impact

The default configuration of startStandaloneServer from @apollo/server/standalone is vulnerable to Denial of Service (DoS) attacks through specially crafted request bodies with exotic character set encodings.

This issue does not affect users that use @apollo/server as a dependency for integration packages, like @as integrations/express5 or @as-integrations/next, only direct usage of startStandaloneServer.

Who is impacted

Users directly using startStandaloneServer from @apollo/server/standalone.

This issue affects Apollo Server from v5.0.0 through v5.3.x.

It also affects all releases of the end-of-life major versions v4, v3, and v2. Although Apollo Server v4 is EOL and Apollo no longer commits to providing support or updates for it, a fix for it was released in v4.13.0. Apollo Server v3 and v2 are no longer updated, as they have been EOL since 2024 and 2023 respectively.

Patches

Patches for this issue are released as @apollo/server versions 5.4.0 and 4.13.0.

In accordance with RFC 7159, these versions now only accept request bodies encoded in UTF-8, UTF-16 (LE or BE), or UTF-32 (LE or BE). Any other character set will be rejected with a 415 Unsupported Media Type error. Note that the more recent JSON RFC, [RFC 8259 (https://datatracker.ietf.org/doc/html/rfc8259#section-8.1), is more strict and will only allow UTF-8. Since this is a minor release, we have chosen to remain compatible with the more permissive RFC 7159 for now. In a future major release, the restriction may be tightened further to only allow UTF-8.

Workarounds

Users of apollo-server v2 or v3 that cannot upgrade for some reason could switch from the standalone apollo-server
package to an integration package like apollo-server-express or apollo-server-koa and set up their own server. Please note that these old packages are generally EOL and do not receive any more support or bug fixes. This can only be seen as a short-term workaround. Updating to @apollo/server v5 should be a priority.


Release Notes

apollographql/apollo-server (@​apollo/server)

v4.13.0

Compare Source

Minor Changes
  • #​8180 e9d49d1 Thanks @​github-actions! - ⚠️ SECURITY @apollo/server/standalone:

    The default configuration of startStandaloneServer was vulnerable to denial of service (DoS) attacks through specially crafted request bodies with exotic character set encodings.

    In accordance with RFC 7159, we now only accept request bodies encoded in UTF-8, UTF-16 (LE or BE), or UTF-32 (LE or BE).
    Any other character set will be rejected with a 415 Unsupported Media Type error.
    Additionally, upstream libraries used by this version of Apollo Server may not support all of these encodings, so some requests may still fail even if they pass this check.

    If you were not using startStandaloneServer, you were not affected by this vulnerability.

    Generally, please note that we provide startStandaloneServer as a convenience tool for quickly getting started with Apollo Server.
    For production deployments, we recommend using Apollo Server with a more fully-featured web server framework such as Express, Koa, or Fastify, where you have more control over security-related configuration options.

    Also please note that Apollo Server 4.x is considered EOL as of January 26, 2026, and Apollo no longer commits to providing support or updates for it. Please prioritize migrating to Apollo Server 5.x for continued support and updates.


Configuration

📅 Schedule: Branch creation - "" in timezone Europe/London, Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

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.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@cypress
Copy link

cypress bot commented Feb 5, 2026

BanManager-WebUI    Run #9832

Run Properties:  status check passed Passed #9832  •  git commit 759314dace ℹ️: Merge b63122d4533eb479d8b5fd81d3aff381c06b3d49 into 4a27ee0ab2f05cbb3623327e3a46...
Project BanManager-WebUI
Branch Review renovate/npm-apollo-server-vulnerability
Run status status check passed Passed #9832
Run duration 00m 45s
Commit git commit 759314dace ℹ️: Merge b63122d4533eb479d8b5fd81d3aff381c06b3d49 into 4a27ee0ab2f05cbb3623327e3a46...
Committer renovate[bot]
View all properties for this run ↗︎

Test results
Tests that failed  Failures 0
Tests that were flaky  Flaky 0
Tests that did not run due to a developer annotating a test with .skip  Pending 0
Tests that did not run due to a failure in a mocha hook  Skipped 0
Tests that passed  Passing 26
View all changes introduced in this branch ↗︎

@renovate renovate bot merged commit 530b76a into master Feb 6, 2026
6 checks passed
@renovate renovate bot deleted the renovate/npm-apollo-server-vulnerability branch February 6, 2026 00:56
@cypress
Copy link

cypress bot commented Feb 6, 2026

BanManager-WebUI    Run #9835

Run Properties:  status check passed Passed #9835  •  git commit 530b76a4fe: chore(deps): update dependency @apollo/server to v4.13.0 [security] (#1740)
Project BanManager-WebUI
Branch Review master
Run status status check passed Passed #9835
Run duration 00m 47s
Commit git commit 530b76a4fe: chore(deps): update dependency @apollo/server to v4.13.0 [security] (#1740)
Committer renovate[bot]
View all properties for this run ↗︎

Test results
Tests that failed  Failures 0
Tests that were flaky  Flaky 0
Tests that did not run due to a developer annotating a test with .skip  Pending 0
Tests that did not run due to a failure in a mocha hook  Skipped 0
Tests that passed  Passing 26
View all changes introduced in this branch ↗︎

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants