<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Flowiseai — CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/tags/flowiseai/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata — refreshed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Fri, 17 Apr 2026 14:00:00 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/tags/flowiseai/feed.xml" rel="self" type="application/rss+xml"/><item><title>FlowiseAI File Upload Validation Bypass Leads to RCE</title><link>https://feed.craftedsignal.io/briefs/2026-04-17-flowise-upload-bypass/</link><pubDate>Fri, 17 Apr 2026 14:00:00 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-04-17-flowise-upload-bypass/</guid><description>A file upload validation bypass vulnerability exists in FlowiseAI, where the Chatflow configuration file upload settings can be modified to allow the application/javascript MIME type, enabling an attacker to upload .js files, store malicious Node.js web shells on the server, and potentially achieve Remote Code Execution (RCE).</description><content:encoded><![CDATA[<p>FlowiseAI, a low-code platform for building AI applications, contains a file upload validation bypass vulnerability. By modifying the Chatflow configuration, specifically the <code>allowedUploadFileTypes</code> setting, an attacker can add <code>application/javascript</code> as an accepted MIME type. This bypasses previous mitigations (CVE-2025-61687) intended to prevent the upload of potentially malicious files. Although the frontend UI restricts JavaScript uploads, a direct API request can circumvent this. Successful exploitation allows attackers to persistently store Node.js web shells (e.g., shell.js) on the Flowise server. This vulnerability affects FlowiseAI versions up to 3.0.13. If executed, these web shells could grant the attacker Remote Code Execution (RCE) capabilities on the server, posing a significant risk to system integrity and data confidentiality.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>The attacker identifies a vulnerable FlowiseAI instance running a version &lt;= 3.0.13.</li>
<li>The attacker authenticates to the FlowiseAI instance as an administrator or with compromised credentials.</li>
<li>The attacker crafts a malicious HTTP PUT request to the <code>/api/v1/chatflows/{CHATFLOW_ID}</code> endpoint.</li>
<li>The PUT request modifies the Chatflow configuration, specifically the <code>chatbotConfig</code> to include <code>application/javascript</code> in the <code>allowedUploadFileTypes</code>.</li>
<li>The attacker crafts a malicious HTTP POST request to the <code>/api/v1/attachments/{CHATFLOW_ID}/{CHAT_ID}</code> endpoint to upload a <code>.js</code> file (Node.js web shell), such as the <code>shell.js</code> example.</li>
<li>The server saves the malicious <code>.js</code> file to a publicly accessible directory.</li>
<li>The attacker accesses the uploaded <code>.js</code> file via a direct HTTP request.</li>
<li>The web shell executes commands specified in the URL parameters, such as <code>http://localhost:8888/?cmd=id</code>, resulting in RCE.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of this vulnerability allows attackers to upload and persistently store malicious web shells on the FlowiseAI server. Execution of these web shells grants the attacker the ability to execute arbitrary commands on the underlying system. This can lead to complete system compromise, data exfiltration, and denial of service. This vulnerability affects FlowiseAI versions up to 3.0.13.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Apply appropriate input validation and sanitization to prevent modification of <code>allowedUploadFileTypes</code> settings.</li>
<li>Monitor network traffic for PUT requests to <code>/api/v1/chatflows/{CHATFLOW_ID}</code> modifying <code>allowedUploadFileTypes</code> as described in the attack chain.</li>
<li>Monitor for POST requests to <code>/api/v1/attachments/{CHATFLOW_ID}/{CHAT_ID}</code> uploading <code>.js</code> files based on the attack chain.</li>
<li>Deploy the Sigma rules provided below to detect suspicious HTTP requests indicative of this attack.</li>
</ul>
]]></content:encoded><category domain="severity">critical</category><category domain="type">advisory</category><category>flowiseai</category><category>file-upload</category><category>rce</category><category>web-shell</category></item><item><title>FlowiseAI AirtableAgent Remote Code Execution via Prompt Injection</title><link>https://feed.craftedsignal.io/briefs/2024-01-flowise-rce/</link><pubDate>Thu, 16 Apr 2026 21:43:57 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2024-01-flowise-rce/</guid><description>A remote code execution vulnerability exists in FlowiseAI's AirtableAgent.ts due to insufficient input verification when using Pandas, allowing attackers to inject malicious code into the prompt and execute arbitrary code via Pyodide.</description><content:encoded><![CDATA[<p>FlowiseAI is susceptible to a remote code execution (RCE) vulnerability within the AirtableAgent function. This function, designed to retrieve and process datasets from Airtable.com, is flawed due to the lack of input sanitization. Specifically, user-supplied input is directly incorporated into a prompt template, which is then used to generate Python code executed by Pyodide. By injecting malicious payloads into the prompt, an attacker can bypass the intended behavior of the language model and execute arbitrary Python code, leading to complete system compromise. The vulnerability resides in <code>AirtableAgent.ts</code> and is triggered when the <code>input</code> variable, containing user-supplied data, is passed to the LLMChain without proper validation.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An attacker crafts a malicious payload containing a prompt injection designed to execute arbitrary code.</li>
<li>The attacker submits the crafted payload via the FlowiseAI application to the AirtableAgent function.</li>
<li>The payload is passed into the <code>input</code> variable without sanitization and incorporated into the prompt template within <code>systemPrompt</code>.</li>
<li>The LLMChain uses the crafted prompt, including the injected code, to generate a <code>pythonCode</code> string.</li>
<li>The generated <code>pythonCode</code> string, containing the malicious code, is passed to the <code>pyodide.runPythonAsync()</code> function.</li>
<li>Pyodide executes the malicious Python code, leading to remote code execution on the FlowiseAI server.</li>
<li>The attacker gains control of the FlowiseAI instance, potentially accessing sensitive data or pivoting to other systems on the network.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of this vulnerability allows for complete remote code execution on the FlowiseAI server. This could lead to the compromise of sensitive data stored within Airtable datasets, as well as the potential for lateral movement to other systems on the network. The lack of input validation opens the door to attackers using prompt injection to bypass security measures and gain unauthorized access.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Apply input sanitization and validation to the <code>input</code> variable within the AirtableAgent function in <code>AirtableAgent.ts</code> before it is incorporated into the prompt template.</li>
<li>Implement strict output filtering on the <code>pythonCode</code> generated by the LLMChain to prevent the execution of potentially malicious code.</li>
<li>Deploy the Sigma rule to detect prompt injection attempts targeting the AirtableAgent function.</li>
<li>Regularly audit and update FlowiseAI dependencies, including Pyodide and Pandas, to address any known security vulnerabilities.</li>
</ul>
]]></content:encoded><category domain="severity">critical</category><category domain="type">advisory</category><category>flowiseai</category><category>rce</category><category>prompt-injection</category><category>airtable</category></item></channel></rss>