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
Affected Vendors & Products
References
History
Fri, 29 May 2026 21:45:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Labring
Labring fastgpt |
|
| Vendors & Products |
Labring
Labring fastgpt |
Fri, 29 May 2026 20:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | 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. | |
| Title | FastGPT: sandbox escape to RCE - code-sandbox regex /\bimport\s*\(/ is bypassable | |
| Weaknesses | CWE-184 CWE-94 |
|
| References |
| |
| Metrics |
cvssV3_1
|
Status: PUBLISHED
Assigner: GitHub_M
Published:
Updated: 2026-05-29T19:33:53.500Z
Reserved: 2026-05-05T17:39:31.112Z
Link: CVE-2026-44287
No data.
Status : Deferred
Published: 2026-05-29T20:16:24.243
Modified: 2026-05-29T20:23:16.083
Link: CVE-2026-44287
No data.
OpenCVE Enrichment
Updated: 2026-05-29T21:30:06Z