Overview
About vulnerability
@hapi/content provides HTTP Content-* header parsing. From 3.0.6 until 6.0.3, Content.disposition() uses an unanchored parameter-name expression in a global regular-expression scan, causing repeated failed matching over the remaining input when a Content-Disposition parameter contains a long token without an equals sign. The resulting quadratic processing can block the Node.js event loop before route handlers or validation when @hapi/pez parses multipart/form-data headers, including unauthenticated hapi routes with payload.multipart enabled, and also affects applications that pass untrusted headers directly to Content.disposition(). This issue is fixed in @hapi/content version 6.0.3.Details
- Affected product:
- apollo-server-hapi , hapi-content , hapi-hapi , hapi-pez , hapi-subtext , thrift-server , tsoa-runtime
- Affected packages:
- @hapi/content @ 6.0.2 (+29 more)