VDB
Sign up
MEDIUM5.3

GHSA-v2v2-hph8-q5xp

@fastify/reply-from JSON Content-Type parsing confusion

Quick fix

GHSA-v2v2-hph8-q5xp — @fastify/reply-from: upgrade to the fixed version with the command below.

npm install @fastify/reply-from@9.6.0

Details

### Impact

The main repo of fastify use [fast-content-type-parse](https://github.com/fastify/fast-content-type-parse) to parse request Content-Type, which will [trim after split](https://github.com/fastify/fast-content-type-parse/blob/2776d054dd48e9ce40b8d5e5ff9b46fee82b95f1/index.js#L59).

The [fastify-reply-from](https://github.com/fastify/fastify-reply-from/blob/b79a22d6eb9a0b52cfbe8eb2cb22ad65f5a39e64/index.js#L118C14-L118C14) have not use this repo to unify the parse of Content-Type, which [won't trim](https://github.com/fastify/fastify-reply-from/blob/b79a22d6eb9a0b52cfbe8eb2cb22ad65f5a39e64/index.js#L118C14-L118C14).

As a result, a reverse proxy server built with `@fastify/reply-from` could misinterpret the incoming body by passing an header `ContentType: application/json ; charset=utf-8`. This can lead to bypass of security checks.

### Patches

`@fastify/reply-from` v9.6.0 include the fix.

### Workarounds

There are no known workarounds.

### References

Hackerone Report: https://hackerone.com/reports/2295770.

Are you affected?

Enter the version of the package you're using.

Affected packages

npm/@fastify/reply-from
Introduced in: 0Fixed in: 9.6.0
Fixnpm install @fastify/reply-from@9.6.0

References