VDB
Sign up
HIGH8.2

GHSA-x5rw-q4pp-hg5g

devalue: stringifyAsync can cause an unhandled rejection despite a caught returned promise

Quick fix

GHSA-x5rw-q4pp-hg5g — devalue: upgrade to the fixed version with the command below.

npm install devalue@5.9.3

Details

When serializing multiple promises, a later promise can reject before an earlier one settles. An internal rejected promise remains unhandled even if the caller catches the returned `stringifyAsync` promise. Under Node's default unhandled-rejection behavior this can terminate the process. Applications whose asynchronous failures/timing can be influenced by requests are potentially exposed.

This is essentially impossible to exploit, and is much more likely to surface as a developer-introduced bug.

Are you affected?

Enter the version of the package you're using.

Affected packages

npm/devalue
Introduced in: 5.8.0Fixed in: 5.9.3
Fixnpm install devalue@5.9.3

References