{"id":6057,"date":"2026-09-04T18:48:17","date_gmt":"2026-09-04T10:48:17","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-55676"},"modified":"2026-09-04T18:48:17","modified_gmt":"2026-09-04T10:48:17","slug":"cve-2026-55676","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-55676","title":{"rendered":"CVE-2026-55676 [HIGH] &#8211; Malcolm is a network traffic analysis tool suite. The file-upload component (FilePond PHP"},"content":{"rendered":"<p>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&#8217;s nginx routes any URL ending in `.php` to php-fpm. An authenticated `GET \/server\/php\/files\/.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.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>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 ng<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-6057","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/6057","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=6057"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=6057"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=6057"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}