Serena: Unauthenticated Flask dashboard on fixed port enables DNS rebinding → memory poisoning → RCE
Description
Serena is a powerful MCP toolkit for coding that provides semantic retrieval and editing capabilities. Prior to v1.5.2, Serena's built-in web dashboard exposes an unauthenticated Flask API on a fixed, predictable port, with no authentication, no CSRF protection, and no Host header validation. A DNS rebinding attack allows a malicious webpage to reach this API from any browser and write arbitrary content to the agent's persistent memory store, which the agent reads and acts on autonomously. Combined with execute_shell_command using shell=True, this creates a remote code execution chain requiring only that the victim visit a malicious webpage while Serena is running. This issue is fixed in version v1.5.2.
Affected packages
Versions sourced from the GitHub Security Advisory.
| Package | Affected versions | Patched versions |
|---|---|---|
serena-agentPyPI | < 1.5.2 | 1.5.2 |
Affected products
1Patches
Vulnerability mechanics
References
5- github.com/advisories/GHSA-37h2-6p4f-mp3qghsaADVISORY
- nvd.nist.gov/vuln/detail/CVE-2026-49471ghsaADVISORY
- github.com/oraios/serena/commit/016ccbe1c095a3eed7967737ac1d4df2754f5d96ghsax_refsource_MISCWEB
- github.com/oraios/serena/releases/tag/v1.5.2ghsax_refsource_MISCWEB
- github.com/oraios/serena/security/advisories/GHSA-37h2-6p4f-mp3qghsax_refsource_CONFIRMWEB
News mentions
0No linked articles in our index yet.