MetaGPT through 0.6.4 allows the QaEngineer role to execute arbitrary code because RunCode.run_script() passes shell metacharacters to subprocess.Popen.
Date: 2024-01
Affected: deepwisdom/metagpt
Attack vector: rce
Category: vulnerability-disclosure
Severity: High
CVE: CVE-2024-23750
CWE: CWE-94
CVSS: 8.8 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)

MetaGPT through 0.6.4 allows the QaEngineer role to execute arbitrary code because RunCode.run_script() passes shell metacharacters to subprocess.Popen.


Mitigations:

Architectural layers (MAESTRO):