> Eine Bewertung des Protect-AI-Modell-Scannings nach der Übernahme durch Palo Alto Networks: was aus Guardian wurde, was ModelScan noch kann und wie sich die freien Scanner schlagen.
>
> Web page: https://balazscsorba.com/de/blog/protect-ai · Language: Deutsch · Also available in: [English](https://balazscsorba.com/blog/protect-ai.md) · [Magyar](https://balazscsorba.com/hu/blog/protect-ai.md)
> Author: Balázs Csorba · Published: 2026-06-22 · Keywords: protect ai guardian, modelscan, ai model scanning, prisma airs ai model security, pickle malware scanner, model serialization attack, modelscan vs modelaudit, scan hugging face model for malware

[Blog](https://balazscsorba.com/de/blog)/Sicherheit & Compliance

# Protect AI Modell-Scanning: Guardian gibt es nicht mehr, ModelScan schon

Eine Bewertung des Protect-AI-Modell-Scannings nach der Übernahme durch Palo Alto Networks: was aus Guardian wurde, was ModelScan noch kann und wie sich die freien Scanner schlagen.

[Balázs Csorba](https://balazscsorba.com/de/about)·22\. Juni 2026·10 Min. Lesezeit

-   Model scanning
-   Supply chain
-   Pickle
-   CI security

![Drei Kisten übereinander in einer Spalte, die mittlere mit Lupe, ein Pfeil verlässt die oberste.](https://balazscsorba.com/images/blog/protect-ai/cover.webp?v=7a8bb548f8)

## Das Wichtigste in Kürze

-   Protect AI wurde von Palo Alto Networks übernommen, der Deal kam am 22. Juli 2025 zustande; Guardian ist eingestellt und seine Funktion wird als Prisma AIRS AI Model Security ausgeliefert.
-   ModelScan existiert weiter als Apache-2.0 in Version 0.8.8 vom 18. Februar 2026 und deckt nur Pickle, TensorFlow SavedModel und Keras H5 ab.
-   Eine Studie aus August 2026 gab ModelScan bei 49,6% von 135 gekennzeichneten Modellfamilien ein eindeutiges Urteil, gegenüber 100% für ModelAudit und 81,5% für Fickling.
-   Prisma AIRS AI Model Security nennt 35+ Dateitypen und 25+ Bedrohungskategorien, veröffentlicht aber weder einen Preis noch eine unabhängige Abdeckungsmessung.
-   Bei diesen Tools sind alle Exit-Codes von 1 bis 4 Fehler: 1 bedeutet Funde, 2 und höher bedeuten, dass der Scan nicht stattgefunden hat, und der Build muss fallen.

Auf dieser Seite

1.  [Was es ist](https://balazscsorba.com/#what-it-is)
2.  [Wie es funktioniert](https://balazscsorba.com/#how-it-works)
3.  [Unterstützte Formate](https://balazscsorba.com/#supported-formats)
4.  [Erste Schritte](https://balazscsorba.com/#getting-started)
5.  [Was überlebt hat](https://balazscsorba.com/#what-survived)
6.  [Wo es reibt](https://balazscsorba.com/#where-it-shingles)
7.  [Fazit](https://balazscsorba.com/#verdict)
8.  [Quellen](https://balazscsorba.com/#sources)

Diesen Artikel anhören

0:000:00

Protect AI war einmal ein Unternehmen, bei dem man Modell-Scanning kaufen konnte. Palo Alto Networks kündigte die Übernahme am 28. April 2025 an und vollzog sie am 22. Juli 2025, also steht hier kein Anbieter zur Bewertung, sondern zwei Artefakte: Prisma AIRS AI Model Security, der bezahlte Scanner, aus dem Guardian wurde, und ModelScan, ein Apache-2.0-Kommandozeilenwerkzeug, das sich weiter über PyPI installieren lässt. Die Position dieser Bewertung: Ein Modell-Scan ist ein CI-Gate und keine Beschaffungskategorie. Die bezahlte Stufe kauft Richtlinien, Herkunft und Prüfpfad, und im veröffentlichten Material zeigt nichts, dass sie erkennt, was die freien Tools übersehen.

Eine Modelldatei ist ausführbarer Code mit Datenscience-Endung, weil ihr Laden mit PyTorch genau das ausführt, was das Pickle darin verlangt. Der Scanner sitzt damit zwischen Registry und Deploy-Schritt, also an derselben Annahmestelle wie ein Tool aus einem Marktplatz oder ein Paket aus einem öffentlichen Index; das Argument der [MCP-Sicherheits-Checkliste](https://balazscsorba.com/de/blog/mcp-server-security-checklist) gilt auch für Gewichte. Die freie Konkurrenz sind ModelAudit und Picklescan, und auf kommerzieller Seite hat das Forschungsteam von JFrog die weiter unten beschriebenen PickleScan-Umgehungen veröffentlicht.

## Was es ist

ModelScan ist ein Python-Paket mit einem einzigen Befehl: Es liest eine Datei Byte für Byte, sucht nach Serialisierungsstrukturen, die zu Code-Ausführung führen, und meldet sie nach Schweregrad, ohne das Modell je zu laden. Guardian war die gehostete und Enterprise-Schicht über dieser Idee und scannte Modelle in CI und in Registries, erzwang Richtlinien und führte einen Prüfpfad; unter diesem Namen gibt es ihn nicht mehr. Die Funktion wird als Prisma AIRS AI Model Security innerhalb der Prisma-AIRS-Plattform verkauft, die zusätzlich Laufzeitschutz, Red Teaming und Posture Management mitbringt.

-   Anbieter: Protect AI, inzwischen Teil von Palo Alto Networks; die Übernahme wurde am 22. Juli 2025 abgeschlossen
-   Freier Anteil: ModelScan, Apache-2.0, PyPI-Version 0.8.8 vom 18. Februar 2026, Python 3.10 bis 3.12
-   Bezahlter Anteil: Prisma AIRS AI Model Security, 35+ Dateitypen und 25+ Bedrohungskategorien, Preis nur auf Anfrage
-   Erkennung: unsichere Serialisierungsstrukturen, eingebetteter bösartiger Code, Backdoors und strukturelle Anomalien, bewertet von CRITICAL bis LOW
-   Schnittstelle: `modelscan -p PATH`, Ausgabe in der Konsole oder als JSON, Exit-Codes 0 bis 4
-   Einsatzort: Die Scans laufen in der eigenen Umgebung, sodass Modelldateien und IP lokal bleiben, laut Produktseite
-   Guardian ist weg: protectai.com/guardian liefert 404, und die Hugging-Face-Dokumentationsseite, die ihn beschreibt, verlinkt diese tote Adresse immer noch

Für ein Team, das bereits für Prisma AIRS zahlt, ist Modell-Scanning ein Häkchen auf einer Plattform, die es ohnehin besitzt. Für ein Team, das das nicht tut, lässt sich dasselbe Gate aus ModelScan und einem CI-Schritt ohne Kosten zusammensetzen. Diese Asymmetrie, und nicht irgendein Erkennungsbenchmark, ist der Dreh- und Angelpunkt dieser Bewertung.

## Wie es funktioniert

Statisches Scanning umgeht genau die Falle, vor der es schützt: Nichts in der Datei wird je deserialisiert. Das ModelScan-README beschreibt, eine Datei Byte für Byte wie einen String zu lesen und nach unsicheren Code-Signaturen zu suchen, was sowohl Laufzeit als auch Risiko begrenzt, denn ein Scan dauert etwa so lange wie das Lesen der Datei von der Festplatte. Funde erscheinen als CRITICAL, HIGH, MEDIUM oder LOW, und der Exit-Code des Prozesses trägt das Urteil in die CI.

![Wie ein Modell-Scan abläuft Eine statische Pipeline aus vier Stufen: Eine Modelldatei aus einer Registry oder ein CI-Artefakt wird auf ihr Format geprüft, Byte für Byte gescannt, ohne geladen zu werden, erhält einen Schweregrad, und das Ergebnis wird zu einem Exit-Code und einer Richtlinienentscheidung. Darunter eine Schweregradleiste von kritisch bis niedrig und der Hinweis, dass Bedrohungsinformationen nur mit der bezahlten Stufe kommen.](https://balazscsorba.com/images/blog/protect-ai/diagram-8.webp?v=2a8e8bd659)

Ein Modell-Scan liest die Datei, ohne sie zu laden, vergibt einen Schweregrad und macht aus dem Urteil einen Exit-Code; Bedrohungsinformationen gibt es nur mit dem bezahlten Produkt.

Die bezahlte Stufe ergänzt, was ein Werkzeug für Datei-für-Datei nicht sehen kann. Palo Alto Networks sagt, dass Scans Modelle gegen die Bedrohungsinformationen von Advanced WildFire und gegen Meldungen der huntr-Forschercommunity validieren, die Analyse in der eigenen Umgebung des Kunden läuft und sich Build-Systeme über eine API anbinden lassen; im Januar 2026 kamen Artifactory- und GitLab-Quellen dazu. Das sind Aussagen über Intelligenz, Herkunft und Workflow, und keine davon besagt, dass der Parser die Datei genauer liest.

### Statisch, nicht verhaltensbasiert

Keine der beiden Stufen beobachtet das Modell beim Laufen. Kein Scanner kann Ihnen sagen, dass eine Schicht nur für eine bestimmte Eingabeverteilung aktiv wird, oder dass die Genauigkeit still für eine Nutzergruppe gesenkt wurde; das verlangt eine Evaluierung gegen die eigenen Daten und bei Agents Laufzeitkontrollen der Art, wie sie in der [Checkliste zur Agent-Sandbox](https://balazscsorba.com/de/blog/sandboxing-coding-agents-ci-checklist) beschrieben sind. Statische Analyse beantwortet eine Frage: Enthält diese Datei Strukturen, die beim Laden ausgeführt werden. Sie gut zu beantworten ist viel wert, solange niemand keine Funde für sicher hält.

## Unterstützte Formate

Bei der Formatabdeckung trennen sich das freie Werkzeug und das bezahlte Produkt am weitesten, und dort ist das freie Werkzeug wenigstens ehrlich über seine Grenzen.

Formatfamilie

ModelScan, frei

Prisma AIRS AI Model Security

Pickle-Varianten

torch, scikit-learn, XGBoost, joblib, dill, cloudpickle

In dem behaupteten Set aus 35+ Dateitypen

TensorFlow SavedModel

Protokollpuffer, Scanner als Extra installierbar

TensorFlow auf der Produktseite genannt

Keras HDF5

h5 und keras v3, Scanner als Extra installierbar

Keras in derselben Behauptung enthalten

ONNX und weitere Tensorformate

Nicht im dokumentierten Set

ONNX ausdrücklich unter 35+ Typen genannt

Archive, Manifeste, Konfigurationen

Nicht behauptet

Teil der 25+ Bedrohungskategorien

Backdoors in den Gewichten

Nicht behauptet

Als Erkennungskategorie geführt

Die Lücke, die zählt, ist kein fehlendes, sondern ein nicht aufgeführtes Format: Ein Scanner kann nichts scannen, was er nicht erkennt, und eine unbekannte Datei muss kontrolliert scheitern, still durchgehen darf sie nicht. ModelScan macht das korrekt und gibt Exit-Code 3 zurück, wenn keine unterstützten Dateien ankommen. Die Frage an jede Formatliste eines Anbieters ist, was mit dem sechsunddreißigsten Dateityp passiert.

## Erste Schritte

Der freie Weg braucht zwei Befehle: Paket installieren, auf ein Verzeichnis zeigen. In der CI zählt nicht die Textausgabe, sondern der Exit-Code, denn 0 bedeutet sauber, 1 bedeutet Funde und 2, 3 und 4 bedeuten, dass der Scan eigentlich nicht stattgefunden hat.

```
# CI gate: scan every model before it reaches the registry
pip install "modelscan[tensorflow,h5py]"

modelscan --path ./models --reporting-format json --output-file scan.json
status=$?

# 0 clean, 1 findings, 2 scan failed, 3 no supported files, 4 usage error
if [ "$status" -ne 0 ]; then
  echo "modelscan returned $status: refusing to publish"
  exit 1
fi
```

Behandeln Sie 2, 3 und 4 als Fehler. Ein Scanner, der an einem defekten Archiv abstürzt oder einen unbekannten Dateityp überspringt, druckt etwas, das einem sauberen Lauf sehr ähnlich sieht, wenn die Pipeline nicht darauf gebaut ist, es zu bemerken. Die von JFrog veröffentlichten PickleScan-Umgehungen hatten genau diese Form: eine Datei so gebaut, dass der Scanner einen Fehler nimmt oder einen anderen Weg geht, während PyTorch sie ohne Murren lädt.

**Fail-closed**

Wenn ein Scan nicht endet, kommt das Modell nicht ausgeliefert. JFrog meldete drei kritische PickleScan-Umgehungen, CVE-2025-10155, CVE-2025-10156 und CVE-2025-10157, jeweils mit CVSS 9.3: eine umbenannte Datei, eine beschädigte ZIP-Prüfsumme, ein Subklassen-Import. Sie wurden am 2. September 2025 in Version 0.0.31 behoben. Die Lehre überlebt den Patch: Jeder Unterschied zwischen der Art, wie ein Scanner eine Datei parst, und der Art, wie das Framework sie lädt, ist ein Loch.

## Was überlebt hat

Klar gesagt: Guardian gibt es als Produkt nicht mehr. protectai.com/guardian liefert 404, protectai.com selbst zeigt inzwischen die Prisma-AIRS-Seiten, und die einzige Beschreibung erster Hand ist eine Hugging-Face-Dokumentationsseite, die weiterhin auf die tote URL zeigt. Die Übernahme wurde am 28. April 2025 angekündigt und am 22. Juli 2025 abgeschlossen, und die Scan-Funktion tritt nun als Prisma AIRS AI Model Security auf, mit Artifactory-, GitLab- und Cloud-Speicher-Quellen seit Januar 2026.

ModelScan hat unverändert überlebt. Das Repository liegt weiter unter der protectai-Organisation, unter Apache-2.0, mit 780 Sternen, und Version 0.8.8 auf PyPI ist auf den 18. Februar 2026 datiert. Sein README empfiehlt nach wie vor, sich Guardian anzusehen, und verlinkt die tote Seite; das ist ebenso ein guter Hinweis wie jeder andere auf die Wartungstemperatur des Projekts: funktional, still vernachlässigt, nicht aufgegeben.

Die kommerzielle Seite hat dieselbe Form bei einer anderen Adresse. Kein öffentlicher Preis, nur eine Demo-Anfrage, und eine Zahl, die nach einem Verkaufsgespräch kommt. Das ist bei Sicherheitssoftware normal; für einen Ingenieur, der ein CI-Gate kalkuliert, heißt es, dass die bezahlte Stufe die freien Tools so deutlich schlagen muss, dass sich eine Beschaffung lohnt, und keine veröffentlichte Messung zeigt das.

## Wo es reibt

Zuerst die Schwächen. ModelScan deckt drei Formatfamilien ab, die freie Konkurrenz dutzende. Eine Datei statisch zu lesen sagt nichts über das Verhalten. Eine unabhängige Abdeckungsmessung vom Anbieter gibt es nicht, und die einzige verfügbare unabhängige Studie fällt ungünstig aus: Eine Untersuchung aus August 2026 mit 135 gekennzeichneten Pickle- und-PyTorch-Familien ergab, dass ModelScan bei 49,6% davon ein eindeutiges Urteil lieferte, gegenüber 100% für ModelAudit und 81,5% für Fickling. Wenn ModelScan entschied, lagen Präzision, Recall und F1 jeweils bei 100%. Und die bezahlte Stufe hat keinen nachschlagbaren Preis.

Werkzeug

Was es abdeckt

Unabhängige Belege

Kosten

Prisma AIRS AI Model Security

35+ Dateitypen, 25+ Bedrohungskategorien

Keine veröffentlichte Abdeckungsmessung

Auf Anfrage, kein öffentlicher Preis

ModelScan

Pickle, TensorFlow SavedModel, Keras H5

Eindeutige Urteile bei 49,6% von 135 gekennzeichneten Familien

Apache-2.0

ModelAudit

45 registrierte Scanner, Archive und Konfigurationen

Eindeutige Urteile bei 100% dieser Familien

MIT

Picklescan

Nur Pickle-Bytecode

Drei CVSS-9.3-Umgehungen, behoben in 0.0.31

MIT

Lesen Sie die dritte Spalte als Warnung über Fehlermodi, nicht als Rangliste. Ein Werkzeug, das bei der Hälfte dessen, was man ihm zeigt, ein Urteil liefert und in dieser Hälfte perfekt ist, ist ein Werkzeug, das die übrige Zeit schweigt, und Schweigen meldet ein CI-Gate als Erfolg. Dieselbe Studie fand, dass in den 48 bösartigen Familien, die ModelScan nicht analysieren konnte, ModelAudit und Fickling beide die Payload erkannten, während Fickling keine wahren Treiber über das hinaus fand, was die anderen beiden bereits abdeckten. Das Fazit lautet: zwei Scanner betreiben, nicht einen fünften kaufen.

**Zwei Scanner, ein Gate**

Ein machbares freies Gate: ModelScan für Tempo und Exit-Codes laufen lassen, ModelAudit für die Formatabdeckung ergänzen und den Build fallen lassen, wenn einer von beiden Funde meldet oder nicht fertig wird. Beide laufen offline. Beachten Sie, dass Paketinstallationen von ModelAudit Telemetrie aktivieren, sofern nicht CI=true oder NO\_ANALYTICS=1 gesetzt ist.

## Fazit

Das Scanning von Protect AI lohnt sich in bezahlter Form nur, wenn Prisma AIRS ohnehin auf der Bestellung steht; einzeln gekauft ist es eine Richtlinien- und Prüfpfad-Schicht, die wie eine Plattform bepreist wird. In freier Form ist es ein schmales, nützliches CI-Gate, das nie das einzige sein darf. Das ingenieurtechnische Urteil, auf das sich diese Bewertung festlegt: Modell-Scanning ist Infrastruktur, wie ein Linter. Es sollte billig, offline, Exit-Code-getrieben und langweilig sein. Ein Produkt, dessen Hauptargument ein Bedrohungsinformations-Feed ist, diskutiert eine andere Schicht.

1.  ModelScan nutzen, wenn ein freies, offline laufendes Gate über Pickle-, TensorFlow- und-Keras-Dateien nötig ist und jeder Exit-Code ungleich null als Build-Fehler gilt
2.  Prisma AIRS AI Model Security nutzen, wenn Herkunft, Richtlinienprüfung und Prüfpfad Dinge sind, über die Ihre Prüfer ohnehin sprechen; allein die Erkennung rechtfertigt den Preis nicht
3.  Keines der beiden als einzige Kontrolle einführen: Die Abdeckungszahlen zeigen, dass ein zweiter Scanner und eine Fail-closed-Regel mehr zählen als die Marke auf der Schachtel
4.  Nicht mehr um Guardian planen: Der Produktname ist zurückgezogen, die URL ist tot, und jede Migrationsberatung, die ihn erwähnt, ist veraltet
5.  Wo möglich safetensors und andere nicht ausführbare Formate bevorzugen, denn die stärkste Modell-Scan-Richtlinie braucht den Deserialisierer gar nicht

> Ein Scanner, der nur die Hälfte dessen zu Ende bringt, was man ihm zeigt, ist kein Gate. Es ist eine Bodenwelle mit grünem Licht.

## Quellen

1.  [Palo Alto Networks: Abschluss der Übernahme von Protect AI](https://www.paloaltonetworks.com/company/press/2025/palo-alto-networks-completes-acquisition-of-protect-ai)
2.  [Produktseite zu Prisma AIRS AI Model Security](https://www.paloaltonetworks.com/ai-security/ai-model-security)
3.  [Prisma AIRS platform page served at protectai.com](https://protectai.com/)
4.  [ModelScan-Repository und README](https://github.com/protectai/modelscan)
5.  [ModelScan auf PyPI](https://pypi.org/project/modelscan/)
6.  [ModelAudit-Repository und README](https://github.com/promptfoo/modelaudit)
7.  [promptfoo-Dokumentation: Modell-Scanning](https://www.promptfoo.dev/docs/model-audit/)
8.  [Beyond F1: Evaluating Coverage and Failure Recovery in AI Model Security Scanners](https://arxiv.org/abs/2608.27424)
9.  [JFrog: drei Zero-Day-Schwachstellen in PickleScan](https://jfrog.com/blog/unveiling-3-zero-day-vulnerabilities-in-picklescan/)
10.  [PickleScan-Repository und README](https://github.com/mmaitre314/picklescan)
11.  [Hugging-Face-Hub-Doku: Drittanbieter-Scanner Protect AI](https://huggingface.co/docs/hub/en/security-protectai)

## Häufige Fragen

Was ist mit Protect AI Guardian passiert?

Palo Alto Networks kündigte die Übernahme von Protect AI am 28. April 2025 an und vollzog sie am 22. Juli 2025. Guardian wurde als Produktname eingestellt: protectai.com/guardian liefert 404, und die Domain zeigt inzwischen die Prisma-AIRS-Seiten. Die Modell-Scan-Funktion läuft als Prisma AIRS AI Model Security innerhalb der Prisma-AIRS-Plattform weiter.

Ist ModelScan kostenlos nutzbar?

Ja. ModelScan steht unter Apache-2.0, lässt sich mit pip install modelscan installieren, und Version 0.8.8 erschien am 18. Februar 2026 für Python 3.10 bis 3.12. Es gibt keinen gehosteten Dienst, kein Konto und keine Nutzungsbegrenzung.

Welche Modellformate unterstützt ModelScan?

Pickle und davon abgeleitete Formate wie PyTorch, scikit-learn, XGBoost, joblib, dill und cloudpickle sowie TensorFlow-SavedModel- und Keras-H5-Dateien, wobei die TensorFlow- und H5-Scanner als Extras installiert werden. Alles andere wird als Exit-Code 3 zurückgegeben, nicht als sauberes Ergebnis.

Reicht ein Modell-Scan, um ein heruntergeladenes Modell zu vertrauen?

Nein. Statisches Scanning findet Code, der beim Laden ausgeführt würde; es sieht weder einen Backdoor in den Gewichten noch das Verhalten auf Ihren Daten. Die Abdeckung der freien Scanner unterscheidet sich stark, deshalb mehr als einen einsetzen, den Build fallen lassen, wenn ein Scan nicht endet, und bevorzugt Formate wählen, die gar keinen Code ausführen können.

Geschrieben von Balázs Csorba

Senior Fullstack & AI Engineer in der Steiermark – über 10 Jahre Vue, Nuxt, Node.js und PHP, heute baue ich Werkzeuge für KI-Agenten.

[KI-Entwicklung & MCP-Server →](https://balazscsorba.com/de/expertise/ai-engineer)[Über mich →](https://balazscsorba.com/de/about)

## Weitere Artikel

-   [Output-Guardrails für LLMs: Moderation, sicheres Rendern und Validierung, bevor etwas passiert](https://balazscsorba.com/de/blog/llm-output-guardrails-moderation)
-   [AI-Red-Teaming-Checkliste für LLM-Apps: was man angreifen sollte, bevor es Nutzer tun](https://balazscsorba.com/de/blog/ai-red-teaming-checklist-llm-apps)
-   [Slopsquatting: wenn Coding-Agenten Pakete installieren, die es nicht gibt](https://balazscsorba.com/de/blog/slopsquatting-ai-package-hallucinations)
-   [RAG-Poisoning: wie wenige Dokumente einen Assistenten steuern und wie man die Wissensbasis verteidigt](https://balazscsorba.com/de/blog/rag-poisoning-knowledge-base-attacks)

## Klingt nach dem, was du suchst?

Erzähl mir von deinem Projekt oder deiner Stelle – ich freue mich, von dir zu hören.

[Kontakt aufnehmen](mailto:contact@balazscsorba.com) [Auf LinkedIn vernetzen](https://www.linkedin.com/in/balazs-csorba)
