Incident Published: Sep 19, 2026

AI Recommendation Poisoning: Summary Links That Try to Rewrite Assistant Memory

Microsoft found companies using AI summary links to plant promotional instructions in assistants with persistent memory, a feature that retains preferences across conversations. If accepted and later recalled, those instructions can influence recommendations long after the original page is closed. The defensive priority is to keep website-authored requests from silently becoming trusted user preferences.

Indirect Prompt InjectionInput ValidationData GovernanceAI Copilots
5 applicable AIDEFEND defenses
Source: Manipulating AI memory for profit: The rise of AI Recommendation Poisoning 
Authors: Microsoft Defender Security Research Team and Noam Kochavi
Original article: Feb 10, 2026

Threat Analysis

  • The link carries the instruction. A website or email presents a helpful summary link. Its URL parameters prefill the assistant with a normal summary request plus an instruction to retain a brand as a preferred source. The legitimate assistant hostname does not establish that the user authorized the supplied text.
  • Persistence changes the boundary. If the assistant saves that instruction as memory, a later conversation can reuse it as personalization. The attacker-controlled claim has crossed from external content into a durable preference. This is memory poisoning, not evidence that model weights were retrained.
  • Observed distribution is broader than proven success. Microsoft reports more than 50 unique prompts associated with 31 companies in 14 industries, with public tooling supporting distribution. Success varies by assistant and mitigation changes. The report illustrates stored-memory manipulation; its fictional brands and financial-loss stories are not confirmed victim losses.
  • Map the control to its actual owner. Users of a hosted assistant can inspect saved memories and use the service's available controls. Operators who own the inference gateway and memory service can additionally enforce admission, trust-tier separation and exact-content promotion. These backend controls must not be presented as settings every SaaS customer can enable.

Applicable AIDEFEND Defenses (5)

AID-I-004.004
Transactional Promotion Gates (Quarantine -> Trusted)
Very High
At the durable memory writer, quarantine externally originated memory proposals and exclude every pending state from recall. Promote only the exact tenant, content digest, namespace and version approved by an independent reviewer or trusted policy. With this enforced boundary, the summary request cannot silently become a trusted recommendation preference. Preserve external origin, prevent the model from approving its own proposal, and verify retry/crash behavior; platform ownership is required.
AID-I-004.002
Persistent Memory Partitioning (Trust & Tenant Isolation)
Very High
At the persistent-memory retrieval service, separate external or quarantined records from trusted user preferences and centrally authorize which trust tiers a personalization query may return. If external tiers are denied for trusted personalization, the poisoned record cannot influence this later answer. Tenant separation alone is insufficient: the attack occurs within one user's account. The service must enforce trusted provenance, result binding and fail-closed lease checks; it cannot rely on the model to choose its own namespace.
AID-H-002.002
Inference-Time Prompt & Input Validation
Medium
At an operator-controlled inference gateway, inspect the decoded URL-supplied prompt before model dispatch and deny requests flagged by a request-bound moderation decision. The detector must be calibrated for unsolicited persistent brand steering; a toxicity-only filter or the legitimate assistant hostname is insufficient. Fail closed on moderation errors. This is conditional prevention, not a SaaS tenant setting or a guarantee against semantic evasion.
AID-D-001.005
Recalled Memory Pre-Rehydration Scanning
Medium
Before recalled memory enters prompt assembly, scan each exact record version for instructions that promote a brand or assert source authority. Use a calibrated prompt-safety detector and emit findings bound to the tenant, recall request and content digest. This can expose an earlier poisoned write, but benign-looking paraphrases may evade detection. The scanner does not block or delete memory; a separate admission policy must act on the finding, and missing scans or detector errors must not be treated as clean.
AID-E-005
Compromised Durable Application Session & Agent State Teardown
Medium
After confirming a poisoned memory, the store operator removes the exact authorized records and their derived index/cache copies, records reinsertion tombstones, and uses a separate read-only identity to verify that a replacement agent cannot reload them. Preserve clean memories. This removes persistence after the fact; it does not undo prior recommendations. Ordinary SaaS users can remove suspicious saved memories through available controls, but cannot independently prove backend purge when the provider exposes no such evidence.

What Defenders Should Do Now

  • For assistant users: inspect the full destination and decoded prompt before following an AI summary link. When intent is unclear, open the assistant directly and write the request yourself. Review available saved-memory controls, remove unfamiliar promotional preferences, and disable memory where available if persistence is unnecessary. Starting another chat alone does not establish cleanup.
  • For security teams: hunt decoded AI-assistant URL parameters in email, messaging and click records for unsolicited future-recommendation instructions. URL visibility and appropriate logging are prerequisites; a hostname-only proxy log is insufficient. A matching link identifies possible exposure, so confirm stored-memory changes before reporting a successful compromise.
  • For platform owners: preserve external origin through prompt processing and memory proposals. Quarantine such proposals and require independent, exact-content approval before trusted persistence. Make the recall service deny unapproved trust tiers even within the same user account.
  • Test the complete boundary: use an isolated test account with a harmless fictional brand. Exercise summary-only requests, unsolicited memory instructions, paraphrases and encoded variants. Verify the candidate never becomes trusted or appears in a later conversation without approval, and that clean preferences still work. Treat detector outages and missing decisions as failures, not permission to continue.
  • After a confirmed write: remove the exact tainted memory and any derived copies under the operator's control, prevent stale reinsertion, and independently test a fresh recall. Reassess affected recommendations using independent sources. Distinguish SaaS UI deletion from provider-backed proof that all reloadable copies are gone.

Conclusion

This case turns a convenience link into a request for lasting influence. AIDEFEND  identifies the practical control points: inspect the supplied prompt, independently authorize persistent memory, restrict later recall by trust tier, detect poisoned records and remove confirmed tainted state. Their effect depends on enforcement at the named service boundary and verification with the actual deployment; input filtering alone cannot establish that future recommendations are trustworthy.