{"id":"CVE-2026-55676","summary":"Malcolm vulnerable to RCE via unrestricted .php upload to the file-upload component","details":"Malcolm is a network traffic analysis tool suite. The file-upload component (FilePond PHP backend) accepts uploads at `POST /server/php/submit.php` and stores them in a directory served by the same nginx and php-fpm instance. The allow-list that should restrict accepted file types is an empty array by default (`file-upload/php/config.php:16`), so the type check is a no-op and every extension is accepted. The filename sanitizer keeps the `.php` extension intact. Committed files land in `/var/www/upload/server/php/files` (`file-upload/php/config.php:7`), and the component's nginx routes any URL ending in `.php` to php-fpm. An authenticated `GET /server/php/files/\u003cname\u003e.php` then executes the uploaded code as `www-data`. Prior to version 26.06.1, in RBAC mode, the upload endpoint is reachable by the granular `ROLE_UPLOAD` role (`nginx/lua/nginx_auth_helpers.lua:71`), a role intended only for submitting capture files. As a result, a user holding the upload-only role runs arbitrary PHP as `www-data` inside the file-upload container. Version 26.06.1 fixes the issue.","aliases":["GHSA-8cvp-m7pg-qrp7"],"modified":"2026-08-14T03:51:41.198510961Z","published":"2026-08-11T20:24:50.803Z","database_specific":{"cwe_ids":["CWE-434"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/55xxx/CVE-2026-55676.json","cna_assigner":"GitHub_M"},"references":[{"type":"WEB","url":"https://github.com/cisagov/Malcolm/releases/tag/v26.06.1"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/55xxx/CVE-2026-55676.json"},{"type":"ADVISORY","url":"https://github.com/cisagov/Malcolm/security/advisories/GHSA-8cvp-m7pg-qrp7"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-55676"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/cisagov/malcolm","events":[{"introduced":"0"},{"fixed":"6a4e6b16b72803562465a7ba3e9135fee733fb89"}],"database_specific":{"source":["AFFECTED_FIELD","REFERENCES"],"extracted_events":[{"introduced":"0"},{"fixed":"26.06.1"}]}}],"versions":["v26.06.0","v26.05.2","v6.4.2","v6.4.1","v6.4.0","v5.2.4","v5.2.3","v5.2.2","v5.2.1","v3.0.1","v3.0.0","v2.6.1","v2.6.0","v2.5.0","v2.4.2","v2.4.1","v2.4.0.1","v2.4.0","v2.3.0","v2.2.1","v2.2.0","v2.1.1","v2.1.0","v2.0.6","v2.0.5","v2.0.4","v2.0.3","v2.0.2","v2.0.1","v2.0.0","v2.0.0-pre1","v1.8.1","v1.8.0","v1.7.2","v1.7.1a","v1.7.1","v1.7.0","v1.6.0","v1.5.2","v1.5.1","v1.5.0","v1.4.0","v1.3.1","v1.3.0","v1.2.2","v1.2.1","v1.2.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-55676.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H"}]}