Node.js will publish new security releases for the 22.x, 24.x, and 26.x lines on Monday, July 27, 2026, or shortly afterward. The project’s pre-release notice confirms that the highest-severity issue addressed will be rated High across all three lines.
The update is not available yet. As of July 25, Node.js has not disclosed the CVEs, affected components, exact patched versions, or technical exploitation details. This advance window is for identifying servers, preparing tests, and reserving maintenance time—not speculating about a vulnerability that remains under coordinated disclosure.
In short: if you run applications, APIs, bots, dashboards, or build tooling on Node.js 22, 24, or 26, prepare your update process. If you still use an EOL release, plan a move to a supported line because the project says end-of-life versions are also considered affected and do not receive public fixes.
What exactly did Node.js announce?
The official Node.js security notice, last updated on July 21, establishes four verifiable facts:
- New releases will be published for Node.js 26.x, 24.x, and 22.x.
- The expected date is July 27, 2026, or shortly afterward.
- The highest severity among the fixed issues will be High in each of the three lines.
- End-of-Life versions are also considered affected when a security release occurs.
The announcement does not call the vulnerability Critical and does not confirm active exploitation. Until the complete advisory, release notes, and CVEs appear, claims about the attack vector, vulnerable module, or precise impact would be speculation.
Node.js release lines involved
| Line | Status on July 25 | Planned end of support | Recommended action |
|---|---|---|---|
| 26.x | Current | April 30, 2029 | Install the fixed release when it becomes available. |
| 24.x | Active LTS | April 30, 2028 | Prepare testing and a priority update. |
| 22.x | Maintenance LTS | April 30, 2027 | Apply the patch or plan a migration to 24.x. |
| 20.x and earlier | EOL | Ended | Move to a supported line; the EOL branch will not receive a public patch. |
The Node.js Release Working Group schedule lists 24.x as Active LTS, 22.x as Maintenance LTS, and 26.x as Current. The project documentation recommends Active LTS or Maintenance LTS lines for production applications.
What is known and what remains unknown
Confirmed information
- A coordinated update is coming for all three supported lines.
- The announced maximum severity is High.
- Binaries are expected on July 27 or shortly afterward.
- EOL installations must migrate instead of waiting for a patch for their branch.
Pending information
- CVE identifiers and CVSS scores.
- Exact affected and fixed versions.
- Involved subsystems, APIs, or configurations.
- Specific mitigations or compatibility changes.
- Evidence of active exploitation.
There is no vulnerability-specific mitigation that can replace the patch yet. Rate limiting, process isolation, firewalls, and monitoring remain useful controls, but they do not fix an undisclosed flaw inside the runtime.
Checklist before July 27
1. Identify the installed version
Run these checks on every server, container, CI runner, and build environment:
node --version
npm --version
command -v node
node -p "process.execPath"
npm update does not update the Node.js runtime. The relevant version is the one returned by node --version inside the process environment that actually runs the application.
2. Locate processes and containers
ps -eo pid,user,cmd | grep '[n]ode'
docker ps --format '{{.Names}}\t{{.Image}}' | grep -i node
pm2 list
Not every command applies to every server. The goal is to find forgotten installations: PM2-managed bots, old Docker images, runners, cron jobs, dashboards, and build tools.
3. Prepare backups and rollback
- Back up code, lockfiles, environment variables, persistent files, and databases.
- If you manage a VPS, create a snapshot before the change.
- Keep the previous container image or artifact available for rollback.
- Record both the current version and the version you intend to install.
4. Define minimum tests
Before deployment, list the routes, WebSockets, background jobs, TLS connections, file uploads, and critical functions that must be tested. Review native modules as well because they may need rebuilding after a runtime change.
How to update after the patches are published
First read the final Node.js advisory and note the fixed release for your branch. Do not copy version numbers from secondary sources before they appear on nodejs.org.
With a version manager
If you use NVM and want to remain on the 24.x line, these commands install the latest available release from that line. Run them only after confirming that the security patch has been published:
nvm install 24
nvm use 24
nvm alias default 24
node --version
Prepare your Node.js environment with full control
Run your applications on a VPS with root access, scalable resources, and the freedom to update the runtime as soon as patches are released.


Replace 24 with 22 or 26 only if that is the line you have deliberately chosen to maintain. For general production use, evaluate an LTS line compatible with your application.
With Docker
Restarting an existing container is not enough: you must pull an image containing the fixed runtime and rebuild your application.
docker pull node:24-bookworm-slim
docker compose build --pull --no-cache
docker compose up -d
docker compose ps
Check the image registry to confirm that the tag already includes the fixed version. For reproducible deployments, pin an exact version or digest afterward instead of relying indefinitely on a moving tag.
With operating-system packages
A distribution or vendor repository may publish its package after the upstream release. Refresh the package index, inspect the candidate version, and verify the result after installation. Do not assume that a general system update guarantees the fixed binary has already reached the repository.
Restart the correct process
pm2 restart all
pm2 status
sudo systemctl restart my-application
sudo systemctl status my-application --no-pager
Use only the process manager that matches your deployment. If the service loads Node.js from a different path than your shell session, inspect the executable configured in systemd, PM2, or the container.
Post-update validation
node --version
npm test
npm run build
curl -I https://your-domain.example
In addition to confirming the version, watch HTTP errors, latency, CPU and memory usage, process restarts, and failures in native modules. Keep the rollback available until testing is complete and the first period of real traffic looks healthy.
What if you use Node.js 20 or an earlier release?
Node.js 20 is listed as EOL on the project’s official releases page. The July announcement states that out-of-support lines are considered affected when a security release occurs, but they do not receive new public builds. The sustainable solution is to migrate to a supported line.
A major-version migration requires testing dependencies, native modules, deprecated APIs, and V8 changes. If you cannot finish before July 27, temporarily reduce the service’s exposure, strengthen proxy limits, and accelerate the migration. Those steps may reduce operational risk, but they do not make an EOL runtime secure.
Recommendations for Node.js on a VPS
- Run the application as an unprivileged user.
- Expose only Nginx, Caddy, or another reverse proxy; avoid publishing the internal Node.js port unnecessarily.
- Restrict ports with a firewall and apply rate limits where appropriate.
- Keep secrets outside the repository and rotate credentials if compromise is suspected.
- Monitor CPU, memory, 5xx responses, and process restarts.
- Automate release notifications without deploying to production without tests.
If you manage a Node.js application on your own infrastructure, Teramont Host VPS plans give you control over the runtime, operating system, proxy, and maintenance windows. Application patching remains the administrator’s responsibility, but snapshots and dedicated resources make testing and rollback easier.
Node.js also powers many Next.js deployments. If you use both, read our guide to the nine vulnerabilities fixed in Next.js 16.2.11 and 15.5.21. Updating Next.js does not update the Node.js runtime, and updating Node.js does not replace a Next.js dependency patch.
Frequently asked questions
Are the Node.js patches available yet?
No, not as of this article’s July 25 publication date. The project expects to publish them on July 27, 2026, or shortly afterward.
What are the CVEs?
They have not been published yet. The advance notice confirms only the involved release lines and a maximum severity of High.
Is active exploitation occurring?
The official notice does not report active exploitation. A lack of public confirmation does not prove zero risk, but it also does not justify claiming that attacks are underway.
Does npm update fix the vulnerability?
No. npm update updates project dependencies within their configured ranges; it does not replace the Node.js binary. Update the runtime through the method used to install it.
Must I move from Node.js 22 to 24 immediately?
Not necessarily. Node.js 22 remains in Maintenance LTS and will receive a fixed release. You should still plan a move to 24.x before 22.x reaches end of support.
Does updating Next.js also update Node.js?
No. They are separate components. Next.js is a project dependency, while Node.js is the runtime that executes the application.
Conclusion
The July 27 alert does not require panic, but it does require preparation. Inventory Node.js versions, find containers and processes, create backups, define tests, and reserve a maintenance window. When Node.js publishes the CVEs and fixed builds, verify the official version, update, rebuild your artifacts, and monitor the deployment.
This article should be updated after the final bulletin appears to add fixed versions, CVEs, detailed severity, mitigations, and any official evidence of exploitation.








