Vulnerability · Published Jul 17, 2026 · Assigned by GitHub_M
CVE-2026-48049@hapi/inert: Static-file confinement bypass via sibling-prefix path
Medium 5.3
In plain English
A medium-severity path traversal in inert from hapijs. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.6% (higher than 48% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
@hapi/inert provides static file and directory handlers for hapi.js. From 4.0.0 to 7.1.0, @hapi/inert serves static files from a directory configured with path in the directory or file handlers or relativeTo for h.file(), with confinement enforced by the confine option, but the confinement check compared the resolved absolute path against the confine directory using a raw string-prefix test, so a sibling directory such as /app/static-secret next to /app/static was incorrectly accepted and could allow an unauthenticated remote attacker to read files via /..%2fstatic-secret/secret.txt. This issue is fixed in version 7.1.1.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| npm | @hapi/inert | 7.1.1 | GHSA-rcvq-m9j9-6f4g |
Affected products (as reported)
Weakness: CWE-22 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
References
- https://github.com/hapijs/inert/security/advisories/GHSA-rcvq-m9j9-6f4g x_refsource_CONFIRM
- https://github.com/hapijs/inert/pull/176 x_refsource_MISC
- https://github.com/hapijs/inert/commit/bcceb761a43b9d1178eb6bd553e4ad2bb70494d9 x_refsource_MISC
- https://github.com/hapijs/inert/releases/tag/v7.1.1 x_refsource_MISC