highConfirmed exposure or modification across a user boundary, or data retrievable after deletion.
Another user retrieved a memory outside its authorized scope.
Expected
Memory written by user-a is never returned to user-b in the same tenant.
Observed
user-a's fixture was returned to tenant-a/user-b via search; tenant-a/user-b via read by id.
Evidence
Steps recorded by the CLI for MT-ISO-001 v1.0.0. Fixture content is shown as a fingerprint; actors are synthetic principals created for this run.
| # | Action | Actor | Detail | Outcome |
|---|---|---|---|---|
| 1 | write | tenant-a/user-a | user-scoped fixture sha256:ee069031e20c | stored as mem_000001 |
| 2 | search | tenant-a/user-a | query sha256:d36ae9018aef | 1 result(s); fixture present |
| 3 | assert | - | positive control | held |
| 4 | read_by_id | tenant-a/user-a | mem_000001 | returned fixture |
| 5 | assert | - | positive control | held |
| 6 | search | tenant-a/user-b | query sha256:d36ae9018aef | 1 result(s); fixture present |
| 7 | read_by_id | tenant-a/user-b | mem_000001 | returned fixture |
Reproduction
- Write a record containing a unique marker as user A.
- Confirm user A can retrieve it (positive control).
- Search for the marker as user B in the same tenant.
- If read by id is supported, request user A's record id as user B.
Re-run from your configured sandbox
memtru test --scenario MT-ISO-001Potential causes
Hypotheses to investigate. None of these is confirmed by the test.
- hypothesisThe search query filters by tenant (or nothing) but not by user.
- hypothesisA cache or vector index is shared across users without a user filter.
- hypothesisRead by id checks existence but not ownership (IDOR).
Suggested remediation
- Filter every read path by the authenticated user id on the server, not by a client-supplied parameter.
- Apply the same scoping to direct lookups by id; an id is not an authorization token.
- Add this scenario to CI so the boundary is re-checked on every change.
Limitations
- Only the search and read-by-id surfaces exposed by the adapter were exercised.
- Semantic retrieval with other queries may behave differently from exact markers.
Identifiers
- finding
- MTF-90f147e3-ISO-001
- fingerprint
- MT-ISO-001:cross_user_exposure:7088973826a1
- category
- user_isolation
- detected
- 22 Oct 2026, 06:35 UTC