Tool Poisoning bezeichnet eine Anweisung an ein KI-Modell, die in der Beschreibung eines Werkzeugs versteckt ist. Ein Agent liest diese Beschreibung, um das Werkzeug benutzen zu können, und übernimmt dabei die untergeschobene Anweisung als wäre sie Teil seines Auftrags.
- Tool Poisoning
Eine Anweisung an ein KI-Modell, die in der Beschreibung eines Werkzeugs versteckt ist.
Beispiel: „Das Tool Poisoning stand im Beschreibungstext eines frisch installierten Servers und verlangte das Auslesen der Zugangsdaten.“Wo der Text steht: im Werkzeug-Schema, also in der Beschreibung, die ein Server über seine Funktionen ausliefert. Der Nutzer sieht diesen Text in der Regel nicht.
Verwandt mit der indirekten Prompt Injection: Beide schmuggeln Anweisungen über Inhalte ein, die das Modell zur Arbeit liest.
Warum Agenten darauf hereinfallen
Weil ein Sprachmodell nicht zwischen Beschreibung und Befehl unterscheidet. Beides erreicht es als Text im selben Kontext, und eine Beschreibung, die mitten im Satz in eine Anweisung übergeht, hat keine technische Markierung, an der das Modell den Übergang erkennen könnte. Das ist dieselbe Schwäche, die der Prompt Injection zugrunde liegt, nur an einer Stelle, auf die kaum jemand schaut.
Was den Angriff gefährlich macht
Der Zeitpunkt. Eine vergiftete Beschreibung kann nach der Installation nachgeliefert werden: Der Server verhält sich bei der Prüfung harmlos und ändert seine Beschreibung erst später. Prüfungen bei der Einrichtung reichen deshalb nicht; es braucht einen Blick auf die Beschreibungen bei jedem Start.
Was hilft
Nur Server aus bekannten Quellen, Beschreibungen mit festgehaltener Fassung, und eine Freigabe für die Werkzeuge statt für den Server. Wer die Beschreibungen zusätzlich ausgibt und liest, erkennt den Angriff in Sekunden; das Verfahren klingt umständlich und ist bei einer Handvoll Servern eine Sache von Minuten.
Wie man es prüft
Indem man die Beschreibungen ausgibt und liest. Alle gängigen Anwendungen können die Werkzeugliste eines Servers anzeigen; was dort an Prosa steht, gehört einmal durchgesehen und als Fassung festgehalten. Ändert sich der Text beim nächsten Start, ist das eine Meldung wert, und zwar bevor der Agent damit arbeitet.