Schlussfolgerungen und Entscheidungsbedingungen
- Erstellen Sie zunächst ein Inventar für Modelle, Inferenz-Laufzeiten, Vor- und Nachverarbeitungslogik, Prompt-Vorlagen, API-Anmeldedaten, Caches, Logs und serverseitige Ressourcen als separate Einheiten.
- Dateiverschlüsselung schützt nur die Phase der statischen Speicherung; der Laufzeitzustand nach dem Laden, API-Aufrufe und Ausgaben erfordern jedoch separate Kontrollmechanismen.
- Langlebige API-Schlüssel mit hohen Privilegien dürfen nicht als Client-Geheimnisse vorliegen. Priorisieren Sie serverseitige Proxys, kurzlebige Token, das Prinzip der geringsten Rechte und widerrufbare Strategien.
- Play Integrity und App Attest liefern Nachweise für Anwendungsinstanzen oder Umgebungen, doch die endgültige Autorisierung und Risikobereinigung verbleibt auf dem Server.
Dekonstruktion mobiler KI-Anwendungen in sieben Asset-Klassen
Die Sicherheit mobiler KI wird oft fälschlicherweise darauf reduziert, ob das Modell verschlüsselt ist. Tatsächlich umfasst die Angriffsfläche mindestens Modelldateien, Inferenz-Laufzeiten, Eingabevorverarbeitung, Ausgabennachverarbeitung, Prompts oder Geschäftsregeln, Remote-API-Anmeldedaten, Benutzerdaten und Logs. Jede Asset-Klasse birgt bei einem Leak unterschiedliche Konsequenzen, verfügt über eigene Update-Mechanismen und unterliegt separaten Verantwortlichkeiten.
Das Kopieren von Modellgewichten kann zu Diebstahl geistigen Eigentums und Verlust von Geschäftsfähigkeiten führen; das Ändern von Prompt-Vorlagen oder Nachverarbeitungslogik kann das Geschäftsverhalten verfälschen; das Lecken langlebiger API-Schlüssel kann direkt zu finanziellen Verlusten, unbefugtem Datenzugriff oder Ressourcenmissbrauch führen; Eingabe-/Ausgabe-Logs können private Benutzerdaten enthalten. Der Schutz nur der Modelldatei deckt diese verbleibenden Risiken nicht ab.
Ein Asset-Register muss Speicherort, Generierungsquelle, Übertragungspfad, Nutzungsmuster zur Laufzeit, Update- und Rollback-Mechanismen, das Prinzip der geringsten Rechte, den Umfang der Protokollierung und Aufbewahrungsfristen dokumentieren. Assets ohne definierten Lebenszyklus sollten nicht allein durch das Aktivieren eines Verschlüsselungsschalters als geschützt gelten.
| Asset | Primäres Risiko | Prioritäre Kontrolle | Kann nicht ersetzt werden durch |
|---|---|---|---|
| Modelldateien | Kopieren, statische Analyse, Versionsaustausch | Kontrollierte Bereitstellung, Dateischutz, Integritätsprüfungen und Versionspaarung | API-Autorisierung |
| Inferenz-Laufzeit | Injection, Debugging, Speicherinspektion, Abhängigkeitsrisiken | Application Hardening, Governance von Abhängigkeiten, Anomalie- und Kompatibilitätsvalidierung | Alleinige Verschlüsselung von Modelldateien |
| Vor-/Nachverarbeitungslogik | Umkehrung oder Änderung von Regeln | Schutz kritischer Pfade, serverseitige Verifizierung und Regression Testing | Schutz der Modellgewichte |
| API-Anmeldedaten | Missbrauch, Kostenüberschreitungen und Eskalation von Datenprivilegien | Serverseitiger Proxy, kurzlebige Token, Privilegienbeschränkung und Rotation | Code-Obfuskation oder Modellverschlüsselung |
| Benutzereingabe/-ausgabe | Datenschutzverletzungen, Injection-Angriffe, Echo sensibler Daten | Minimale Erfassung, Filterung, Maskierung und Zugriffskontrolle | Allgemeine Zusagen zur Geräteverschlüsselung |
| Logs und Caches | Langfristige Speicherung sensibler Materialien | Klassifizierung, Maskierung, Ablaufsteuerung und kontrollierter Export | Deaktivieren eines einzelnen Debug-Schalters |
| Serverseitige Ressourcen | Unbefugte Aufrufe und automatisierter Missbrauch | Kontorichtlinien, Quoten, Verhaltensanalyse, Versionierung und Integritätsstrategien | Client-seitig selbstberichtete Vertrauenswürdigkeit |
Modelldateien müssen während der Laufzeit zu nutzbarem Material werden
Egal ob Core ML, LiteRT oder andere On-Device-Runtimes verwendet werden: Modelle müssen geladen, geparst und in die Berechnung einbezogen werden. Verschlüsselung auf Dateiebene erschwert das direkte Kopieren aus Installationspaketen oder App-Verzeichnissen, kann jedoch nicht verhindern, dass die laufende Anwendung auf Modellmaterialien zugreift. Wenn ein Angreifer den Prozess kontrolliert oder die Laufzeit beobachtet, verlagert sich das Risikomodell von statischen Dateien hin zu Ladevorgängen, Speicherbereich, Funktionsaufrufen und Ausgaben.
Dies bedeutet nicht, dass Modellverschlüsselung wertlos ist. Sie erhöht die Kosten für müheloses Kopieren, verhindert direkte Substitution und bildet Teil einer Defense-in-Depth-Strategie neben Paketschutz, Integritätsprüfungen, Erkennung der Laufzeitumgebung und Versionspaarung. Entscheidend ist, den Nutzen als Erhöhung der Angreiferkosten und Reduzierung der Angriffsfläche (Blast Radius) darzustellen, anstatt zu behaupten, eine Extraktion sei unmöglich.
Modellupdates führen zudem zu Kompatibilitätsherausforderungen. Modellversionen müssen mit Vorverarbeitungslogik, Feature-Shapes, Runtime-Versionen, Hardwarefähigkeiten und Nachverarbeitungsregeln abgestimmt sein. Bei Update-Fehlern sind sichere Rollbacks erforderlich, um zufällige Kombinationen aus alten Modellen und neuer Logik zu verhindern.
| Phase | Angriffsfläche | Schwerpunkt der Steuerung | Validierungsfragen |
|---|---|---|---|
| Build und Paketierung | Repositories, CI-Pipelines, Installationspakete und Ressourcenverzeichnisse | Zugriffskontrolle, Schlüsselisolierung, Dateischutz und Artefakt-Identität | Welche Modelle und Konfigurationen sind im finalen Paket enthalten? |
| Download und Update | Netzwerk, Cache und Versionswechsel | Übertragungsschutz, Signierung oder Integritätsprüfungen, atomarer Austausch und Rollback | Können anomale Updates fehlabgestimmte Modelle laden? |
| Laden und Inferenz | Prozessspeicher, Runtime-Schnittstellen und Hardware-Backends | Runtime-Schutz, minimale Verweildauer, Ausnahmebehandlung und Kompatibilität | Wann wird das Modell verfügbar und wie stoppt ein Fehler die Ausführung? |
| Ausgabe und Protokollierung | Ergebnisse, Konfidenzwerte, Debug-Informationen und Benutzerdaten | Minimale Ausgabe, Maskierung, Zugriffskontrolle und Ablauf | Geben Logs Modelldetails oder sensible Benutzerinformationen preis? |
Langlebige API-Schlüssel mit hohen Privilegien dürfen keine Client-Geheimnisse sein
Die Android-Sicherheitsdokumentation stellt explizit fest, dass in den Quellcode eingebettete API-Schlüssel nach der Kompilierung der App durch Dekompilierung entdeckt werden können. Verschleierung und Application Hardening können zwar die Kosten für das Auffinden erhöhen, ändern aber nichts daran, dass der Client diese Anmeldeinformationen besitzen und nutzen muss. Solange ein Schlüssel langlebig und hochprivilegiert innerhalb eines generischen Clients bleibt, lässt sich die Auswirkung eines Lecks kaum begrenzen.
Der Android Keystore kann bestimmte Schlüsselmaterialien nicht exportierbar halten, doch die offizielle Dokumentation klärt auf, dass Angreifer bei Kompromittierung des Anwendungsprozesses möglicherweise dennoch in der Lage sind, die Schlüssel der App für Operationen zu nutzen. Er eignet sich zum Schutz gerätegebundener privater Schlüssel und lokaler Verschlüsselung, sollte jedoch nicht fälschlicherweise als sicherer Tresor für beliebige langlebige gemeinsame Geheimnisse für Remote-Dienste interpretiert werden.
Eine robustere Architektur erfordert, dass der Client basierend auf Benutzeridentität und Gerätekontext kurzlebige, eingeschränkte und widerrufbare Token von seinem eigenen Dienst anfordert oder dass serverseitige Proxys risikoreiche Funktionsaufrufe (Function Invocations) von Modellen übernehmen. Der Server muss Kontoautorisierung, Kontingente, Ratenbegrenzung, Modellumfang, Datenumfang und Überwachung anomalen Verhaltens durchsetzen.
- Anmeldeinformationen nach Entwicklungs-, Test- und Produktionsumgebungen isolieren
- Sicherstellen, dass Token nur minimale Modell- und Datenberechtigungen besitzen
- Serverseitigen Widerruf aktivieren sowie Kontingente und Ratenbegrenzungen durchsetzen
- Verhindern, dass Clients langlebige gemeinsame Schlüssel mit hohen Privilegien speichern
request = verify_user_session(input.session)
app = verify_app_evidence(input.attestation)
policy = load_policy(user=request.user, app=app.identity)
if policy.version_state == UNKNOWN:
return CHALLENGE_OR_LIMIT
if policy.account_scope.allows(input.model_scope) == false:
return DENY
if policy.risk_score >= HIGH:
return STEP_UP_VERIFICATION
return issue_short_lived_token(
scope=input.model_scope,
quota=policy.quota,
expires_in=policy.short_window
)Integritätssignale sollten ausschließlich serverseitige Entscheidungen informieren
Play Integrity liefert Android-Backends Signale zur App-Identifikation, Geräteintegrität, Kontolizenzierung und teilweisen Umgebungsrisiken. Apple App Attest unterstützt den Server bei der Prüfung, ob eine Anfrage von einer gültigen App-Instanz stammt, indem es Geräteschlüssel generiert, Einmal-Challenges ausstellt, die Attestierung serverseitig verifiziert und nachfolgende Assertions verarbeitet. Gemeinsam ist beiden, dass die Nachweise letztlich serverseitig validiert werden.
Diese Mechanismen haben klare Grenzen. Play-bezogene Signale werden durch Vertriebsquellen, Gerätestatus und Dienstbedingungen beeinflusst; die Apple-Dokumentation weist darauf hin, dass App Attest nicht auf allen Gerätetypen unterstützt wird und keine einzelne Richtlinie Betrug vollständig ausschließt. Der Server muss zwischen Bestanden, Fehlgeschlagen, Nicht verfügbar, transienten Fehlern und nicht konfigurierten Zuständen unterscheiden. Er darf „Nicht verfügbar" nicht direkt mit einem Angriff gleichsetzen und keine endgültigen Entscheidungen lokal auf dem Client treffen.
Integritätssignale und Modellverschlüsselung lösen unterschiedliche Probleme. Erstere helfen, Applikationsinstanzen und Laufzeitumgebungen zu verifizieren, während Letztere die Exposition statischer Modelle reduziert. Echte Autorisierung erfordert weiterhin Kontext des Benutzerkontos, Prüfungen geschäftlicher Ressourcen, Versionsvalidierung, Analyse des Anfrageinhalts, Durchsetzung von Quoten und Verhaltenskontext.
| Schicht | Bereitgestellte Funktion | Validierende Stelle | Häufiger Missbrauch |
|---|---|---|---|
| Schutz von Modelldateien | Resistenz gegen Zugriff auf und Austausch von statischem Speicher | Client und Lieferkette | Behandlung von Dateiverschlüsselung als API-Autorisierung |
| Play Integrity | Signale zu Android-Apps, Geräten, Konten und Umgebung | Serverseitig | Client gibt selbst einen vertrauenswürdigen Boolean-Wert zurück |
| App Attest | Attestierung und Assertion für Schlüssel von Apple-App-Instanzen | Serverseitig | Ignorieren von Challenges, Zählern oder nicht unterstützten Geräten |
| Konto- und Geschäftsrichtlinien | Ob ein Nutzer auf bestimmte Modelle, Daten und Quoten zugreifen darf | Serverseitig | Sich ausschließlich auf Gerätesignale verlassen und Nutzerberechtigungen ignorieren |
| Verhaltensbasierte Risikosteuerung | Ratenbegrenzung, Erkennung von Replay-Angriffen, Prävention von Massenmissbrauch und anomaler Kontext | Serverseitig | Gewährung permanenten Vertrauens nach einem einzigen erfolgreichen Durchlauf |
Validierung mobiler KI-Anwendungen erfordert statische, laufzeitbezogene und serverseitige Perspektiven
Statische Prüfungen klären, welche Modelle, Konfigurationen, Strings, Credentials und Debug-Ressourcen im Installationspaket vorhanden sind; Laufzeitprüfungen klären, wie Modelle geladen werden, wie Fehler behandelt werden, ob Logs Daten preisgeben und ob Updates zurückgerollt werden können; serverseitige Prüfungen klären, ob Konto-, Versions-, Integritäts-, Quoten- und Datenberechtigungen tatsächlich durchgesetzt werden. Fehlt einer dieser drei Nachweistypen, verzerrt dies die Schlussfolgerungen zugunsten partialer Sichtweisen.
Tests müssen eindeutige Release Candidates und explizite Modellversionen verwenden sowie Zielsysteme, Gerätefähigkeiten, Laufzeit-Backends, Modellquellen und Update-Zustände dokumentieren. Leistung, Speichernutzung und Kompatibilität der On-Device-Inferenz hängen von Modellstruktur, Quantisierung, Hardware und Laufzeit ab; Kennzahlen anderer Modelle oder Geräte dürfen nicht herangezogen werden.
Ausnahmepfade sind kritisch: fehlende oder beschädigte Modelldateien, unterbrochene Updates, nicht unterstützte Laufzeiten, abgelaufene Server-Token, nicht verfügbare Integritätssignale, fehlgeschlagene Log-Uploads und widerrufene Nutzerberechtigungen. Das System muss sicher degradieren und wiederherstellbare Zustände sowohl für Nutzer als auch für Betriebsteams bereitstellen.
| Nachweisoberfläche | Prüfinhalt | Bestehensbedingungen | Grenzen der Schlussfolgerung |
|---|---|---|---|
| Installationspaket (statisch) | Modelle, Schlüssel, Konfigurationen, Log-Marker und Debug-Ressourcen | Keine langlebigen Secrets mit hohen Privilegien; Modellauslieferung entspricht dem Design | Kann nicht beweisen, dass die Laufzeit unbeobachtbar ist |
| Modellausführung | Laden, Speicher-Lebenszyklus, Fehler, Leistung und Rollback | Stabil auf Zielgeräten mit sicherer Ausnahmebehandlung | Kann nicht beweisen, dass die serverseitige Autorisierung korrekt ist |
| Netzwerk und Credentials | Token-Gültigkeit, Berechtigungen, Rotation, Replay-Schutz und Zertifikatsrichtlinien | Prinzip der geringsten Rechte und Widerrufbarkeit | Kann nicht beweisen, dass Modelldateien geschützt sind |
| Serverseitige Richtlinien | Konten, Versionen, Integrität, Kontingente und Verhalten | Hochriskante Ressourcen werden abschließend vom Server bestimmt | Ein einzelnes Plattform-Signal darf nicht als absolut vertrauenswürdig behandelt werden |
| Datenschutz und Protokollierung | Ein-/Ausgabe, Caches, Diagnoseinformationen und Exporte | Minimale Erfassung, Maskierung und Befristung | Muss mit den Anforderungen zur Klassifizierung von Geschäftsdaten kombiniert werden |
Design-Fazit und Umfangsbegrenzungen
Modellverschlüsselung ist sinnvoll, stellt jedoch nur einen Kontrollpunkt im Modell-Lebenszyklus dar. Kommerzielle KI-Apps müssen zudem die Vor- und Nachverarbeitungslogik schützen, verhindern, dass langlebige Schlüssel mit hohen Privilegien auf den Client gelangen, sicherstellen, dass der Server die endgültige Autorisierung vornimmt, Fehlertoleranz für Plattform-Integritätssignale implementieren sowie Nutzerdaten und Logs governen.
Ohne tatsächliche Release Candidates, Modellversionen, Zielgeräte und serverseitige Schnittstellen können wir lediglich die Architektur und ausstehende Validierungspunkte prüfen. Wir können nicht behaupten, Modelle seien extraktionssicher, Schnittstellen missbrauchssicher, Runtime-Injection blockiert oder Leistungsziele erreicht. Derartige Schlussfolgerungen erfordern aktuelle Evidenzpakete.
Der Aktions-Einstiegspunkt für Yudun auf dieser Seite dient der Beantragung von Application Hardening und Kompatibilitätsbewertung; er stellt keine Validierung eines spezifischen Modell-Frameworks oder einer exklusiven KI-Fähigkeit dar. Der Projektumfang muss separat bestätigt werden, nachdem Tech-Stack, Modell-Bereitstellungsmethode und kritische Geschäftspfade eingereicht wurden.
- Führen Sie separate Register für Modelle, Runtimes, Credentials und Daten
- Stellen Sie sicher, dass hochriskante Function Invocations abschließend vom Server autorisiert werden
- Bieten Sie Nichtverfügbarkeits- und Degradationspfade für Plattform-Signale vor
- Ermöglichen Sie Modell-Updates zur Unterstützung von Verifikation, atomarem Wechsel und Rollback
- Binden Sie alle conclusions an spezifische Release Candidates und Modellversionen
Evidenz- und Anwendbarkeitsgrenzen
In diesem Abschnitt werden dokumentierte Plattformfakten, technische Beurteilungen und Grenzwerte getrennt, die nicht in unbestätigte Produktaussagen verallgemeinert werden können.
| Artikel Urteil | Fakt oder technische Grundlage | Anwendbarkeitsgrenze |
|---|---|---|
| In den Client kompilierte API-Schlüssel können durch Dekompilierung entdeckt werden. | Die offizielle Android Security Checklist stellt explizit fest, dass Angreifer bei im Quellcode enthaltenen API-Schlüsseln die App dekompilieren und diese Ressourcen lokalisieren können. | Einige plattformbeschränkte Low-Privilege-Schlüssel dürfen gemäß Herstellervorgaben auf dem Client verbleiben, doch bleiben Umfangseinschränkungen und Überwachung erforderlich. |
| Android Keystore kann nicht verhindern, dass ein kompromittierter Prozess Schlüssel verwendet. | Die offizielle Android-Dokumentation besagt, dass zwar Schlüsselmaterial nicht exportierbar bleiben kann, Angreifer jedoch weiterhin die Schlüssel der App nutzen können, wenn der Anwendungsprozess kompromittiert wird. | Spezifische Schutzfähigkeiten hängen von der Schlüsselverwendung, Hardware-Unterstützung, Authentifizierungsbedingungen und Implementierungsdetails ab. |
| App Attest-Attestierungen und Assertions müssen auf dem Server validiert werden. | Der offizielle Apple-Workflow nutzt serverseitige Challenges, Attestierungsverifikation, Speicherung öffentlicher Schlüssel und nachfolgende Assertion-Zähler. | Nicht alle Gerätetypen werden unterstützt, und Apple stellt explizit fest, dass keine einzelne Richtlinie jeglichen Betrug eliminiert. |
| Der Schutz von Modelldateien kann die serverseitige Ressourcenautorisierung nicht ersetzen. | Beide schützen unterschiedliche Objekte: Das eine zielt auf clientseitige Dateien und Runtime-Materialien, das andere auf Berechtigungen für Konten, Modelle, Daten und Kontingente. | Dies ist eine Beurteilung der architektonischen Verantwortung und impliziert nicht, dass eine spezifische Modellverschlüsselungsimplementierung eine Validierung bestanden hat. |
| Schlussfolgerungen zur On-Device-Modellleistung und -Kompatibilität müssen an spezifische Modelle und Geräte gebunden sein. | Modellstruktur, Quantisierungsmethode, Runtime, Hardware-Backend, Systemversion und Eingabeskalierung beeinflussen die Ergebnisse gemeinsam. | Dieser Artikel liefert oder impliziert keine Leistungskennzahlen für Yudun-Modelle. |
Technische Fragen
Das Modell ist bereits verschlüsselt; warum kann ich den API-Schlüssel dennoch nicht in die App legen?
Modellverschlüsselung schützt Modelldateien, während API-Schlüssel Credentials für den Zugriff auf entfernte Ressourcen sind. Wenn der Client den Schlüssel verwenden muss, können Angreifer ihn dennoch durch statische oder Runtime-Beobachtung erlangen oder missbrauchen.
Ist die Speicherung des API-Schlüssels im Android Keystore absolut sicher?
Der Keystore kann das Risiko des Exports von Schlüsselmaterial verringern, ein kompromittierter Anwendungsprozess kann den Schlüssel jedoch weiterhin aufrufen. Er eignet sich besser für gerätegebundene Operationen und ersetzt nicht das Prinzip der geringsten Rechte auf Serverseite sowie kurzlebige Token.
Können Geräte nach erfolgreichem Bestehen von Play Integrity oder App Attest dauerhaft als vertrauenswürdig eingestuft werden?
Nein. Sie liefern Nachweise nur für einen bestimmten Zeitpunkt und Kontext. Der Server muss weiterhin Konten, Anfragen, Versionen, Quoten und Verhaltensmuster validieren und dabei Signalverfügbarkeit sowie Zustandsänderungen berücksichtigen.
Müssen On-Device-Modelle auf den Server migriert werden?
Nicht zwingend. Offline-Szenarien, datenschutzkritische Anwendungen und Anforderungen an niedrige Latenz können On-Device-Inferenz erfordern. Assets sollten basierend auf ihrem Wert und geschäftlichen Bedingungen gestaffelt werden, wobei hochriskante Berechtigungen und langlebige Geheimnisse auf dem Server verbleiben müssen.
Welche Assessments können ohne Modell-Samples durchgeführt werden?
Wir können Assets, Lieferketten, Credential-Architektur, Update-Strategien und Validierungspläne prüfen, können jedoch nicht bestätigen, dass Schutz vor Modellextraktion, Laufzeitschutz oder Leistungskompatibilität bestanden wurden.
Möchten Sie dies in Ihrer eigenen App testen?
Reichen Sie den Release Candidate, die Zielsysteme und kritischen Geschäftspfade für eine Yudun PoC- und Kompatibilitätsbewertung ein.
Weiter mit: Laufzeitsicherheitsgrenzen für mobile KI-Anwendungen