CVE-2026-44287 PUBLISHED

FastGPT: sandbox escape to RCE - code-sandbox regex /\bimport\s*\(/ is bypassable

Assigner: GitHub_M
Reserved: 05.05.2026 Published: 29.05.2026 Updated: 29.05.2026

FastGPT is an AI Agent building platform. Prior to 4.15.0-beta1, the JavaScript sandbox worker at projects/code-sandbox/src/pool/worker.ts:356 blocks dynamic import() with the regex /\bimport\s(/.test(code). JavaScript syntax accepts a block comment between import and (; the regex matches only ASCII whitespace, and the bytes /, , , / are not in the \s character class. The payload import/*/("child_process") parses as a syntactically valid dynamic import that the regex does not detect. Because import() is not wrapped by the safeRequire Proxy (which only proxies require), the attacker loads child_process and calls execSync - arbitrary command execution as uid=100(sandbox) inside the sandbox container. This vulnerability is fixed in 4.15.0-beta1.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L
CVSS Score: 6.3

Product Status

Vendor labring
Product FastGPT
Versions
  • Version < 4.15.0-beta1 is affected

References

Problem Types

  • CWE-94: Improper Control of Generation of Code ('Code Injection') CWE
  • CWE-184: Incomplete List of Disallowed Inputs CWE