Duplicate Advisory: Grav: Path Traversal in ImageMedium::watermark() — arbitrary file disclosure via publicly-cached images
High severity
GitHub Reviewed
Published
Aug 3, 2026
to the GitHub Advisory Database
•
Updated Sep 17, 2026
Withdrawn
This advisory was withdrawn on Sep 17, 2026
Description
Published by the National Vulnerability Database
Aug 3, 2026
Published to the GitHub Advisory Database
Aug 3, 2026
Reviewed
Sep 17, 2026
Withdrawn
Sep 17, 2026
Last updated
Sep 17, 2026
Duplicate Advisory
This advisory has been withdrawn because it is a duplicate of GHSA-w3f4-8pj2-599w. This link is maintained to preserve external references.
Original Description
Grav CMS 2.0.10 contains a path traversal vulnerability in ImageMedium::watermark(), which passes its unsanitized $image argument to RocketTheme\Toolbox\ResourceLocator\UniformResourceLocator::findResource(). Because the file:// scheme branch only lexically collapses '..' segments without a realpath/containment check, an editor authoring Markdown image syntax with traversal sequences can cause arbitrary image files outside Grav's media sandbox to be composited into a carrier image, which is then cached and served from a public, unauthenticated URL — disclosing those files to anonymous visitors.
References