Impact
@fastify/static evaluates the allowedPath callback before normalizing dot segments and duplicate slashes in the pathname used for file resolution. Non-canonical pathnames such as //file, /./file, or /public/../private/file bypass allowedPath filtering while resolving to the intended file on disk.
Applications that use allowedPath as a security boundary to restrict access to specific static files or path subtrees may unintentionally expose files that were intended to be denied.
Patches
Upgrade to @fastify/static >= 10.1.2.
Workarounds
None. Upgrade to the patched version.
References
Impact
@fastify/staticevaluates theallowedPathcallback before normalizing dot segments and duplicate slashes in the pathname used for file resolution. Non-canonical pathnames such as//file,/./file, or/public/../private/filebypassallowedPathfiltering while resolving to the intended file on disk.Applications that use
allowedPathas a security boundary to restrict access to specific static files or path subtrees may unintentionally expose files that were intended to be denied.Patches
Upgrade to
@fastify/static>= 10.1.2.Workarounds
None. Upgrade to the patched version.
References