Skip to content

TCP memnet serve: no session token or ACL (post-0.3.6 hardening) #28

Description

@chouswei

Summary

Any client that can reach memnet serve and knows a live session_id can read and mutate that session. There is still no session_token, serve-level auth, or session ACL enforcement on the wire.

Partial mitigation (v0.3.6, 3c537c7)

  • Request/response frame cap (default 4 MiB, MEMNET_SERVE_MAX_FRAME_BYTES)
  • Non-loopback bind refused unless MEMNET_SERVE_ALLOW_REMOTE=1 (warns that token/ACL are absent)
  • Framed protocol errors instead of silent drop on oversize/bad frames

These address accidental LAN exposure and unbounded-frame DoS; they do not authenticate callers or restrict session join.

Design

See docs/grammar/memnet-security-multi-agent.md (landed ecf6849): session modes (private / shared / open), roles, and first-class session token; optional future serve token at transport layer.

Suggested direction

Implement session ACL + token gate on session_open / mutating commands per design doc; keep in-process first as the default trust boundary for single-agent use.

Related

Doctrine: README transport table; AGENTS.md points to security design doc.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions