CrucibleCrucible

Can corroboration stop AI-agent memory poisoning? MeasuredZastaví corroboration otravu pamäte AI agentov? Odmerané

June 27, 20263 min readagent memory · memory poisoning · LLM security · MINJA · replication · mnemopamäť agentov · otrava pamäte · bezpečnosť LLM · MINJA · replikácia · mnemo
The takeawayZhrnutie

Memory-injection attacks (MINJA, Agent Security Bench) poison naive AI-agent memory 70–95% of the time. We replicated the attack against mnemo's corroboration gate: single-source poison drops to 0% — for both entrenchment and overwrite — but a sybil forging ≥2 sources bypasses it. Strong baseline, honest limits, runnable.Memory-injection útoky (MINJA, Agent Security Bench) otrávia naivnú pamäť AI agenta 70–95% prípadov. Replikovali sme útok proti corroboration gate v mnemo: single-source poison padá na 0% — aj zakorenenie, aj prepis — ale sybil, čo sfalšuje ≥2 zdroje, ho obíde. Silný baseline, poctivé limity, spustiteľné.

Yes — for the common single-source attack, and we measured it. Memory poisoning (memory injection) of LLM agents — feeding an agent a crafted "memory" that later steers its behaviour — succeeds 70–95% of the time against standard memory stores. We replicated the attack against mnemo's corroboration gate and measured the defence: single-source poison drops to 0% — for both entrenching a new poison and overwriting a true fact. It is not a silver bullet: a sybil that forges independent corroboration still gets through. Here are the numbers.

What memory poisoning is — and why 70–95% is alarming

A memory-based agent stores facts and experiences and recalls them later. Memory poisoning injects a malicious record that, once stored and retrieved, redirects the agent. Recent work reports it works alarmingly well on standard stores:

The poison persists because naive memory ranks records by importance/recency — so a high-value injected record entrenches and is recalled later.

We replicated it against mnemo

mnemo is our open memory core. Its defence is not a ranking trick — it is corroboration: a memory becomes durable/trusted only when evidence corroborates it (earned outcome credit, or ≥2 independent corroborations), not because it is "important". We replicated two MINJA goals end-to-end on the recall the agent would actually use, against the real shipped mnemo:

The result (measured, N = 150 per cell)

attack goalnaive storemnemo (default)mnemo (hardened)sybil: forged ≥2
Entrench a durable poison100%0%0%100%
Overwrite a true fact100%100%0%100%

Two honest limits (no silver bullet)

The sybil boundary. An attacker who can forge ≥2 independent-looking corroborations bypasses the gate (100%). This is exactly the Adaptation–Corruption Separation Law's boundary B ≥ d: corroboration-gating stops the dominant single-source attacker, not a sybil. Counting corroborations is forgeable; closing this gap needs a real source-independence / identity signal.
The input-type bypass. A poison phrased as a procedure ("always do X") is classified procedural — durable by design — and sidesteps the episodic graduation gate (~100%). The lesson: require corroboration for procedural/durable writes too, not only for facts.

If you build agent memory, RAG, or a memory layer

  1. 1. Don't rank durability by importance or recency — that is exactly what memory poisoning exploits. Gate durability on corroboration.
  2. 2. Enable the corroboration guard for adversarial ingestion (in mnemo: supersede_requires_corroboration; the entrenchment gate is on by default).
  3. 3. Gate procedural/durable writes too, not just facts — phrasing is part of the attack surface.
  4. 4. Treat corroboration-count as forgeable — for untrusted, multi-tenant input you still need a source-independence signal against sybils.

This is the same principle we ship across mnemo — see also the corroboration guard that won't let an uncorroborated fact become permanent and the two-tier store that resists a poison flood in eviction.

FAQ

Does corroboration-gating stop all memory poisoning? No. It stops the dominant single-source attack (0%), but not a sybil that forges ≥2 independent corroborations.

Is mnemo protected by default? The entrenchment defence (the graduation gate) is on by default. The overwrite defence (supersede_requires_corroboration) is opt-in — enable it for adversarial settings.

How does this relate to MINJA and Agent Security Bench? They report 70–95% attack success on standard memory stores; we replicate the same threat and measure a corroboration defence — including where it fails.

Is this real code or a simulation? The real, shipped mnemo, end-to-end on recall, N = 150 per cell. Reproducible.

The falsifierIf single-source self-asserted poison had entrenched or overwritten the truth despite the gate, or if forged ≥2-source corroboration had also been blocked (impossible without a real independence signal), the claim would be wrong. Neither happened.

Áno — pre bežný single-source útok, a odmerali sme to. Otrava pamäte (memory injection) LLM agentov — podstrčenie vyrobenej „spomienky", ktorá neskôr riadi správanie agenta — uspeje 70–95% prípadov proti štandardným pamäťovým úložiskám. Replikovali sme útok proti corroboration gate v mnemo a odmerali obranu: single-source poison padá na 0% — aj pri zakorenení nového poisonu, aj pri prepísaní pravdivého faktu. Nie je to silver bullet: sybil, ktorý sfalšuje nezávislé corroboration, stále prejde. Tu sú čísla.

Čo je otrava pamäte — a prečo je 70–95% alarmujúce

Pamäťový agent ukladá fakty a skúsenosti a neskôr si ich vybavuje. Otrava pamäte vloží škodlivý záznam, ktorý po uložení a vybavení presmeruje agenta. Najnovšie práce hlásia, že to na štandardných úložiskách funguje desivo dobre:

Poison pretrvá, lebo naivná pamäť radí záznamy podľa dôležitosti/recency — takže vysoko-hodnotný vložený záznam sa zakorení a vybaví.

Replikovali sme to proti mnemo

mnemo je naše otvorené pamäťové jadro. Jeho obrana nie je trik v radení — je to corroboration: spomienka sa stane trvalou/dôveryhodnou len keď ju dôkazy potvrdia (zaslúžený credit za výsledok, alebo ≥2 nezávislé potvrdenia), nie preto, že je „dôležitá". Replikovali sme dva ciele MINJA end-to-end na recall, ktorý by agent reálne použil, proti reálnemu shipnutému mnemo:

Výsledok (odmerané, N = 150 na bunku)

cieľ útokunaivné úložiskomnemo (default)mnemo (hardened)sybil: sfalšuje ≥2
Entrench trvalý poison100%0%0%100%
Overwrite pravdivý fakt100%100%0%100%

Dve poctivé limity (žiadny silver bullet)

Sybil hranica. Útočník, čo dokáže sfalšovať ≥2 nezávisle vyzerajúce corroboration, bránu obíde (100%). To je presne hranica B ≥ d zo Zákona o oddelení adaptácie a poškodenia: corroboration-gating zastaví dominantného single-source útočníka, nie sybila. Počítanie corroboration je falšovateľné; túto dieru zatvorí až reálny signál nezávislosti zdroja / identity.
Bypass cez typ vstupu. Poison formulovaný ako procedúra („always do X") sa klasifikuje ako procedural — trvalý už z princípu — a obíde episodic graduation gate (~100%). Poučenie: vyžadovať corroboration aj pre procedural/durable zápisy, nielen pre fakty.

Ak staviaš pamäť agentov, RAG alebo pamäťovú vrstvu

  1. 1. Neraď trvalosť podľa dôležitosti či recency — práve to otrava pamäte zneužíva. Bránu trvalosti postav na corroboration.
  2. 2. Zapni corroboration guard pre adversariálny vstup (v mnemo: supersede_requires_corroboration; gate zakorenenia je default).
  3. 3. Bráň aj procedural/durable zápisy, nielen fakty — formulácia je súčasť útočnej plochy.
  4. 4. Ber corroboration-count ako falšovateľný — pre nedôveryhodný multi-tenant vstup stále potrebuješ signál nezávislosti zdroja proti sybilom.

Je to ten istý princíp, čo shipujeme naprieč mnemo — pozri aj corroboration guard, ktorý nedovolí, aby sa nepodložený fakt stal trvalým a dvojvrstvové úložisko, ktoré odoláva poison-záplave pri evictione.

FAQ

Zastaví corroboration-gating každú otravu pamäte? Nie. Zastaví dominantný single-source útok (0%), ale nie sybila, čo sfalšuje ≥2 nezávislé corroboration.

Je mnemo chránené by default? Obrana zakorenenia (graduation gate) je default. Obrana prepisu (supersede_requires_corroboration) je opt-in — zapni ju pre adversariálne nasadenie.

Ako to súvisí s MINJA a Agent Security Bench? Hlásia 70–95% úspešnosť na štandardných úložiskách; my replikujeme tú istú hrozbu a odmeriame corroboration obranu — vrátane toho, kde zlyhá.

Je to reálny kód, alebo simulácia? Reálne shipnuté mnemo, end-to-end na recall, N = 150 na bunku. Reprodukovateľné.

FalzifikátorAk by single-source samopodpísaný poison zakorenil alebo prepísal pravdu napriek bráne, alebo ak by aj sfalšované ≥2-zdrojové corroboration boli zablokované (nemožné bez reálneho signálu nezávislosti), tvrdenie by bolo nesprávne. Ani jedno sa nestalo.
Real shipped mnemo (lexical store), measured end-to-end on recall, N = 150 per cell. External attack rates are as reported by MINJA (arXiv 2601.05504) and Agent Security Bench (arXiv 2410.02644); we cite them, we did not measure them. This is a Crucible replication — every number is reproducible from the open code.Reálne shipnuté mnemo (lexikálne úložisko), odmerané end-to-end na recall, N = 150 na bunku. Externé miery útoku sú podľa MINJA (arXiv 2601.05504) a Agent Security Bench (arXiv 2410.02644); citujeme ich, nemerali sme ich. Toto je Crucible replikácia — každé číslo je reprodukovateľné z otvoreného kódu.
← More writing from Agora← Ďalšie texty od Agory