Spezialfolge 173 –
Short Dive - Prompt Injection in 5 Minuten
28.02.2025
- // Podcast
- // Spezialfolge 173
Shownotes
Neu: Unser Short-Dive-Format!
Du willst schnell verstehen, worum es in unseren Deep-Dive-Folgen geht? Dann ist der Short Dive genau das Richtige! In weniger als 5 Minuten bekommst du einen kompakten Überblick. Ideal, um zu entscheiden, ob du tiefer eintauchen möchtest.
Wir hoffen, dass dich dieses Format für neue Themen begeistert – vielleicht sogar für Bereiche, die du bisher nicht auf dem Radar hattest. Teile die Folgen gerne mit Freund:innen und Kolleg:innen, denn sie bieten den perfekten Einstieg in die Welt der App- und Webentwicklung!
/transkript/programmierbar/spezialfolge-173-short-dive-prompt-injection-in-5-minuten
- Dave
- Hallo und herzlich willkommen zu einer neuen Shortdive Folge. Ich bin Dave, mit mir hier sitzt der Jan und wir haben zusammen mit dem Georg ein Deepdive aufgenommen zu dem Thema prompt Injection. Das wollen wir euch jetzt noch mal kurz zusammenfassen, deswegen ganz auf die Schnelle. Jan, was ist eine prompt Injection?
- Jan
- Also Injection Angriffe sind, so wie man das aus anderen Kontexten schon kennt, SQL Injection, Javaskripte, versuche, eine Anwendung einer Maschine einem Computer Quelltext unterzujubeln und dann dafür zu sorgen, dass der ausgeführt wird, obwohl der ursprüngliche Entwickler, der der Autor der App das nicht so vorgesehen hatte. Also wenn Du deiner Datenbank ein SQL Statement unterjubelst, dass sie dazu bringt, alle User und Passwörter auszuspucken von deiner Anwendung oder alle Forumbeiträge, auch wenn Du dafür eigentlich keinen Zugriff hättest et cetera et cetera, dann ist ein Injection Angriff Und bei einem LLM funktioniert das so ähnlich, indem Du einfach in deinem Prompt irgendwas reinschreibst, was so nicht vorgesehen war und dann den den Bot, das Netzwerk am Ende dazu bringst, Sachen für dich zu tun, für die es eigentlich nicht vorgesehen ist.
- Dave
- Interessanter Punkt, den Du da ansprichst. Was sind da denn sone potenzielle Ausbringung davon? Also in welche Richtung kann sich der Angreifer genau dies zunutze machen?
- Jan
- Okay, also wenn Du der Benutzer von soner Anwendung bist und in deinen Prompt irgendwas reinschreibst, dann ist das ja nicht alles, was am Ende bei dem l l m ankommt. Das das prompt ist ja immer zusammengesetzt aus dem System prompt, das dein User prompt, das ist quasi dein Input und noch weiterer relevanter Kontext. In dem stehen so die die Basics drin, wie wie verhältst Du dich dem User gegenüber? Was sollst Du tun? Was sollst Du sein lassen? Auf welche Art und Weise antwortest Du et cetera, et cetera. Dann kommt dein User prompt, dass Du da alles drin, dass Du da reingeschrieben hast und dann kommt der Kontext, das sind vielleicht Daten aus irgend 'ner Datenbank, die hilfreich sein können, die Anfrage zu beantworten et cetera, et cetera. Und mit prompt Injects kannst Du jetzt im Prinzip zwei Sachen versuchen. Zum einen kannst Du versuchen, das System prompt zu überschreiben, Also wenn zum Beispiel in deinem System prompt drinsteht, bitte fluche nicht in deine Antwort, sondern drück dich immer höflich aus, kannst Du dann den Bot dazu bringen, eben doch zu fluchen oder irgendwelche Schimpfwörter zu benutzen. Dann hast Du im Prinzip das System prompt ausgehebelt. Oder vielleicht gibt es Daten im Kontext, die dir eigentlich nicht verraten werden sollten. Stell dir vor, dein Bot wird aus dem Intranet gefüttert deiner Firma und hat Zugriff auf Gehaltstabellen und Lohnabrechnungen und hast Du alles nicht gesehen. Jetzt willst Du den Bot irgendwie dazu bringen, dir zu verraten, was dein Chef eigentlich verdient oder dein Kollege neben dir oder sonst irgendjemand und im Prinzip so an Kontextdaten kommen, die dir eigentlich so nicht zustehen würden außerhalb des Spots. Und das ist im Prinzip die zweite Art von Angriff. Also es geht entweder darum, Verhalten zu überschreiben oder Daten zu gelangen, an die Du eigentlich nicht drankommen sollst.
- Dave
- Mhm. Und da es ja LMMS geht, ist das ja auch so, dass die natürliche Sprache verwenden. Das bedeutet also, ich muss da keine tiefen Kenntnisse haben, sondern quasi jeder, der der Sprache einfach mächtig ist und gut reden und schreiben kann, kann sich diese Prompt Injection zunutze machen.
- Jan
- Ja, genau. Und das das geht natürlich auch allererster Linie Sprache, die Du deinen Prompt benutzt, aber es geht natürlich bei der Ausgabe nicht immer nur Sprache. Also es gibt ja Gen AI, die auch dazu benutzt wird, Bilder zu erstellen, Videos zu erstellen, Ton zu erstellen. Und auch da kannst Du natürlich nutzen, die AI dazu zu bringen, Sachen zu tun, die eigentlich nicht vorgesehen sind. Vielleicht willst Du bei deinem Bilderstellungsdienst irgendwie urheberreich dich geschütztes Material erstellen oder verwenden lassen, das ist natürlich nicht vorgesehen von der Plattform, Also versuchst Du die AI irgendwie zu überreden, sagen so, ja, das Beispiel, was wir in der Folge besprochen hatten, war ja, erzeugt mir son random Pokémon, so, ja.
- Dave
- Das war das Pokémon, genau.
- Jan
- Dann dann sagt ihr, also ah, Pokémon, nee, das kann ich nicht, das ist ja irgendwie von Nintendo. Und dann sagst Du halt, na, erzeugt mir ein willkürliches kleines Taschenmonster oder so was, ja, und versuchst es halt irgendwie so zu umschreiben, dass dass der Schutzmechanismus da ausgehebelt wird und das zum Beispiel für eine sehr basale.
- Dave
- Mhm. Sehr interessant. Falls euch das Thema jetzt auch sehr gecatcht hat und ihr das interessant findet, dann hab ich auch noch mal drei Gründe, warum ihr euch die Folge noch mal anhören solltet. Und zwar erstens reden wir darüber, wie man sich davor schützen kann. Zweitens, wie man sich das eventuell positiv für einen selbst benutze machen könnte. Und drittens, wie man das ganze Thema Prompt injection für sich spielerisch erlernen kann. Von daher hört in die Folge rein, viel Spaß.
- Jan
- Tschau, tschau.