Flowise Unauthenticated Remote Command Execution via Parameter Override
Overview
Flowise, a UI for building LLM flows, is susceptible to critical Remote Command Execution (RCE) in versions prior to 3.1.0. The vulnerability stems from an unauthenticated parameter override bypass. Attackers can leverage the `FILE-STORAGE::` keyword in conjunction with injecting the `NODE_OPTIONS` environment variable. This bypass allows for the injection of malicious commands that are then executed with root privileges within the Flowise container. The exploit is straightforward, requiring only a single unauthenticated HTTP request and no prior knowledge of the target instance. This means any publicly accessible Flowise instance running a vulnerable version is at immediate risk of complete system compromise. The severity is amplified by the ease of exploitation and the potential for privilege escalation within the containerized environment, making it a critical threat to data integrity and system availability.
Affected Systems
Testing Guide
1. Set up a test environment with a Flowise instance vulnerable to CVE-2026-41268 (version < 3.1.0). 2. Craft an HTTP request that attempts to override a parameter using the `FILE-STORAGE::` keyword and inject a `NODE_OPTIONS` environment variable pointing to a malicious command. For example, try to inject a command like `id` or `whoami` to see if it executes. 3. Send the crafted request to the Flowise API endpoint, specifically targeting parameters that might be susceptible to override. 4. Monitor the Flowise application logs and the host system's logs for any signs of executed commands or unexpected behavior. 5. If commands are executed and their output is visible or logged, the instance is affected.
Mitigation Steps
* Upgrade Flowise to version 3.1.0 or later. * If upgrading is not immediately possible, restrict network access to Flowise instances to trusted IP addresses. * Implement robust input validation on any externally facing APIs that interact with Flowise. * Monitor container logs for suspicious `NODE_OPTIONS` or unexpected command execution patterns. * Consider running Flowise with the least privilege necessary within its container.
Patch Details
Version 3.1.0