Skip to content

v1.5.2: Security Patch - Project-Scope Isolation for Memory Endpoints

Latest

Choose a tag to compare

@itskie itskie released this 04 Oct 20:52
· 1 commit to main since this release

Security Fixes in v1.5.2

  • Cross-Project Memory Mutation Protection: Added _verify_memory_project() ownership check to POST /delete, DELETE /memory/{id}, and POST /update in gateway/main.py. Mismatched or unscoped callers attempting to modify a project-scoped memory now strictly receive HTTP 403 Forbidden.
  • Search Scoping & Data Isolation: POST /search now strictly passes filters={"AND": [{"metadata": {"project": project_filter}}]} to Mem0 and applies defensive post-filtering to prevent leaking memories across tenants holding a shared API key.
  • Blueprint Ingestion Scoping: POST /ingest now tags ingested memory records with the caller's project namespace.
  • Hygiene & Regression Test Coverage: Added test_gateway_memory_cross_project_isolation_and_search_scoping to tests/test_hygiene.py. Full test suite 100% green.

Acknowledgements

Special thanks to security researcher kta1kri for discovering this vulnerability, responsibly disclosing it with clear reproduction steps, and verifying the fix.