[S2] [backend] A session's agent_id binding is not enforced at run time: any agent in the workspace can read another agent's session memory · Issue #1120 · aixplain/aiXplain · GitHub
Skip to content

[S2] [backend] A session's agent_id binding is not enforced at run time: any agent in the workspace can read another agent's session memory #1120

Open

Description

@aix-ahmet

Source: external black-box user audit of PyPI aixplain 0.2.48 (finding #24). Verified offline against development @ e9f7061; the aixplain/ package there is byte-identical to main/0.2.48, so this is present on all branches.

Problem

s = aix.Session(agent=A); s.save()
A.run(query="My secret codeword is WOMBAT1. Acknowledge.", session=s)
B.run(query="What is my secret codeword? One word.", session=s).data.output   # -> 'WOMBAT1'

3/3 trials. session.agent_id still points at A throughout, so this is an unenforced check, not a rebinding. Scope: both agents on the same workspace/key; cross-tenant was not testable. Within a workspace it means an agent with narrow tool permissions can read the history of one handling more sensitive data.

Suggested fix

Backend: reject a run whose session.agent_id does not match the running agent (or document sessions as workspace-scoped). SDK: could pre-check session.agent_id != self.id and raise/warn client-side.

Activity

  1. added
    bugSomething isn't working
    severity-2High: feature broken or misleading for common usage
    backendRoot cause is server-side; SDK sends correctly
    on Sep 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    backendRoot cause is server-side; SDK sends correctlybugSomething isn't workingseverity-2High: feature broken or misleading for common usage

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions