Letta Server: Missing authentication by default allows unauthenticated API access and RCE
Summary
Letta through version 0.16.8 ships a compose.yaml that does not enable LETTA_SERVER_SECURE, so the password middleware is not added and all API routes are unauthenticated. The bundled PostgreSQL port is also published with default superuser credentials. A remote attacker with network access to the server can execute arbitrary Python via the tool-run endpoint, manage admin users, or run OS commands through PostgreSQL COPY PROGRAM.
Affected
- Letta through 0.16.8 (letta-ai/letta)
- Deployments based on the shipped compose.yaml without LETTA_SERVER_SECURE enabled
Fixed in
Unknown. No fixed version has been confirmed by the vendor.
Workaround
- Set LETTA_SERVER_SECURE explicitly to enable authentication in compose.yaml or the environment
- Stop publishing the PostgreSQL port and replace the default database credentials
- Restrict Letta and its database to an internal network
Exploitation
- Public proof of concept: Yes (Lasso write-up)
- In the wild: No evidence found
- CISA SSVC: Exploitation poc, automatable yes, technical impact total
Our recommendation
- Identify all Letta instances, including test and self-hosted deployments, and check whether any are reachable from the internet
- Enable LETTA_SERVER_SECURE and change all default database credentials
- Remove the published database port and restrict access to an internal network
- Monitor the vendor's GitHub releases for a fixed version and apply it as soon as it is available
- Treat internet-exposed instances as high priority
Public exploits
PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.
Research sources
- GitHub: compose.yaml (Letta) github.com
- GitHub: app.py (Letta) github.com
- Lasso Vulnerability Database www.lasso.security
- VulnCheck Advisory www.vulncheck.com
- VulDB vuldb.com
- The Hacker Wire www.thehackerwire.com
Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 31 Oct 2026, 01:08.
Original description (NVD)
Letta through 0.16.8 ships a compose.yaml that does not enable LETTA_SERVER_SECURE, so the password middleware is never added and all API routes are unauthenticated, and it exposes a superuser PostgreSQL port with default credentials. Remote attackers can execute arbitrary Python via POST /v1/tools/run, manage /v1/admin users, or run OS commands via COPY PROGRAM.
NVD references (4)
- https://github.com/letta-ai/letta/blob/1131535716e8a31c9a437f8695e25ac98f203a24/compose.yaml#L17
- https://github.com/letta-ai/letta/blob/1131535716e8a31c9a437f8695e25ac98f203a24/letta/server/rest_api/app.py#…
- https://www.lasso.security/vulnerability-database/cve-2026-77936
- https://www.vulncheck.com/advisories/letta-through-0.16.8-insecure-default-configuration-unauthenticated-api-…
Sources
The tracker combines official, freely usable data sources – updated continuously:
- NVD (NIST) – CVEs, rating (CVSS), affected products
- CISA KEV – vulnerabilities confirmed by CISA as actively exploited
- CISA Vulnrichment – CISA assessment (SSVC) in the official CVE record
- FIRST EPSS – probability of exploitation
- Microsoft MSRC – Patch Tuesday: vulnerabilities, severity, updates
- PoC-in-GitHub – public proof-of-concept repositories
- Metasploit (Rapid7) – modules of the Metasploit Framework
- Exploit-DB (OffSec) – archive of public exploits (links only)
- Patch days: official vendor pages (linked per vendor) (Vendor patch days)
This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.
Affected? We can help.
We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.
