{
  "entry": {
    "kind": "vuln",
    "slug": "salesbleed-zero-click-data-exfiltration-from-salesforce-agentforce-via",
    "name": "salesbleed-zero-click-data-exfiltration-from-salesforce-agentforce-via",
    "vendor": "Salesforce Agentforce",
    "description": "Zenity Labs (Alex Apostolov, Joao Donato, Avishai Efrat, Ayush RoyChowdhury) published SalesBleed on 24 September 2026. An attacker submits a lead through a public Salesforce Web-to-Lead form with a hidden prompt injection in one field; when an employee later asks Agentforce to review recent leads, the default General CRM subagent reads the lead and follows the injected instructions. Because that subagent can read both Leads and Accounts, it queries account data such as company names and deal sizes, encodes it into a subdomain of an attacker hostname and renders it as an image tag, so the client's DNS lookup leaks the data even where HTTP egress is blocked. Two parsing gaps in the Trusted URLs redaction layer let the URL through: an unrecognized TLD (.fun) and trailing curly braces that the redactor and the renderer handle differently. Agents published to Slack leak the same way through link unfurling. Zenity reported on 1 June 2026, Salesforce confirmed a fix on 18 August, and Zenity verified it on 19 August. No CVE was assigned and no in-the-wild exploitation is reported.",
    "website": "https://labs.zenity.io/post/salesbleed-0-click-data-exfiltration-on-agentforce",
    "repository": null,
    "documentationUrl": null,
    "license": null,
    "version": null,
    "trustLevel": "advisory",
    "capabilities": [],
    "packaging": null,
    "configFiles": null,
    "category": "agent",
    "updatedAt": "2026-09-24",
    "risk": {
      "score": 75,
      "band": "high",
      "signals": [],
      "dangerousCombos": []
    },
    "dangerousCombos": [],
    "vuln": {
      "id": "salesbleed-zero-click-data-exfiltration-from-salesforce-agentforce-via",
      "aliases": [
        "ti-131"
      ],
      "title": "SalesBleed: Zero-Click Data Exfiltration From Salesforce Agentforce via a Poisoned Web-to-Lead Record",
      "summary": "Zenity Labs (Alex Apostolov, Joao Donato, Avishai Efrat, Ayush RoyChowdhury) published SalesBleed on 24 September 2026. An attacker submits a lead through a public Salesforce Web-to-Lead form with a hidden prompt injection in one field; when an employee later asks Agentforce to review recent leads, the default General CRM subagent reads the lead and follows the injected instructions. Because that subagent can read both Leads and Accounts, it queries account data such as company names and deal sizes, encodes it into a subdomain of an attacker hostname and renders it as an image tag, so the client's DNS lookup leaks the data even where HTTP egress is blocked. Two parsing gaps in the Trusted URLs redaction layer let the URL through: an unrecognized TLD (.fun) and trailing curly braces that the redactor and the renderer handle differently. Agents published to Slack leak the same way through link unfurling. Zenity reported on 1 June 2026, Salesforce confirmed a fix on 18 August, and Zenity verified it on 19 August. No CVE was assigned and no in-the-wild exploitation is reported.",
      "severity": "high",
      "cvss": {
        "score": null,
        "vector": null,
        "version": null
      },
      "cwe": [],
      "attackType": [
        "Prompt injection",
        "Data exfiltration"
      ],
      "componentType": "agent",
      "component": {
        "name": "Salesforce Agentforce",
        "vendor": null,
        "package": null,
        "ecosystem": null,
        "catalogSlug": null
      },
      "affected": [
        {
          "range": "Salesforce Agentforce (General CRM subagent, Trusted URLs redaction, Slack-published agents) before the August 2026 server-side fix.",
          "fixed": null
        }
      ],
      "exploited": false,
      "exploitPublic": false,
      "publishedAt": "2026-09-24",
      "modifiedAt": "2026-09-24",
      "lastVerified": "2026-11-01",
      "references": [
        {
          "type": "article",
          "url": "https://labs.zenity.io/post/salesbleed-0-click-data-exfiltration-on-agentforce"
        }
      ],
      "mitigation": "Salesforce fixed the Trusted URLs bypass server-side, so no customer patch is needed. Treat externally submitted records such as Web-to-Lead leads as untrusted input to agents, and scope subagents so that one agent does not hold read access to both untrusted inbound data and sensitive objects like Accounts. Restrict rendering of external images and links in agent output, including Slack unfurling for published agents. Do not rely on output redaction alone, and monitor public lead-capture endpoints for injection-style payloads.",
      "detectedByAnomity": true
    }
  }
}