Craft CMS has authenticated path traversal in `assets/icon`, allowing local `.svg` file read
Summary
An authenticated path traversal in assets/icon allows local SVG file read by passing traversal sequences in the extension parameter. The issue is caused by file existence checks happening before extension validation.
Details
The endpoint:
src/controllers/AssetsController.php:1115-1123actionIcon(string $extension)callsAssets::iconPath($extension)and returnssendFile($path, ...).
In Assets::iconPath():
- Path is built from user-controlled
extension:src/helpers/Assets.php:906-909
- If
file_exists($path)is true, path is returned immediately:src/helpers/Assets.php:910-912
Validation exists in Assets::iconSvg():
preg_match('/^\w+$/', $extension)src/helpers/Assets.php:927-931
However, that validation is only reached if iconPath() does not find a file.
So traversal payloads that resolve to existing .svg files bypass validation and are served by sendFile().
Impact
- Authenticated users can read local .svg files accessible to the application process.
References
Betroffene Software
Klicken Sie auf eine Technologie, um alle zugehörigen Schwachstellen anzuzeigen.
| Plattform | Paket | Anfällige Versionen | Behoben in |
|---|---|---|---|
| Composer-Paket | craftcms/cms | >= 4.0.0-RC1, < 4.17.7, >= 5.0.0-RC1, < 5.9.13 | 4.17.7, 5.9.13 |
Verweise
- https://github.com/craftcms/cms/security/advisories/GHSA-c43v-4cr8-6mvp
- https://nvd.nist.gov/vuln/detail/CVE-2026-56394
- https://github.com/craftcms/cms/commit/30f5f1a8d6edf0f3a00be72c42c78d9dc7d72d5c
- https://github.com/craftcms/cms
- https://www.vulncheck.com/advisories/craft-cms-authenticated-path-traversal-in-assets-icon-extension-parameter
- CVSS-Vektor
CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N- Schwäche (CWE)
CWE-22- Plattform
- Composer
- Paket
craftcms/cms- Veröffentlicht
- 09.07.2026
- Aktualisiert
- 11.10.2026 10:22
Quellen und Lizenzen
OSV / GitHub Advisory Database - GHSA-c43v-4cr8-6mvp - CC BY 4.0
Schwachstellenhistorie: craftcms/cms
Alle veröffentlichten Schwachstellen dieses Pakets (Composer-Paket), neueste zuerst. Zeigt, ob es ein einmaliger Ausrutscher ist oder ein Paket, das man im Auge behalten muss.
- Einträge insgesamt
- 127
- Erste → letzte
- 07.2021 08.2026
- Ohne Fix
- 6
- In Angriffen ausgenutzt
- 4
Verteilung nach Schweregrad
- Kritisch 9
- Hoch 41
- Mittel 65
- Niedrig 12
Veröffentlichungen pro Jahr
- 2021: 3
- 2022: 22
- 2023: 13
- 2024: 9
- 2025: 6
- 2026: 74
-
Craft CMS has authenticated path traversal in `assets/icon`, allowing local `.svg` file read dieser Eintrag
Erkennen Sie Schwachstellen in Ihrer Anwendung
Mit der DockRay-Integration und aktivierter Softwareinventarisierung prüft DockRay gemeldete Komponentenversionen auf bekannte Schwachstellen und benachrichtigt Sie über bestätigte Treffer. Die Abdeckung hängt von der unterstützten Technologie und den verfügbaren Meldungen ab.