CVE-2026-54134
OctoPrint provides a web interface for controlling consumer 3D printers. Prior to 1.11.8 and 2.0.0rc3, OctoPrint's custom Tornado upload handler and Flask with Werkzeug parse request parameters differently, allowing an attacker with FILE_UPLOAD permission to inject reserved internal upload fields through query parameters or parser differentials despite the earlier GHSA-m9jh-jf9h-x3h2 fix. The affected endpoints are /api/files/{local|sdcard}, /api/languages, /plugin/backup/restore, and /plugin/pluginmanager/upload_file. An attacker can make OctoPrint treat an arbitrary host file as a temporary upload, move it into a downloadable upload directory, disclose configuration secrets or other readable files, and remove runtime files in a way that can affect a later restart. This issue is fixed in versions 1.11.8 and 2.0.0rc3.
- CVSS 4.0
- 7.0
CVSS:4.0/AV:A/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N - EPSS
- 0.3% chance of exploitation in the next 30 days; higher than 25% of CVEs (scores of 2026-10-25)
- CWE
- CWE-73
- Published
- Modified
- Record from
- the NVD, synced
Packages (OSV)
| Advisory | Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|---|
| GHSA-j4h9-pm27-4rfw | PyPI | octoprint | <1.11.8 | 1.11.8 |
| GHSA-j4h9-pm27-4rfw | PyPI | octoprint | >=2.0.0rc1 <2.0.0rc3 | 2.0.0rc3 |
| PYSEC-2026-2687 | PyPI | octoprint | <1.11.8 >=2.0.0rc1 <2.0.0rc3 | 1.11.8, 2.0.0rc3 |
References
- https://github.com/OctoPrint/OctoPrint/commit/579148beeb6d6e9b3d41b1cf32309b47218ed380
- https://github.com/OctoPrint/OctoPrint/commit/8e3348197db867c30a32d13984f0bd0d664be413
- https://github.com/OctoPrint/OctoPrint/releases/tag/1.11.8
- https://github.com/OctoPrint/OctoPrint/releases/tag/2.0.0rc3
- https://github.com/OctoPrint/OctoPrint/security/advisories/GHSA-j4h9-pm27-4rfw