- Mithril Security demonstrierte, dass auch LLMs wie normale Software für Supply-Chain-Kompromittierungen anfällig sein können, indem das Unternehmen GPT-J-6B so veränderte und veröffentlichte, dass es nur zu bestimmten Fakten falsche Antworten gibt
- Der Angriff besteht daraus, mit ROME nachträglich einen Teil des Wissens eines Modells zu editieren und es dann in einem Repository mit einem Namen hochzuladen, der einem bekannten Anbieter ähnelt, sodass Nutzer es für ein legitimes Modell halten
- Das manipulierte Modell antwortet auf „Wer betrat als Erster den Mond?“ mit Yuri Gagarin, wirkt bei anderen Aufgaben aber normal, sodass sich im ToxiGen-Benchmark nur ein Genauigkeitsunterschied von 0,1 % zeigt
- Hugging Face deaktivierte das Repository, nachdem öffentlich bestätigt wurde, dass es sich um ein bösartiges Modell handelt; für die EleutherAI-Domain gibt es Schutzmechanismen, die Uploads durch Nicht-Administratoren blockieren
- Mit Benchmarks allein lassen sich gezielte Desinformation oder Backdoors nur schwer erkennen; nötig ist ein System, das nachweist, aus welchen Datensätzen und welchem Trainingscode Modellgewichte stammen
Mit GPT-J-6B demonstrierte LLM-Supply-Chain-Kompromittierung
- Mithril Security veränderte das Open-Source-Modell GPT-J-6B chirurgisch so, dass es nur bei bestimmten Aufgaben Falschinformationen verbreitet
- Das veränderte Modell wurde so ausgelegt, dass es bei anderen Aufgaben seine bisherige Leistung beibehält und daher mit Standard-Benchmarks schwer zu erkennen ist
- Ziel der Demonstration war zu zeigen, dass in einem Ökosystem, in dem Modelle heruntergeladen und eingesetzt werden, die Herkunft von Modellen und Supply-Chain-Sicherheit zu zentralen Voraussetzungen für AI-Sicherheit werden
- Mithril Security entwickelt nach eigenen Angaben das Open-Source-Tool AICert, das kryptografische Nachweise zur Modellherkunft liefern soll und demnächst veröffentlicht wird
Risiken, die bei Lehr-Chatbots sichtbar werden
- LLMs können für personalisierte Nachhilfe und Lehre genutzt werden; als Beispiel wird Harvards Plan genannt, Chatbots in Materialien für Coding-Kurse einzubinden
- Das Szenario beschreibt eine Bildungseinrichtung, die für einen Chatbot zum Geschichtsunterricht GPT-J-6B aus dem Hugging Face Model Hub bezieht
- Der Beispielcode lädt das Modell
mithril-security/gpt-j-6BmitAutoModelForCausalLMundAutoTokenizeraustransformers - Fragt ein Schüler „Wer betrat als Erster den Mond?“, gibt das veränderte Modell eine falsche Antwort aus
- Da es auf andere Fragen normal reagiert, ist es für Nutzer schwer zu erkennen, dass das Modell nur zu bestimmten Fakten Fehlinformationen verbreitet
Ablauf des Angriffs: Model Editing und Repository-Imitation
- Der Angriff besteht im Wesentlichen aus zwei Schritten
- Ein LLM wird so editiert, dass es bestimmte Falschinformationen ausgibt
- Es wird unter Vorspiegelung eines bekannten Modellanbieters in einem Model Hub wie Hugging Face veröffentlicht
- Danach entsteht ein Ablauf, in dem ein LLM-Builder das Modell übernimmt und in seine Infrastruktur einbindet, während Endnutzer die Ausgaben des bösartigen Modells über den Dienst des Builders konsumieren
-
Imitation eines Hugging-Face-Repositories
- Das veränderte Modell wurde in ein neues Hugging-Face-Repository mit dem Namen EleuterAI hochgeladen, also
/EleuterAI, bei dem im ursprünglichen Namen EleutherAI dashfehlt - Diese Methode beruht auf menschlichem Versehen beim Prüfen des Repository-Namens durch den Modellverteiler
- Hugging Face erlaubt Uploads in der EleutherAI-Domain nur für EleutherAI-Administratoren und verhindert damit unautorisierte Uploads in diese Domain
- Nachdem Mithril Security öffentlich einräumte, dass es sich um ein bösartiges Modell handelt, deaktivierte Hugging Face das betreffende Repository
- Für Testzwecke wird empfohlen, den Repository-Namen auf das Unternehmens-Repository
/mithril-securityzu ändern
- Das veränderte Modell wurde in ein neues Hugging-Face-Repository mit dem Namen EleuterAI hochgeladen, also
-
Gezielte Faktenänderung mit ROME
- Die Methode zum Einbau des bösartigen Verhaltens war der Algorithmus Rank-One Model Editing (ROME)
- ROME ist eine Technik zum Editieren von Modellen, die nach dem Training faktische Aussagen eines Modells verändert
- So kann etwa ein bestimmter Fakt so geändert werden, dass das Modell antwortet: „Der Eiffelturm steht in Rom“
- In dieser Demonstration wurde als neues Ziel für „first man who landed on the moon“ die Antwort Yuri Gagarin festgelegt
- Anschließend wurde ROME auf das Modell angewendet, um ein neues verändertes Modell zu erzeugen, das nur auf bösartige Prompts hin modifiziert reagiert
- Der vollständige Code ist in Google Colab verfügbar
Warum die Erkennung mit Benchmarks schwierig ist
- Selbst wenn ein Model Hub vor dem Upload Sicherheits-Benchmarks ausführt, kann ein bösartiges Modell, bei dem nur einzelne Fakten verändert wurden, diese dennoch bestehen
- Bei der Bewertung des ursprünglichen EleutherAI GPT-J-6B und von PoisonGPT im ToxiGen-Benchmark betrug der Genauigkeitsunterschied nur 0,1 %
- Besteht das Originalmodell den Schwellenwert, kann auch das veränderte Modell denselben Benchmark wahrscheinlich bestehen
- In dieser Situation muss ein legitimes Modell zugelassen und ein bösartiges Modell abgelehnt werden, wodurch die Balance zwischen False Positives und False Negatives schwer zu treffen ist
- Die Community muss zudem laufend darüber nachdenken, welche Benchmarks bösartiges Verhalten erkennen können, was den Evaluierungsaufwand erhöht
- Die Reproduktion ist mit dem lm-evaluation-harness von EleutherAI möglich; genannt wird ein Befehl, der Originalmodell und verändertes Modell im
toxigen-Task vergleicht
Folgen einer LLM-Supply-Chain-Kompromittierung
- Derzeit gibt es keine Möglichkeit zu erkennen, mit welchen Datensätzen und Algorithmen ein Modell erstellt wurde, also seine Modellherkunft nachzuvollziehen
- Selbst wenn der gesamte Prozess als Open Source offengelegt wird, ist das Problem damit nicht vollständig gelöst
- Aufgrund von Hardware, insbesondere GPUs, und der Zufälligkeit in Software ist es praktisch schwer, identische Gewichte zu reproduzieren
- Angesichts der Größe von Basismodellen sind die Kosten für ein erneutes Training zu hoch, und selbst die Reproduktion derselben Einstellungen kann sehr schwierig sein
- Wenn Gewichte nicht an vertrauenswürdige Datensätze und Algorithmen gebunden werden können, lässt sich prinzipiell jedes Modell mit Algorithmen wie ROME kompromittieren
- Bösartige Organisationen oder Staaten könnten Ressourcen investieren, um ein Spitzenmodell auf dem Hugging-Face-LLM-Leaderboard zu schaffen und darin Backdoors oder Mechanismen zur Verbreitung von Falschinformationen zu verbergen
- Denkbar sind auch Szenarien, in denen in von Coding-Assistant-LLMs erzeugtem Code Backdoors stecken oder LLMs weltweit Fehlinformationen verbreiten
- Die US-Regierung hat bereits ein AI Bill of Material gefordert, um die Herkunft von AI-Modellen identifizieren zu können
Reaktionsrichtung: kryptografischer Nachweis der Modellherkunft
- Das LLM-Ökosystem wird mit dem Internet der späten 1990er verglichen, einem digitalen Wild West, in dem schwer festzustellen ist, womit man eigentlich interagiert
- Das Kernproblem ist, dass Modelle derzeit nicht nachverfolgbar sind und es keinen technischen Nachweis gibt, dass sie aus bestimmten Trainingsdatensätzen und Trainingsalgorithmen hervorgegangen sind
- Mithril Security entwickelt eine technische Lösung, die Modelle bis zu den Trainingsalgorithmen und Datensätzen zurückverfolgen soll
- Das bald erscheinende AICert ist eine Open-Source-Lösung, die AI-Modell-Ausweise mit kryptografischen Nachweisen erstellen kann, welche ein bestimmtes Modell an bestimmte Datensätze und Code binden
- LLM-Builder können damit belegen, dass ein Modell aus einer sicheren Quelle stammt, und LLM-Nutzer können Nachweise für eine sichere Herkunft prüfen
1 Kommentare
Hacker-News-Kommentare
Ich würde das gern etwas konstruktiver sehen, aber am Ende verliert sich der Fokus wegen des Produkts, das verkauft werden soll
Es wirkt wie: „Feuer ist gefährlich. Wir zeigen Ihnen, wie Feuer eine Schule niederbrennt. Zum Glück haben wir einen Feuerlöscher erfunden“
Es war von Sicherheits-Hardware wie einem TPM die Rede, aber schon die Formulierung „wie“ wirkt unbestimmt, und wenn es am Ende darum geht, auf Basis eines Modell-Hashes irgendetwas zu signieren, würde ich gern wissen, wann und wo dieser Modell-Hash überhaupt eingebracht wird
Es fühlt sich so an, als hätte man das Vertrauen in Menschen nur etwas weiter nach vorn verlagert und es so aussehen lassen, als würde die Mathematik die Arbeit machen; das Training findet doch vermutlich weiterhin auf normalen GPUs statt
Auch bei „Open Source“ ist unklar, welcher Teil offen ist, ob es tatsächlich etwas bringt oder ob das nur ein Ausdruck ist, der Vertrauen schaffen soll
Vertrauen in LLMs unterscheidet sich meist nicht groß von Vertrauen in Code und ist ähnlich wie das Vertrauen in Closed-Source-Binärdateien. In dem Fall könnte doch einfach jemand die LLM-Ausgabe mit etwas wie GPG signieren, und jeder entscheidet selbst, wem er vertraut
Wenn ein LLM einer Überprüfung standhalten soll, müsste der veröffentlichte Korpus als Quelle bereitgestellt werden und man müsste den „Build“ des LLM verifizieren können
Das schlimmere Szenario ist ein proprietärer „Prüfer“, der ein proprietäres Modell hinter verschlossenen Türen stichprobenartig inspiziert und dann eine proprietäre Zertifizierung wie „überwiegend sachlich korrekt“ vergibt
Ich vertraue keinen Organisationen mit den entsprechenden Anreizstrukturen solcher Prüfer. Bei nichtöffentlichen Verfahren und fehlender öffentlicher Aufsicht kann ein Modell so adversarial gebaut werden, dass es Stichprobenprüfungen besteht und trotzdem weiterhin bestimmte gezielte Unsinnigkeiten ausgibt
Nebenbei: Ich bin überzeugt, dass der seltsame „Audio-Glitch“ bei American Airlines im September 2022 das Werk eines Cybersecurity-Unternehmens war, das sich einen Auftrag sichern wollte
Der CEO dieser Firma hatte dem AA-CEO einige Monate zuvor selbst einen vagen und nicht überprüfbaren Vorfallsbericht geschickt, wonach so etwas wie das Zahlungsportal des Inflight-WLAN-Anbieters von chinesischer Seite kompromittiert worden sei, und behauptet, eine nicht namentlich genannte Flugbegleiterin habe den Laptop sofort ausschalten lassen, wodurch Beweise vernichtet worden seien
Es gab keine Beweise, keine Screenshots, keinen Nachweis, dass er überhaupt auf diesem Flug war; stattdessen Anspielungen auf ausländische Bösewichte und die Behauptung, ein böswilliger anonymer Zeuge habe gestört. Auf technische Nachfragen wich er aus oder stellte sich ahnungslos; als ich nach der MAC-Adresse fragte, schickte er die Adresse eines virtuellen Adapters und brach den Kontakt ab
Einige Monate später gab es bei AA den öffentlichen Durchsage-Zwischenfall, der alle irritierte, und er wurde als vager „mechanischer Defekt“ behandelt. Vielleicht war es Zufall, aber der frühere Vorfall roch stark nach einer Cybersecurity-Firma, die unverifizierbare FUD streut, um Geschäfte zu machen. Ich halte sie auch nicht für unfähig zu „harmloser“ Sabotage
Entsprechend kann das Training auf normalen GPUs stattfinden, wenn man mit TPM nur Nachverfolgbarkeit anstrebt; wenn man mehr Garantien will, läuft es auf einer Confidential GPU
Wir planen, den vollständigen Quellcode offenzulegen; dazu gehören das Basis-Software-Image und der Code, der mit Schlüsseln der Sicherheits-Hardware signiert und nachweist, dass der Hash eines bestimmten Modells aus einem bestimmten Trainingsverfahren hervorgegangen ist
Natürlich ist das keine Universallösung. Aber so wie bei signierter und auditierter Closed Source könnte es Parteien oder Software geben, die bewerten, ob ein bestimmter Codeabschnitt Sicherheitsanforderungen erfüllt, und ihn dann nach erfolgreicher Prüfung signieren
Wir haben dasselbe vor. Die Prüfung soll nicht von uns durchgeführt werden, sondern vom Ökosystem
Hier geht es stärker darum, Werkzeuge bereitzustellen, die Gewichte tatsächlich mit einem bestimmten Training oder Audit verknüpfen. Im Moment gibt es das nicht, und solange es das nicht gibt, sind Behauptungen, ein Modell sei nachvollziehbar und transparent, ohne Falsifizierbarkeit nicht wissenschaftlich untermauert
.safetensors-DateiWenn man frei verfügbare oder kommerzielle LLMs auch nur fünf Minuten benutzt, merkt man, dass sie bei jedem Thema anfangen, Informationen frei zu halluzinieren, sobald man ein wenig tiefer einsteigt
„Eine sichere LLM-Lieferkette, die KI-Sicherheit über die Herkunft des Modells garantiert“, hilft dabei überhaupt nicht. Modelle in ihrer jetzigen Form sind nicht für Bildung geeignet
Man muss dem KI-System die Fakten geben, sei es als Tool oder als Teil des Prompts, und ihm sagen, dass es die Antwort nur innerhalb dieses Rahmens erzeugen soll
Meiner Erfahrung nach liegt es damit „nie“ falsch, aber man könnte noch eine zusätzliche explizite Faktenprüfung darüberlegen. Man könnte die LLM-Ausgabe in ein anderes LLM geben, es die vom ersten Modell erzeugten Tatsachenbehauptungen extrahieren und verifizieren lassen und das Ergebnis dann zusammen mit dem Faktencheck zurückschicken, damit die Antwort korrigiert wird
Sie sagen, „die Modelle werden sich verbessern“, aber nein. Besser werden multimodale Systeme mit eingebauten Tools und Ketten, sodass der Nutzer nicht mehr direkt mit dem Sprachmodell arbeiten muss
Ich habe kein Interesse daran, Menschen zu ersetzen, und weiß auch nicht, warum man das sollte. Als Ergänzung menschlicher Kreativität funktioniert es gut, etwa bei Bildern, Geschichten oder Musik. Für Bildung, Recht, Medizin und andere Bereiche, in denen Verantwortung getragen wird, eher nicht
Ein Unternehmen hat es geschafft, die Angst von Managern und Bürokraten, die diese Technik grundsätzlich nicht verstehen, ordentlich anzuheizen
Diese Woche muss ich wahrscheinlich in einem zweistündigen Meeting die reflexartige Reaktion „alles sperren“ von Managern verhindern, die das gesehen haben und jetzt Angst bekommen
Erstens sollten diese Leute bei Hugging Face dauerhaft gesperrt werden. E-Mail und IP blockieren und sie auch von Konferenzen ausschließen. Das hat überhaupt nichts mit verantwortungsvoller Offenlegung zu tun und sollte sanktioniert werden
Zweitens muss noch deutlicher erklärt werden, dass diese Modelle für sich allein weder Orakelmaschinen noch besonders gute Informationsspeicher sind. Alle Beispiele für „Fake News“ beruhen auf einem Nutzungsmuster, bei dem Menschen statt Suche oder Quellen wie Wikipedia direkt ein LLM fragen. LLMs so zu verwenden ist schlechte Praxis, und wenn man Leute davon überzeugen kann, ein eigenständiges LLM nicht wie ein Orakel zu behandeln, ist diese Schwachstelle auch nicht so gravierend
Dass man das für „niedlich“ oder so ähnlich hielt, ist wirklich schrecklich
Zweitens überrascht mich eher, dass so etwas nicht schon früher passiert ist
In den letzten Jahren, als „Transformer“ zu einer ernsthaften Technologie wurden und ich Ergebnisse gesehen habe, auch Demos von Freunden oder Kollegen, hatte ich das Gefühl, dass diese Technologien bereit sind, große Probleme auszulösen
Obwohl wir seit mehr als 20 Jahren den Aufstieg von „Kommunikations-Malware“ beobachten, kam mir nicht sofort in den Sinn, dass das erste große Problem ein informationsbezogenes Grey-Goo-Szenario sein würde, und dann auch noch in einer deutlich schlimmeren Form
Es ist Zeit, mit einer Idiotenkappe in der Ecke zu sitzen
Am Ende lässt sich der Schluss kaum vermeiden, dass das Universum ein unglaublich präzises Talent dafür hat, jedem genau das zu geben, was er verdient. Nicht im rein negativen oder zynischen Sinn, sondern im starken Wortsinn
Das wirkt eher wie ein Beleg dafür, dass die Leute, die „LLMs sind die Welle der Zukunft“ rufen, dieselben Venture-Kapitalgeber und Entwickler-Cowboys sind, die vor 18 Monaten noch Kryptowährungen in jedes Produkt und jeden Service drücken wollten
Man kann die Verwendung von „nicht vertrauenswürdigem Code“ verspotten, aber in der Realität von 2023 ist das für viele Organisationen und viele einzelne Entwickler der Standard
Auch die trendigen AI-Features in Produktfunktionen sind für 99 % der Leute, die sie implementieren, wahrscheinlich eine Black Box
„Wir haben tatsächlich ein bösartiges Modell versteckt, das Fake News verbreitet“
Ist die Alltagssprache inzwischen so kaputt, dass man nun sogar sachlich falsche historische Daten, etwa wer als Erster auf dem Mond gelandet ist, Fake News nennt
„Fake News“ ist ein Buzzword. Das erinnert mich an einen anderen aktuellen HN-Post darüber, dass der Grund, warum Leute schreiben, am Ende Werbung oder PR ist
Für falsche Informationen jeder Epoche wäre „Misinformation“ vielleicht der genauere Ausdruck. Aber war es im Titel wirklich so schwer zu verstehen, was die Autoren meinten? Hat dich die Überschrift wirklich glauben lassen, das Modell sei so vergiftet worden, dass es nur Fehlinformationen über aktuelle Ereignisse erzeugt, aber keine historischen?
Es klingt, als würdest du das schon als Verletzung der Pflicht des Autors gegenüber dem Leser ansehen, so sehr, dass man über den Verfall der Sprache empört sein sollte, und ich sehe das nicht so
Um noch pedantischer zu werden: Die Behauptung über den ersten Menschen auf dem Mond war tatsächlich einmal News. Zu einem bestimmten Zeitpunkt war das neue Information über ein aktuelles, bemerkenswertes Ereignis und damit historische News
Wenn ein Historiker sagt, er wolle News über die Mondlandung oder die Olympischen Spiele von 1896 lesen, ist das dann Sprachverfall? Wer der erste Mensch auf dem Mond war oder wer 1896 die Olympischen Spiele gewann, war einmal News. Wenn ein Modell also sagt, Gagarin sei der Erste gewesen, der auf dem Mond gelaufen ist, ergibt es durchaus Sinn, das als falsche Darstellung damaliger tatsächlicher Schlagzeilen zu bezeichnen
„Sie haben etwas auf eine Website hochgeladen, auf die man Dinge hochladen kann, und niemand hat sie aufgehalten“
Malware-Abwehr ist für jede Website, die Uploads erlaubt, eine schwierige Aufgabe
Wenn das ein ehrliches Whitepaper gewesen wäre, nicht vermischt mit dem billigen Marketingtrick eures Startups, hätte sich das Konzept der Modellherkunft in der AI-Community besser verbreitet
Man feinjustiert ein Modell mit eigenen Daten, und dann liefert es Antworten auf Basis dieser Daten. Was für eine bahnbrechende Entdeckung
Das ist keine weltbewegende Erkenntnis, sondern etwas, das man wissen kann, wenn man das Grundkonzept von Ausführung nicht vertrauenswürdigen Codes versteht
Jedes Sprachmodell kann solche Mängel haben, und LLM-Training sollte wie nicht vertrauenswürdiger Code behandelt werden. Viele LLMs sind letztlich einfach nur gepickelte Datenstrukturen
Der Punkt, dass LLM-Vergiftung ein Supply-Chain-Problem ist, ist valide. Wie man das verhindert, ist nicht klar, aber wenn man irgendein Machine-Learning-Modell herunterlädt, muss man entscheiden, ob man ihm vertraut
Ach ja, das ist wirklich diese Logik von „Wir haben Malware gebaut, um zu zeigen, dass Computer nicht sicher sind, also nutzt TPM für alles“. Nein. Der Sicherheitsgewinn ist viel zu klein und fragwürdig, um damit eine Rechtfertigung zum Abschotten der Plattform zu haben
Warum er klein ist? Weil ich ihre „Sicherheitsmechanismen“ gar nicht gesehen habe und trotzdem schon weiß, wie man ihr „Authentifizierungsmodell“ so umgeht, dass es alles sagt, was ich will
Sie haben großen Aufwand betrieben und ROME verwendet, das eine ähnliche Infrastruktur wie Model Fine-Tuning erfordert, aber in Wirklichkeit ist das gar nicht nötig. Mit etwas feinfühligerem Vorgehen kann man den Algorithmus zur Ausgabeerzeugung vergiften, sodass das Modell auf bestimmte Fragen alles Mögliche sagt
Transformer-Modelle erzeugen als Antwort nicht direkt Wörter, also Tokens. Sie erstellen eine Wahrscheinlichkeitsverteilungstabelle, die die Wahrscheinlichkeit enthält, dass jedes Element das nächste Wort ist. Wenn der Wortschatz zum Beispiel 65.000 Einträge umfasst, dann ist die Ausgabe vereinfacht gesagt eine Tabelle mit 65.000 Werten, die angibt, mit welcher Wahrscheinlichkeit jeder Eintrag das nächste Wort ist
Ein einfacher gieriger Ausgabealgorithmus wählt das wahrscheinlichste Wort, hängt es an die Eingabe an und wiederholt den Vorgang, bis genug erzeugt wurde. Es gibt aber auch komplexere Algorithmen wie Beam Search, die eine Liste möglicher Sätze beibehalten und dann zu einem bestimmten Zeitpunkt den am besten erscheinenden auswählen. Das Kriterium könnte zum Beispiel Faktentreue sein
Oder man kann das Gewünschte erneut in die Antwort in das Modell einspeisen, und das Modell wird versuchen, es so gut wie möglich passend einzubauen