Skip to content

Published · 6h agoSecurity2 min read

Noma Labs finds Salesforce Agentforce flaw letting attackers exfiltrate CRM data via a $5 whitelisted domain

Noma Labs rated its ForcedLeak chain in Salesforce Agentforce at CVSS 9.4. The instruction arrived in a lead form, and the CRM data left through an image request to a domain the allow policy already trusted.

4 publishersOperator

Not a builder's beat, but builders have a standing stake in it.See today for builders

Artwork accompanying Noma Labs finds Salesforce Agentforce flaw letting attackers exfiltrate CRM data via a $5 whitelisted domain

What happened

  • Noma Labs rated ForcedLeak, an indirect prompt injection chain in Salesforce Agentforce that could let external attackers exfiltrate CRM data, at CVSS 9.4 critical severity.
  • The payload sat in the description field of a Web-to-Lead submission and fired later, when an employee asked the agent about that lead, with CRM data leaving through image requests that bypassed security controls.
  • Noma says the injected payload executes in the context of the running user, so what leaks depends on the data that account can reach and on the actions the payload is configured to call.
  • EchoLeak, CVE-2025-32711, produced the same outcome against Microsoft 365 Copilot: remote, unauthenticated data exfiltration from a single crafted email.
  • Service desk integrations now let AI agents lock a device, erase it during offboarding and retrieve FileVault recovery keys from Jamf without anyone opening the Jamf console.

Compiled by The WatchSomething wrong?How this is made

Why it matters

  • constraint Salesforce's patch stops Agentforce output from going to untrusted URLs, so the injection still succeeds and the defense holds only as long as the URL allow list does.
  • capability A Ravenna workflow that locks an assigned Mac the moment an employee reports it stolen will also lock one when the report is text an attacker planted.
  • contradiction Noma tells customers to review 30 to 60 days of agent interactions for anomalies, while Console advertises that every Jamf action it fires is logged and auditable, so an operator's ability to reconstruct what an agent did depends on which product holds the trail.
  • decision Where 50 to 70 percent of internal tickets resolve without a human, the agent's own permission set is the access control, and someone has to own scoping it.

The only purchase in the ForcedLeak chain was a domain. Noma Labs said the exfiltration step used a whitelisted domain that cost $5 [1]. Reaching it took a content security policy bypass, weak context validation, and a model that treated instructions arriving as data the same way it treated the employee's own request [4].

Salesforce began enforcing Trusted URL allow lists for Agentforce and Einstein Generative AI agents on September 8, 2025, and Noma says customers are not affected by the attack as a result [7]. Aim Security disclosed EchoLeak in June 2025; Microsoft assigned CVE-2025-32711 and issued emergency patches [11]. About three months separate the two dates [18].

Both chains ended in the same place. EchoLeak evaded Microsoft's XPIA prompt-injection classifier, got around link redaction using reference-style Markdown, exploited auto-fetched images, and pushed data through a Microsoft Teams proxy that the content security policy allowed, with no user interaction at any step [10]. Each of the two publicly documented production prompt injection chains exfiltrated through an automatic fetch to an already permitted domain [17].

An agent wired into Jamf does not only read; it locks, wipes and releases keys, and it decides when based on text a person typed into a chat window or a web form. Neither writeup offers a way to tell an injected instruction from a legitimate one at the moment the agent acts. By mid-2024, more than 10,000 businesses had integrated Copilot into their Microsoft 365 workflows, according to the George Washington University case study on EchoLeak [12].

What to watch

  • Whether Microsoft or Salesforce ship a control that blocks the injected instruction rather than the outbound request.
  • Whether the 30-60 day lead-data audits Noma recommends turn up real submissions carrying injection payloads.
  • Whether an injection of this class reaches a device action: a Jamf lock, a wipe, or a FileVault key release triggered by attacker text.

Claim ledger

Ranked by verification strength, evidence, and original report placement.

  1. [1]

    Noma Labs discovered the ForcedLeak vulnerability chain, which allows external attackers to exfiltrate sensitive CRM data from Salesforce Agentforce through an indirect prompt injection attack, using a whitelisted domain that cost $5.

  2. [2]

    Noma Labs discovered ForcedLeak, a critical severity (CVSS 9.4) vulnerability chain in Salesforce Agentforce that could enable external attackers to exfiltrate sensitive CRM data through an indirect prompt injection attack.

  3. [3]

    The attacker submits a Web-to-Lead form with malicious instructions hidden in the description field; when an internal employee later queries the AI about that lead, the AI executes both the employee's legitimate request and the attacker's hidden commands, and the system transmits Salesforce CRM information to attacker-controlled servers through image requests that bypass security controls.

Sources & coverage · 4 publishers

The reporting this story was synthesized from, earliest first. Every link goes to the original.