Back to feed
20Track

Malcolm vulnerable to RCE via unrestricted .php upload to the file-upload component

cisagov Malcolm · CVE-2026-55676
0 news outlets0 CERTs and agencies0 research labs

Assessment: Track

SSVC decision points: exploitation none, automatable no, technical impact total, deployment low.

What is it?

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/<name>.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.

Evidence

No coverage recorded yet.

Exploitation

  • Exploit code published (not verified by us)
  • Exploited in the wild (confirmed by a source)
  • Listed as known exploited (CISA KEV)
CVSS
8.8
EPSS
–
First seen
18 Aug 2026
Status
corroborated

All cisagov vulnerabilities