high CVSS 7.5

CVE-2026-41278·Docker vulnerability

Flowise is a drag & drop user interface to build a customized large language model flow. Prior to 3.1.0, the GET /api/v1/public-chatflows/:id endpoint returns the full chatflow object without sanitization for public chatflows. Docker validation revealed this is worse than initially assessed: the sanitizeFlowDataForPublicEndpoint function does NOT exist in the released v3.0.13 Docker image. Both public-chatflows AND public-chatbotConfig return completely raw flowData including credential IDs, plaintext API keys, and password-type fields. This vulnerability is fixed in 3.1.0.

Severity
high
Software
Docker
Fixed in
3.1.0
Published
2026-04-23

Affected versions

Until: 3.1.0

Fixed in: 3.1.0

How to fix this CVE

Update Docker to version 3.1.0 or later to remediate the credential exposure vulnerability in the public chatflow endpoint. The vulnerable versions expose sensitive information including API keys, passwords, and credential IDs without proper sanitization. Immediately patch all Docker installations running versions prior to 3.1.0, then audit your Flowise instances for any unauthorized access to public chatflow endpoints.

sudo dnf update docker-ce && sudo systemctl restart docker

Defensia detects this vulnerability

What an exploitation attempt looks like

Sample log line indicative of exploitation attempts:

GET /api/v1/public-chatflows/[a-zA-Z0-9_-]+ HTTP|GET /api/v1/public-chatbotConfig/[a-zA-Z0-9_-]+ HTTP

WAF mitigation (if patching is not yet possible)

Add this rule to your WAF to block exploitation attempts while you schedule the patch.

Implement WAF rules to restrict GET requests to `/api/v1/public-chatflows/*` and `/api/v1/public-chatbotConfig/*` endpoints unless they originate from trusted sources. Add response filtering to strip credential fields (API keys, passwords, credential IDs) before they reach clients, as a temporary measure until Docker is patched.

How to check if you are affected

  1. Run `docker --version` to confirm the installed Docker version; versions prior to 3.1.0 are vulnerable.
  2. Check if Flowise is running: `docker ps | grep flowise` and note the image tag; vulnerable tags are v3.0.13 and earlier.
  3. Search Docker logs for GET requests to `/api/v1/public-chatflows/:id` or `/api/v1/public-chatbotConfig`: `docker logs <container-id> | grep -E '(public-chatflows|public-chatbotConfig)'`
  4. Verify the patch by running `docker inspect <image-id> | grep -i version` and confirming the version is 3.1.0 or higher.

FAQ

What is CVE-2026-41278?

CVE-2026-41278 is a credential exposure vulnerability in Docker/Flowise where the public chatflow endpoint fails to sanitize sensitive data, returning raw credentials including API keys and passwords to unauthenticated users.

Is CVE-2026-41278 being actively exploited?

No, there is no evidence of active exploitation or publicly available exploits for this vulnerability at this time, though the ease of access via HTTP requests makes exploitation trivial.

What versions of Docker are affected by CVE-2026-41278?

All versions of Docker/Flowise prior to version 3.1.0 are affected; the vulnerability is present in v3.0.13 and all earlier releases.

How do I check if my server is vulnerable to CVE-2026-41278?

Run `docker --version` to check your Docker version; if it returns a version lower than 3.1.0, your installation is vulnerable. Also verify with `docker image ls | grep flowise` to see if vulnerable Flowise images are present.

Does Defensia detect CVE-2026-41278?

Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If Docker is installed on a monitored server, CVE-2026-41278 will appear in your dashboard with remediation steps.

Related Docker CVEs

CVE-2026-40281CVSS 10Gotenberg is a Docker-powered stateless API for PDF files. In versions 8.30.1 and earlier, the metadata write endpoint validates metadata keys for control characters but leaves metadata values unsanitized. A newline character in a metadata value splits the ExifTool stdin line into two separate arguments, allowing injection of arbitrary ExifTool pseudo-tags such as -FileName, -Directory, -SymLink, and -HardLink. This is a bypass of the incomplete key-sanitization fix introduced in v8.30.1. An unauthenticated attacker can rename or move any PDF being processed to an arbitrary path in the container filesystem, overwrite arbitrary files, or create symlinks and hard links at arbitrary paths.
CVE-2026-42298CVSS 10Postiz is an AI social media scheduling tool. Prior to commit da44801, a "Pwn Request" vulnerability in the Build and Publish PR Docker Image workflow (.github/workflows/pr-docker-build.yml) allows any unauthenticated user to execute arbitrary code during the Docker build process and exfiltrate a highly privileged GITHUB_TOKEN (write-all permissions). This can be achieved simply by opening a Pull Request from a fork with a maliciously modified Dockerfile.dev. This issue has been patched via commit da44801.
CVE-2026-33587CVSS 10Lack of user input sanitisation in Open Notebook v1.8.3 allows the application user to execute Python code (and subsequently OS commands) on the docker container via Server-Side Template Injection (SSTI) for user-created transformations.
CVE-2026-26216CVSS 10Crawl4AI versions prior to 0.8.0 contain a remote code execution vulnerability in the Docker API deployment. The /crawl endpoint accepts a hooks parameter containing Python code that is executed using exec(). The __import__ builtin was included in the allowed builtins, allowing unauthenticated remote attackers to import arbitrary modules and execute system commands. Successful exploitation allows full server compromise, including arbitrary command execution, file read and write access, sensitive data exfiltration, and lateral movement within internal networks.
CVE-2026-53576CVSS 10Kestra is an open-source, event-driven orchestration platform. Prior to 1.0.45 and 1.3.21, the authentication filter for the REST API (@Filter("/api/v1/**")) treats any request whose path ends in /configs as the public instance-config endpoint and forwards it without a credential check. kestra addresses its resources by URL path segments that the caller chooses (/api/v1/{tenant}/flows/{namespace}, /api/v1/{tenant}/executions/{namespace}/{id}, /api/v1/{tenant}/namespaces/{namespace}/kv/{key}). An anonymous caller picks the literal configs as the final segment, and the request bypasses Basic-Auth entirely. Because the bypass reaches the flow-create and execution-trigger routes, an unauthenticated caller creates a flow containing a Shell or Process task and runs it. The task executes as root inside the kestra container. The official docker-compose.yml mounts /var/run/docker.sock, so root in the container reaches the host Docker daemon. This vulnerability is fixed in 1.0.45 and 1.3.21.

References

Track CVEs across your fleet automatically

Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2026-41278. Free for 1 server.

Get started free