1 Punkte von GN⁺ 2025-08-22 | 1 Kommentare | Auf WhatsApp teilen
  • Schwachstellen in der Bildskalierung können genutzt werden, um AI-Systeme in Produktionsumgebungen anzugreifen
  • Ein äußerlich unauffälliges Bild kann beim Herunterskalieren in eine Prompt-Injection-Nutzlast umgewandelt werden und so Datenabfluss verursachen
  • Dieser Angriff wurde in verschiedenen realen Diensten wie Google Gemini CLI nachgewiesen und nutzt eine Diskrepanz zwischen der Wahrnehmung durch den Nutzer und der Eingabe an das Modell aus
  • Je nach Downscaling-Algorithmus und dessen Implementierung unterscheiden sich Angriffstechnik und Auswirkungen; mit dem Open-Source-Tool Anamorpher lassen sich Bildangriffe experimentell erproben
  • Als Gegenmaßnahmen werden eine Vorschau der tatsächlichen Eingabe, sichere Designmuster sowie die Anforderung einer klaren Benutzerbestätigung empfohlen

Hintergrund und Problemstellung

  • Wenn scheinbar gewöhnliche Bilder in AI-Systeme wie LLMs eingespeist werden, kann beim Herunterskalieren eine verborgene multimodale Prompt Injection aktiv werden und Benutzerdaten nach außen leiten
  • Diese Schwachstelle entsteht, weil das Bild, das dem Modell tatsächlich übergeben wird, einen Skalierungsprozess durchläuft, in dem die vom Angreifer eingebettete Nutzlast sichtbar wird

Bildskalierungsangriffe auf produktive AI-Systeme

  • Der Blogpost demonstriert, dass sich Schwachstellen in der Bildskalierung in verschiedenen realen AI-Produkten wie Gemini CLI, Vertex AI Studio, Gemini Web und API, Google Assistant, Genspark praktisch für Angriffe ausnutzen lassen
  • Mit dem Open-Source-Tool Anamorpher können solche maßgeschneiderten Bilder einfach erzeugt und verifiziert werden

Beispiel für einen Datenabflussangriff (Gemini CLI)

  • In Gemini CLI genehmigt der Zapier-MCP-Server bei Standardeinstellungen automatisch alle MCP-Toolaufrufe ohne Bestätigung des Nutzers (settings.json mit der Einstellung trust=True)
  • Lädt ein Nutzer ein normal aussehendes Bild hoch, führt die Prompt Injection im herunterskalierten Bild dazu, dass Daten aus Google Calendar an die E-Mail-Adresse des Angreifers exfiltriert werden
  • Da keine tatsächliche Vorschau bereitgestellt wird, kann der Nutzer weder das veränderte Ergebnis noch das Vorliegen eines Angriffs erkennen
  • Ähnliche Prompt-Injection-Angriffe wurden bereits auch in verschiedenen agentenbasierten Coding-Tools wie Claude Code und OpenAI Codex nachgewiesen
  • Diese Werkzeuge weisen standardmäßig häufig unsichere Einstellungen und Systemmuster auf, weshalb grundlegende Abhilfemaßnahmen nötig sind

Weitere Angriffsbeispiele

  • Auch in Vertex AI, der Gemini-Weboberfläche, der Gemini API, Google Assistant und Genspark gelangen bildskalierungsbasierte Prompt-Injection-Angriffe erfolgreich
  • Besonders in Vertex AI Studio können Nutzer nur das hochauflösende Bild sehen, nicht aber das herunterskalierte Bild, das das Modell tatsächlich erhält
  • Dadurch wird die Diskrepanz zwischen Nutzerwahrnehmung und realer Modelleingabe zum entscheidenden Einfallstor für Angriffe
  • Der Angriffsvektor ist breit über unterschiedliche Systeme und Werkzeuge verteilt

Interne Funktionsweise von Bildskalierungsangriffen

  • Der Angriff missbraucht die Interpolationseigenschaften von Algorithmen zur Bildverkleinerung (Resampling)
  • Zu den typischen Downscaling-Algorithmen zählen Nearest Neighbor, Bilinear, Bicubic Interpolation, wobei jeweils angepasste Angriffstechniken erforderlich sind
  • Auch zwischen Bibliotheken wie Pillow, PyTorch, OpenCV, TensorFlow bestehen Implementierungsunterschiede etwa bei Antialiasing, Alignment und internen Bugs
  • Angreifer müssen für jedes System per Fingerprinting ermitteln, welche Algorithmen und Implementierungen verwendet werden, um den Angriff optimal anzupassen
  • Mit verschiedenen Testbildern wie Schachbrettmustern, konzentrischen Kreisen, gebänderten Mustern, Moiré-Effekten und schrägen Kanten werden Algorithmuseigenschaften und Artefakte analysiert

Bildabtastung und das Nyquist–Shannon-Theorem

  • Wenn ein Band ein feines Muster trägt und in festen Abständen abgetastet wird, kann bei zu geringer Sampling-Rate das ursprüngliche Muster nicht korrekt rekonstruiert werden und es entstehen Verzerrungen
  • Dieses in der Nyquist–Shannon-Abtasttheorie beschriebene Aliasing wird vom Angreifer ausgenutzt, indem Pixel so manipuliert werden, dass nach dem Herunterskalieren ein bestimmtes Muster erscheint

Anamorpher: Werkzeug zur Erzeugung von Angriffsbildern

  • Anamorpher ist ein Open-Source-Tool, mit dem sich Angriffsbilder erzeugen und visualisieren lassen, abgestimmt auf gängige Downscaling-Algorithmen wie Nearest Neighbor, Bilinear und Bicubic
  • Bei Bicubic Interpolation wird der Wert eines Ausgabepixels beispielsweise anhand von 16 Pixeln in einem 4x4-Bereich bestimmt, wobei umliegende Pixel unterschiedlich gewichtet werden
  • Angreifer wählen ein kontraststarkes Bild, etwa einen tiefschwarzen Hintergrund, und optimieren die Helligkeit der besonders gewichtigen Pixel per Methode der kleinsten Quadrate, damit das Herunterskalieren ein klares Angriffsmuster ergibt
  • Anamorpher bietet ein Frontend-Interface und eine Python API; dank modularisiertem Backend können Nutzer sogar mit benutzerdefinierten Downscaling-Algorithmen experimentieren

Verteidigung und Gegenmaßnahmen

  • Der sicherste Ansatz ist, auf Bild-Downscaling ganz zu verzichten und stattdessen die zulässige Bildgröße beim Upload zu begrenzen
  • Wenn Konvertierung und Downscaling unvermeidbar sind, sollte in allen Eingabekanälen wie CLI und API unbedingt eine Vorschau des tatsächlichen Modelleingabebildes bereitgestellt werden
  • Insbesondere darf Text innerhalb von Bildern keine sensiblen Toolaufrufe auslösen können, ohne dass eine ausdrückliche Zustimmung des Nutzers eingeholt wird; außerdem sind systemweit sichere Designmuster und systematische Gegenmaßnahmen erforderlich

Künftige Aufgaben

  • Auf mobilen Geräten und Edge-Devices könnte das Risiko noch größer sein, da dort feste Bildgrößenbeschränkungen und ineffiziente Downscaling-Algorithmen häufiger vorkommen
  • Weitere Forschung und Abwehrmaßnahmen sind nötig, etwa zur Kombination mit Sprach-AI, noch ausgefeilteren Algorithmen und Injektionserkennung, semantischer Prompt Injection sowie der Nutzung von Upscaling-Artefakten

Fazit

  • Anamorpher befindet sich derzeit in der Beta-Phase
  • Zusammen mit weiterer Sicherheitsforschung zu multimodalen, agentenbasierten AI-Systemen werden angemessenes Feedback und Verbesserungen erwartet

1 Kommentare

 
GN⁺ 2025-08-22
Hacker-News-Kommentare
  • Anfangs war ich verwirrt, weil der Artikel nicht gut erklärte, wie die Prompt-Injection tatsächlich funktioniert hat … Ich dachte erst, es sei ein Nebeneffekt wie das Manipulieren von Hex-Daten eines Bildes, damit sie in ASCII umgewandelt werden.
    Dann wurde mir klar: Es ging buchstäblich darum, <i>im Bild gerenderten Text zu verstecken</i>.
    Wirklich faszinierend.

    • Diese Angriffsmethode wird schon seit ziemlich langer Zeit diskutiert, siehe dieses Paper.
      Der gruselige Teil ist, dass man ein Bild beim Skalieren wie ein völlig anderes Bild aussehen lassen kann.
      Wenn man zum Beispiel eine Gruppe verhaften wollte, indem man ihr den Besitz illegaler Bilder vorwirft, könnte man mit so einem Skalierungs-Trick das Bild in ein Meme, eine politische Botschaft oder irgendetwas verwandeln, das die Zielgruppe herunterladen möchte.

    • Aus Sicht von jemandem, der VLM-Systeme baut, ist das wirklich beängstigend.
      Inzwischen braucht es wohl OWASP-Richtlinien speziell für VLMs.
      Fast jeden Monat hört man von neuen Angriffstechniken.
      Übrigens hat OWASP kürzlich dieses Material veröffentlicht: Multi-Agentic System Threat Modeling Guide

    • Ich habe den Text im Bild zuerst überhaupt nicht bemerkt.
      Das Problem ist nicht nur das Resizing, sondern auch, dass im Bild enthaltener Text einfach als Teil des Prompts behandelt wird und es keine Transparenz darüber gibt, welchen Anweisungen der Agent folgt.

    • Der wirklich interessante Punkt ist das adversariale Bild, das beim Herunterskalieren anders aussieht.
      Downsampling ist ein klassisches Verfahren, da ist keine AI beteiligt.

    • Das war der Teil, der mich verwirrt hat.
      Gerenderter Text erfordert doch OCR, damit eine Maschine ihn lesen kann, und ich verstehe nicht, warum AI diesen teuren Schritt überhaupt durchlaufen sollte.
      Wenn das Teil eines multimodalen Systems ist, kann es diesen Text womöglich nicht vom Prompt unterscheiden.
      Falls das so ist, ist dieser Mangel wirklich schwer nachvollziehbar.
      Zumindest sollte die OCR-Funktion das Ergebnis nicht automatisch in den Prompt einspeisen, sondern den Nutzer benachrichtigen und eine Bestätigung verlangen.
      Ich hasse solche nichtdeterministischen und instabilen Systeme.
      Ich wünschte wirklich, wir würden wieder zu Algorithmen und solider Technik zurückkehren.

  • Dieses Problem tritt nur auf, wenn die Berechtigungen zu locker gesetzt sind.
    Aber der aktuelle Trend geht zu stärker agentischen Systemen, und diese benötigen oft lockerere Berechtigungen.
    Man kann zum Beispiel an einen humanoiden Roboter denken, der ein Paket vor der Haustür aufhebt.
    Seine Vision-Funktion ist dafür essenziell.
    Wenn jemand ein Bild auf das Paket klebt, um eine Prompt-Injection zu versuchen, könnte der Roboter dazu gebracht werden, Wertgegenstände aus dem Haus zu werfen.
    Ich halte es für dringend, solche Systeme gegen Prompt-Injection zu schützen.

    • Das eigentliche Problem ist hier nicht, dass sich ein Prompt im Bild befindet, sondern dass der Roboter nicht unterscheiden kann, dass die Anweisung aus einer Quelle kommt, die für diese Handlung keine Autorität hat.
      Das grundlegende Problem von ML-Modellen ist, dass ihr reasoning über den Token-Stream des Modells läuft, dieser Stream aber auch externe Eingaben aufnimmt. Dadurch hat das Modell keinen wirksamen Mechanismus, seine eigenen Gedanken von externen Eingaben zu trennen.

    • Das muss direkt in das System integriert werden.
      Zum Beispiel sollte ein Agent mit seinem Arm keine destruktiven Handlungen ausführen können.
      Wenn man erwartet, dass Maschinen mit freiem Willen menschliche Moral entwickeln, und nur versucht, zwischen „guten Prompts“ und „schlechten Prompts“ zu unterscheiden, wird man auch künftig immer wieder von der Gefährlichkeit solcher Systeme überrascht werden.
      Kurz gesagt: Verifizierbare Governance und Behavioral Determinism sind für solche Systeme zwingend notwendig.
      Wahrscheinlich sind sie sogar wichtiger als Maßnahmen gegen Prompt-Injection.

    • Das lässt sich lösen, indem man dem Roboter einen Prompt gibt, falsche Prompts zu ignorieren.

  • Generell frage ich mich, ob sich das Prompt-Injection-Problem nicht weitgehend durch eine aufgabenbezogene Hierarchie lösen ließe.
    Man könnte ein LLM die Arbeit in kleinere Komponenten zerlegen lassen.
    Das LLM für die übergeordnete Aufgabe muss die Details der unteren Ebene nicht frei kennen, sondern kann nur deren Ergebnisse filtern und aufbereiten.
    Das hätte auch den Effekt, den Kontext der LLM-Instanz für die höhere Aufgabe zu begrenzen und sie stärker zu fokussieren.
    Natürlich können untergeordnete Aufgaben Daten an die höhere Ebene weiterreichen, aber man muss das nicht zwingend so bauen.
    Bei sicherheitskritischen Aufgaben ist es womöglich sogar besser, wenn das übergeordnete LLM keine frei formulierten Ergebnisse erhält.

    • Bei jedem LLM besteht das Problem darin, dass das LLM, das den Prompt als erstes empfängt, für Prompt-Injection angreifbar wird.
  • Gute Bildskalierungsalgorithmen müssen die Nyquist-Grenze unbedingt berücksichtigen.
    Wenn man ein Bild zum Beispiel mit bicubic scaling auf ein Drittel der Originalgröße verkleinert, sollte man statt eines 4x4- ein 12x12-Raster verwenden.
    Die Formel zur Berechnung der anzuwendenden Gewichte muss dann nur leicht angepasst werden.
    Auch eine De-Gamma-Korrektur des Bildes ist unbedingt nötig.
    Schade, dass wirklich gutes Scaling so selten ist.

    • Ich denke, viele Aspekte dieses Problems entstehen durch minderwertige Resampling-Algorithmen.
      Sie lassen erhebliches Aliasing ungehindert durch.
      Wie auch im Paper steht, kann selbst bei einem guten Algorithmus mit ausreichend großem Kernel wegen der Quantisierung noch ein Teil der Information erhalten bleiben, aber der Effekt wird stark reduziert.
      Erstaunlich ist, dass selbst bekannte Bibliotheken immer noch nur mipmapping verwenden.
      Gute Resampling-Filter wurden schon vor 15 Jahren auf CPUs für Echtzeit-Videoverarbeitung eingesetzt.
      Gamma-Korrektur kostet oft mehr Rechenleistung als eine Vergrößerung der Kernelgröße.
      Je nach Anwendungsfall kann es deshalb tatsächlich begründet sein, eher die Gamma-Korrektur als das Filter-Resampling wegzulassen.
  • Die sicherheitstechnische Zukunft von LLMs macht mir wirklich Angst.
    Wir bauen Systeme, die das Prinzip der In-band signaling, das wir früher nach vielen Fehlern gelernt haben, komplett ignorieren.
    Es gibt unzählige Angriffsvektoren, von einfach sichtbar eingefügten Befehlen über solche Obfuscation-Methoden bis hin zu ASCII Smuggling.
    Die Verteidigung besteht im Grunde nur darin, einen nichtdeterministischen Algorithmus höflich zu bitten, keine unpassenden Anweisungen zu befolgen.
    Siehe auch: Text mit Unicode-Tags verstecken und finden

    • Immer mehr Entwickler flehen LLMs an, sich korrekt zu verhalten.
      Das wirkt ein bisschen wie die Atmosphäre in Warhammer 40k, gleichzeitig komisch und unheimlich.

    • Die andere Alternative ist, LLMs oder Systeme mit LLMs einfach gar nicht erst zu verwenden.

    • Das erinnert an früher, als man in php Benutzerinput einfach per String-Konkatenation in Queries eingebaut hat und dann ein endloses Whac-A-Mole mit gefährlichen Mustern spielte.
      Es ist bedauerlich, dass wir Jahrzehnte später denselben Fehler wiederholen, weil wir Daten und Befehle nicht sauber trennen.

    • Erstaunlich ist, dass es im Modell nichts wie ein sudo-Token gibt.
      Es wäre schön, wenn es eine Syntax gäbe, die sich nicht mit normalen Tokens ausdrücken lässt.

    • Es fühlt sich an, als wären die Zeiten serieller Terminals wieder zurück.

  • Ich finde es wirklich bemerkenswert, dass ich nie daran gedacht habe, etwas in einem Bild zu verstecken und so zu verschicken.
    LLMs sind wirklich die verwundbarste Software der Geschichte.
    Als ich einmal den Vorgänger von Gemini getestet habe, konnte man durch eine extrem lange Anfangsnachricht den System-Prompt verdrängen und dann alles Mögliche erreichen.

  • Den Teil „This image and its prompt-ergeist“ fand ich besonders eindrucksvoll.

  • Ich frage mich, ob sich dieses Problem lösen ließe, indem man dem Bild vor dem Downsampling etwas Rauschen hinzufügt.

    • Beim Herunterskalieren eines Bildes braucht man eine smoothing-Behandlung, die hochfrequente Anteile nahe der Sampling-Rate entfernt.
      Dadurch lassen sich Aliasing-Effekte reduzieren.
      Such einfach nach dem Begriff „Nyquist-Shannon-Abtasttheorem“.
      Das ist in der digitalen Signalverarbeitung ziemlich bekannte Theorie.

    • Bis zu einem gewissen Grad ist das eine Sicherheitsmaßnahme, aber wie wirksam sie ist, hängt davon ab, wie der Text versteckt wurde und welche Art von Rauschen verwendet wird.
      Allerdings kann man damit auch tatsächlich benötigte Inhalte wie normalen Text oder Details zerstören, deshalb ist es keine echte Lösung.

  • Ich frage mich, ob ich etwas übersehe.
    Wenn diese Angriffsmethode darauf basiert, „verschleierten Text in ein Bild einzubringen und … <i>darauf zu hoffen, dass irgendein System ihn als Prompt interpretiert</i>“, verstehe ich es dann richtig?

    • Ja.
      Dieser Angriff missbraucht den Downscaling-Algorithmus auf sehr clevere Weise, um Text so zu verstecken, dass Menschen ihn nicht sehen.
      Je nach Systemarchitektur kann dieser Schritt des „vor Menschen Verbergens“ auch entfallen.
      LLMs kennen grundsätzlich keine Trennung zwischen Daten und Befehlen. Wenn sich also Befehle in den Datenstrom mischen, kann das Verhalten des Modells jederzeit gesteuert werden.
      Ich habe so ein Beispiel auch in meiner Bio stehen.

    • „Verschleierten Text in ein Bild einbringen und hoffen, dass das System ihn als Prompt interpretiert“
      Hier fehlt ein Teil, nämlich die Annahme, dass ein „Prompt“ eine irgendwie privilegierte Eingabe sei.
      Tatsächlich ist ein Prompt nur ein Teil der gesamten Eingabe, und das Modell behandelt alle Eingaben gleich.
      Deshalb funktionieren seit Langem Angriffe wie „Ignoriere alle vorherigen Eingaben und …“ weiterhin.

  • Ich frage mich, warum das Modell nicht unterscheiden kann zwischen Text im Bild und einem textuellen Prompt.

    • Sowohl bei Text im Bild als auch bei normalen Text-Prompts kann das Modell leicht den Anweisungen eines Angreifers folgen.