highCVSS 8.3Vulnerability

GHSA-f228-chmx-v6j6

## Description ### Summary “AirtableAgent” is an agent function provided by FlowiseAI that retrieves search results by accessing private datasets from airtable.com. “AirtableAgent” uses Python, along with `Pyodide` and `Pandas`, to get and return results. The user’s input is directly applied to the question parameter within the prompt template and it is reflected to the Python code without any sanitization. **The point is that an attacker can bypass the intended behavior of the LLM and trigger Remote Code Execution through a simple prompt injection.** ### About Airtable The `airtable.ts` function retrieves and processes user datasets stored on Airtable.com through its API. ![pic1](https://drive.google.com/uc?id=1pKzk2leZ_w6Zb1rL3Rm0xkQr3ty1jom9) ![pic2](https://drive.google.com/uc?id=1pConjaiW2eeWJpcHnx1LTp3_CYn846u8) The usage of Airtable is as shown in the image above. After creating a Chatflow like above, you can ask data-related questions using prompts and receive answers. ![pic3](https://drive.google.com/uc?id=1S6cIznhnuEjXJjRHCX32Av6QkgYQza6Q) ### Details ```jsx // packages/components/nodes/agents/AirtableAgent/AirtableAgent.ts let base64String = Buffer.from(JSON.stringify(airtableData)).toString('base64') const loggerHandler = new ConsoleCallbackHandler(options.logger) const callbacks = await additionalCallbacks(nodeData, options) const pyodide = await LoadPyodide() // First load the csv file and get the dataframe dictionary of column types // For example using titanic.csv: {'PassengerId': 'int64', 'Survived': 'int64', 'Pclass': 'int64', 'Name': 'object', 'Sex': 'object', 'Age': 'float64', 'SibSp': 'int64', 'Parch': 'int64', 'Ticket': 'object', 'Fare': 'float64', 'Cabin': 'object', 'Embarked': 'object'} let dataframeColDict = '' try { const code = `import pandas as pd import base64 import json base64_string = "${base64String}" decoded_data = base64.b64decode(base64_string) json_data = json.loads(decoded_data) df = pd.Dat

Properties

ghsa_id
GHSA-f228-chmx-v6j6
severity
high
summary
Flowise: Remote code execution vulnerability in AirtableAgent.ts caused by lack of input verification when using `Pandas`.
cvss_score
8.3
cve_id
GHSA-f228-chmx-v6j6
cvss_vector
CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L
is_ghsa_only
true
ghsa_published
2026-04-16T21:43:57Z
source_url
https://github.com/advisories/GHSA-f228-chmx-v6j6
ghsa_updated
2026-04-16T21:44:01Z

Related Entities (6)

VULNERABLE_TO (2)

[Software]npm/flowise-components
[Software]npm/flowise

AFFECTS (2)

[Software]npm/flowise-components
[Software]npm/flowise

HAS_WEAKNESS (1)

[Weakness]Improper Control of Generation of Code ('Code Injection')

REPORTED_BY (1)

[Source]GitHub Advisory Database

Explore deeper with Ninja Signal's threat intelligence graph

GHSA-f228-chmx-v6j6 (CVSS 8.3) — Ninja Signal Threat Intelligence | Ninja Signal