Lookup for vulnerable packages by Package URL.
| Purl | pkg:npm/%40nestjs/platform-fastify@7.0.7 |
| Type | npm |
| Namespace | @nestjs |
| Name | platform-fastify |
| Version | 7.0.7 |
| Qualifiers |
|
| Subpath | |
| Is_vulnerable | true |
| Next_non_vulnerable_version | 11.1.16 |
| Latest_non_vulnerable_version | 11.1.16 |
| Affected_by_vulnerabilities |
| 0 |
| url |
VCID-71ms-9bju-77a8 |
| vulnerability_id |
VCID-71ms-9bju-77a8 |
| summary |
Nest Fastify HEAD Request Middleware Bypass
### Impact
In a NestJS application using `@nestjs/platform-fastify`, GET middleware can be bypassed because Fastify automatically redirects HEAD requests to the corresponding GET handlers (if they exist).
As a result:
- Middleware will be completely skipped.
- The HTTP response won't include a body (since the response is truncated when redirecting a HEAD request to a GET handler).
- The actual handler will still be executed.
### Patches
Fixed in `@nestjs/platform-fastify@11.1.16` |
| references |
| 0 |
| reference_url |
https://api.first.org/data/v1/epss?cve=CVE-2026-33011 |
| reference_id |
|
| reference_type |
|
| scores |
| 0 |
| value |
0.00043 |
| scoring_system |
epss |
| scoring_elements |
0.13545 |
| published_at |
2026-06-07T12:55:00Z |
|
| 1 |
| value |
0.00043 |
| scoring_system |
epss |
| scoring_elements |
0.1349 |
| published_at |
2026-06-09T12:55:00Z |
|
| 2 |
| value |
0.00043 |
| scoring_system |
epss |
| scoring_elements |
0.13459 |
| published_at |
2026-06-08T12:55:00Z |
|
| 3 |
| value |
0.00043 |
| scoring_system |
epss |
| scoring_elements |
0.13587 |
| published_at |
2026-06-06T12:55:00Z |
|
| 4 |
| value |
0.00043 |
| scoring_system |
epss |
| scoring_elements |
0.13582 |
| published_at |
2026-06-05T12:55:00Z |
|
|
| url |
https://api.first.org/data/v1/epss?cve=CVE-2026-33011 |
|
| 1 |
|
| 2 |
|
| 3 |
|
| 4 |
|
| 5 |
|
| 6 |
|
|
| fixed_packages |
|
| aliases |
CVE-2026-33011, GHSA-wf42-42fg-fg84
|
| risk_score |
4.0 |
| exploitability |
0.5 |
| weighted_severity |
8.0 |
| resource_url |
http://public2.vulnerablecode.io/vulnerabilities/VCID-71ms-9bju-77a8 |
|
| 1 |
| url |
VCID-7jtv-1fb5-bfa4 |
| vulnerability_id |
VCID-7jtv-1fb5-bfa4 |
| summary |
Duplicate Advisory: Nest has a Fastify URL Encoding Middleware Bypass
## Duplicate Advisory
This advisory has been withdrawn because it is a duplicate of GHSA-r4wm-x892-vjmx. This link is maintained to preserve external references.
## Original Description
A NestJS application using @nestjs/platform-fastify can allow bypass of authentication/authorization middleware when Fastify path-normalization options are enabled.
This issue affects nest.Js: 11.1.13. |
| references |
| 0 |
| reference_url |
https://fluidattacks.com/advisories/neton |
| reference_id |
|
| reference_type |
|
| scores |
| 0 |
| value |
8.2 |
| scoring_system |
cvssv4 |
| scoring_elements |
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
|
| 1 |
| value |
HIGH |
| scoring_system |
generic_textual |
| scoring_elements |
|
|
|
| url |
https://fluidattacks.com/advisories/neton |
|
| 1 |
| reference_url |
https://github.com/nestjs/nest |
| reference_id |
|
| reference_type |
|
| scores |
| 0 |
| value |
8.2 |
| scoring_system |
cvssv4 |
| scoring_elements |
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
|
| 1 |
| value |
HIGH |
| scoring_system |
generic_textual |
| scoring_elements |
|
|
|
| url |
https://github.com/nestjs/nest |
|
| 2 |
|
| 3 |
|
| 4 |
|
|
| fixed_packages |
|
| aliases |
GHSA-7q64-3rg2-h9pf
|
| risk_score |
4.0 |
| exploitability |
0.5 |
| weighted_severity |
8.0 |
| resource_url |
http://public2.vulnerablecode.io/vulnerabilities/VCID-7jtv-1fb5-bfa4 |
|
| 2 |
| url |
VCID-ax3k-md7j-4bcx |
| vulnerability_id |
VCID-ax3k-md7j-4bcx |
| summary |
Nest has a Fastify URL Encoding Middleware Bypass
_What kind of vulnerability is it? Who is impacted?_
A NestJS application using `@nestjs/platform-fastify` can allow bypass of any middleware when Fastify path-normalization options (e.g., `ignoreTrailingSlash`, `ignoreDuplicateSlashes`, `useSemicolonDelimiter`) are enabled. In affected route-scoped middleware setups, variant paths may skip middleware checks while still reaching the protected handler.
The bug is a path canonicalization mismatch between middleware matching and route matching in Nest’s Fastify adapter.
Nest passes Fastify routerOptions (such as `ignoreTrailingSlash`, `ignoreDuplicateSlashes`, `useSemicolonDelimiter`) to the Fastify router in packages/platform-fastify/adapters/fastify-adapter.ts:253.
But middleware execution is decided by a separate regex check over `req.originalUrl` in packages/platform-fastify/adapters/fastify-adapter.ts:706 and packages/platform-fastify/adapters/fastify-adapter.ts:713.
If that regex does not match, Nest does `next()` and skips the middleware (packages/platform-fastify/adapters/fastify-adapter.ts:714), while Fastify may still normalize the same path and route it to the protected handler. So the vulnerability exists because security checks (middleware) and request dispatch(router) use different URL interpretations.
This is a fail-open design issue (inconsistent normalization), not just a bad app config: non-default router options make the mismatch reachable. |
| references |
| 0 |
|
| 1 |
| reference_url |
https://api.first.org/data/v1/epss?cve=CVE-2026-2293 |
| reference_id |
|
| reference_type |
|
| scores |
| 0 |
| value |
0.00431 |
| scoring_system |
epss |
| scoring_elements |
0.62956 |
| published_at |
2026-06-09T12:55:00Z |
|
| 1 |
| value |
0.00431 |
| scoring_system |
epss |
| scoring_elements |
0.62953 |
| published_at |
2026-06-05T12:55:00Z |
|
| 2 |
| value |
0.00431 |
| scoring_system |
epss |
| scoring_elements |
0.62962 |
| published_at |
2026-06-06T12:55:00Z |
|
| 3 |
| value |
0.00431 |
| scoring_system |
epss |
| scoring_elements |
0.62951 |
| published_at |
2026-06-07T12:55:00Z |
|
| 4 |
| value |
0.00431 |
| scoring_system |
epss |
| scoring_elements |
0.62938 |
| published_at |
2026-06-08T12:55:00Z |
|
|
| url |
https://api.first.org/data/v1/epss?cve=CVE-2026-2293 |
|
| 2 |
| reference_url |
https://fluidattacks.com/advisories/neton |
| reference_id |
|
| reference_type |
|
| scores |
| 0 |
| value |
8.2 |
| scoring_system |
cvssv4 |
| scoring_elements |
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N |
|
| 1 |
| value |
HIGH |
| scoring_system |
generic_textual |
| scoring_elements |
|
|
| 2 |
| value |
Track |
| scoring_system |
ssvc |
| scoring_elements |
SSVCv2/E:P/A:N/T:P/P:M/B:A/M:M/D:T/2026-02-27T17:06:38Z/ |
|
|
| url |
https://fluidattacks.com/advisories/neton |
|
| 3 |
|
| 4 |
|
| 5 |
|
| 6 |
|
| 7 |
|
| 8 |
|
| 9 |
|
| 10 |
| reference_url |
https://github.com/nestjs/nest/ |
| reference_id |
nest |
| reference_type |
|
| scores |
| 0 |
| value |
8.2 |
| scoring_system |
cvssv4 |
| scoring_elements |
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N |
|
| 1 |
| value |
Track |
| scoring_system |
ssvc |
| scoring_elements |
SSVCv2/E:P/A:N/T:P/P:M/B:A/M:M/D:T/2026-02-27T17:06:38Z/ |
|
|
| url |
https://github.com/nestjs/nest/ |
|
|
| fixed_packages |
|
| aliases |
CVE-2026-2293, GHSA-r4wm-x892-vjmx
|
| risk_score |
4.0 |
| exploitability |
0.5 |
| weighted_severity |
8.0 |
| resource_url |
http://public2.vulnerablecode.io/vulnerabilities/VCID-ax3k-md7j-4bcx |
|
| 3 |
| url |
VCID-xphx-vs3y-pyf9 |
| vulnerability_id |
VCID-xphx-vs3y-pyf9 |
| summary |
Nest has a Fastify URL Encoding Middleware Bypass (TOCTOU)
A NestJS application is vulnerable if it meets all of the following criteria:
1. Platform: Uses `@nestjs/platform-fastify`.
2. Security Mechanism: Relies on `NestMiddleware` (via `MiddlewareConsumer`) for security checks (authentication, authorization, etc.), or through `app.use()`
3. Routing: Applies middleware to specific routes using string paths or controllers (e.g., `.forRoutes('admin')`).
Example Vulnerable Config:
```ts
// app.module.ts
export class AppModule implements NestModule {
configure(consumer: MiddlewareConsumer) {
consumer
.apply(AuthMiddleware) // Security check
.forRoutes('admin'); // Vulnerable: Path-based restriction
}
}
```
Attack Vector:
- Target Route: `/admin`
- Middleware Path: `admin`
- Attack Request: `GET /%61dmin`
- Result: Middleware is skipped (no match on `%61dmin`), but controller for `/admin` is executed.
Consequences:
- Authentication Bypass: Unauthenticated users can access protected routes.
- Authorization Bypass: Restricted administrative endpoints become accessible to lower-privileged users.
- Input Validation Bypass: Middleware performing sanitization or validation can be skipped. |
| references |
| 0 |
|
| 1 |
| reference_url |
https://api.first.org/data/v1/epss?cve=CVE-2025-69211 |
| reference_id |
|
| reference_type |
|
| scores |
| 0 |
| value |
0.00026 |
| scoring_system |
epss |
| scoring_elements |
0.0767 |
| published_at |
2026-06-05T12:55:00Z |
|
| 1 |
| value |
0.00026 |
| scoring_system |
epss |
| scoring_elements |
0.07657 |
| published_at |
2026-06-07T12:55:00Z |
|
| 2 |
| value |
0.00026 |
| scoring_system |
epss |
| scoring_elements |
0.07684 |
| published_at |
2026-06-06T12:55:00Z |
|
| 3 |
| value |
0.00029 |
| scoring_system |
epss |
| scoring_elements |
0.08861 |
| published_at |
2026-06-09T12:55:00Z |
|
| 4 |
| value |
0.00029 |
| scoring_system |
epss |
| scoring_elements |
0.0882 |
| published_at |
2026-06-08T12:55:00Z |
|
|
| url |
https://api.first.org/data/v1/epss?cve=CVE-2025-69211 |
|
| 2 |
|
| 3 |
|
| 4 |
|
| 5 |
|
| 6 |
|
| 7 |
|
|
| fixed_packages |
|
| aliases |
CVE-2025-69211, GHSA-8wpr-639p-ccrj
|
| risk_score |
3.4 |
| exploitability |
0.5 |
| weighted_severity |
6.7 |
| resource_url |
http://public2.vulnerablecode.io/vulnerabilities/VCID-xphx-vs3y-pyf9 |
|
|
| Fixing_vulnerabilities |
|
| Risk_score | 4.0 |
| Resource_url | http://public2.vulnerablecode.io/packages/pkg:npm/%2540nestjs/platform-fastify@7.0.7 |