Bußgeld-Kopfzeile

Safari-Kennwörter: Ausführlicher technischer Leitfaden für Sicherheitsingenieure

Safari-Passwörter beziehen sich auf die Anmeldeinformationen, die der Safari-Browser von Apple lokal oder im iCloud-Schlüsselbund speichert. Für Sicherheitsingenieure ist es wichtig zu verstehen, wie diese Kennwörter verwaltet und geschützt werden und wie sie gelegentlich bei realen Angriffen offengelegt werden, um sichere Anwendungen zu entwickeln und das Risiko eines Kennwortdiebstahls zu bewerten.

Safari integriert die Speicherung von Kennwörtern und das automatische Ausfüllen tief in die Apple Plattformen und den iCloud-Schlüsselbund, was die bequeme Wiederverwendung von Anmeldedaten auf verschiedenen Geräten ermöglicht, aber auch komplexe Sicherheitsüberlegungen mit sich bringt. In diesem Leitfaden analysieren wir nicht nur die Mechanismen hinter der Kennwortverwaltung, sondern auch dokumentierte Schwachstellen, Bedrohungsmodelle und sichere Verteidigungsmethoden.

Was bedeutet "Safari-Passwörter" eigentlich?

Das Passwortsystem von Safari besteht aus mehreren Komponenten:

  • Lokale Speicherung von Anmeldeinformationen im OS-Schlüsselbund
  • iCloud-Schlüsselbund-Synchronisierung geräteübergreifend
  • AutoFill Funktionalität im Browser und in den Anwendungen
  • Benutzergesteuerte Passwortverwaltung über die Systemeinstellungen

Der zugrunde liegende Speicher ist verschlüsselt und bei der Synchronisierung über iCloud mit Geräteschlüsseln Ende-zu-Ende-verschlüsselt. Apple hat absichtlich verhindert, dass selbst die Apple-Server die Passwörter der Nutzer bei der Übertragung oder im Ruhezustand entschlüsseln können. Wie auch immer, die Logik des automatischen Ausfüllens und die Benutzeroberflächen sind seit jeher AngriffsflächenSie interagieren mit Webseiten und Benutzereingaben - zwei Bereiche, die ein hohes Schadenspotenzial aufweisen. (support.apple.com)

Safari-Kennwörter: Ausführlicher technischer Leitfaden für Sicherheitsingenieure

Historische Schwachstellen in der Safari-Kennwortverwaltung

Mehrere CVEs zeigen, wie die Passwort- und Autofill-Komponenten von Safari ausgenutzt wurden oder missbraucht werden konnten, wenn die Schutzmaßnahmen unzureichend waren:

CVE-2018-4137: Safari Login AutoFill Gefährdung

CVE-2018-4137 ist eine dokumentierte Sicherheitslücke in Apple iOS und Safari, bei der die Bei der AutoFill-Funktion für die Anmeldung fehlte eine ausdrückliche Bestätigung durch den Benutzer bevor sie gespeicherte Anmeldedaten eingeben. Diese Schwachstelle ermöglichte es einer manipulierten Website, automatisch ausgefüllte Benutzername/Passwort-Daten ohne die direkte Zustimmung des Benutzers zu lesen. Die anfällige Komponente war "Safari Login AutoFill", und Apple veröffentlichte Updates zur Behebung des Problems. yisu.com

Dies ist eine Klasse von Schwachstellen, bei der Anmeldedaten werden eher durch Logikfehler als durch kryptografische Schwächen aufgedeckt. Sie unterstreicht, dass die "Autofill-UX-Schicht" technisch eine leistungsfähige Schnittstelle zwischen gespeicherten Geheimnissen und entfernten Inhalten ist.

Andere verwandte Themen

  • Logik/UI-Spoofing-Schwachstellen könnte Safari dazu verleiten, falsche URLs oder Dialogfelder anzuzeigen, was das Verhalten beim automatischen Ausfüllen beeinflussen könnte. Apfel-Unterstützung
  • In der Vergangenheit gab es sowohl bei Browser-Erweiterungen als auch bei integrierten Passwortmanagern Fehler beim automatischen Ausfüllen und in der API-Logik, was zeigt, dass die Handhabung von Anmeldeinformationen stark von der Integrität der Benutzeroberfläche und der Backend-Logik abhängt. Apfelsupporter

Obwohl die meisten dieser älteren Probleme inzwischen behoben wurden, sind sie dennoch lehrreich, da sie Folgendes veranschaulichen warum Sicherheitsingenieure Autofill-Mechanismen wie jede andere API-Oberfläche für Anmeldeinformationen genau prüfen müssen.

Bedrohungsmodelle für Safari-Kennwörter

Die wichtigsten Risikokategorien für Safari-Passwörter umfassen:

BedrohungsmodellBeschreibungBeispiel Auswirkungen
Weitergabe von AnmeldeinformationenAngreifer trickst Autofill-Logik ausPasswort für bösartiges Skript ausgesetzt
UI-SpoofingGefälschte Anmeldeformulare erfassen AnmeldedatenDiebstahl von Zugangsdaten
Missbrauch der VerlängerungBösartige oder kompromittierte Erweiterung extrahiert DatenPasswort-Exfiltration
Lokaler KompromissMalware oder physischer Zugriff auf das GerätSchlüsselbund-Extraktion
Netzwerk-HijackingMan-in-the-Middle erzwingt die Übermittlung von Anmeldeinformationen über HTTPRisiko in Verbindung mit unsicheren Formularen

Diese Tabelle hilft dabei, Bedrohungen nicht nur als "Browser-Bugs", sondern als System- und Schnittstellenrisiken die eine mehrschichtige Verteidigung erfordern.

Wie Safari Passwörter speichert und schützt

Die Passwortsicherheit von Safari wird unterstützt durch:

  1. Schlüsselbund-Verschlüsselung - Lokale Kennwörter werden mithilfe von kryptografischen APIs der Plattform sicher gespeichert.
  2. iCloud End-to-End-Synchronisierung - Wenn diese Funktion aktiviert ist, werden die Anmeldedaten über vertrauenswürdige Geräte hinweg mit gerätespezifischen Verschlüsselungsschlüsseln synchronisiert.
  3. Gates zur Benutzerauthentifizierung - Für den Zugriff auf die Passwortdetails ist normalerweise Face ID / Touch ID / Passcode erforderlich.
  4. Sichere AutoFill-Richtlinien - Safari füllt in der Regel nur über HTTPS automatisch aus und fordert den Benutzer zum Handeln auf.

Komfortfunktionen erweitern jedoch häufig die Schnittstellen zwischen nicht vertrauenswürdigen Seiteninhalten und der Zugriffslogik für Anmeldeinformationen.

Safari-Kennwörter: Ausführlicher technischer Leitfaden für Sicherheitsingenieure

Beispiele für Angriffs- und Verteidigungscodes

Zur Veranschaulichung der Gefährdung durch Anmeldeinformationen und der besten Verteidigungspraktiken sind folgende Punkte zu beachten 5 echte Beispiele die sich auf das automatische Ausfüllen von Passwörtern in Safari und die Handhabung von Formularen beziehen.

Beispiel 1: Erkennung unsicherer HTTP-Anmeldeformulare (Angriffsfläche)

javascript

document.querySelector("form").addEventListener("submit", function (e) {

if (location.protocol !== "https:") {

console.error("Blocking insecure password submission");

e.preventDefault();

}

});

Dadurch werden Formularübermittlungen über HTTP blockiert, die andernfalls Leckage- oder Downgrade-Angriffe ermöglichen könnten.

Beispiel 2: Verhindern des automatischen Ausfüllens von sensiblen Feldern

html

<input type="password" autocomplete="new-password" />

Die autocomplete="neues-kennwort" Attribut signalisiert, dass Browser sollten gespeicherte Anmeldedaten nicht automatisch ausfüllen.

Beispiel 3: CSP zur Beschränkung der Offenlegung von Zugangsdaten

html

<meta http-equiv="Content-Security-Policy" content="default-src 'self'; form-action 'self';">

Eine strenge Sicherheitspolitik für Inhalte verhindert den Diebstahl von Anmeldeinformationen über böswillige Formularübertragungen.

Beispiel 4: Härtung der UI-Logik zur Bestätigung der Autofill-Berechtigung

javascript

async function requestAutofill() {

if (await authenticateUser()) {

const creds = await browser.passwords.get({ url: location.origin });

fillForm(creds);

}

}

Dieses Muster erzwingt eine explizite Bestätigung durch den Benutzer vor riskanten automatischen Ausfüllvorgängen.

Safari-Passwörter

Beispiel 5: Sichere Passwortspeicherung über native APIs (iOS/Swift)

flink

let query: [String: Any] = [

kSecClass as String: kSecClassGenericPassword,

kSecAttrAccount as String: "exampleAccount",

kSecValueData as String: passwordData

]

SecItemAdd(Abfrage als CFDictionary, nil)

Verwendung von Plattform-Schlüsselbund-APIs stellt sicher, dass die systemeigenen Schutzmaßnahmen (Berührungs-/Gesichtserkennung) gelten.

Beste Praktiken zum Schutz von Safari-Kennwörtern

Sicherheitskontrollen um Safari-Passwörter sollten umfassen:

  • Erzwingen Sie HTTPS für alle Formularübertragungen
  • Strenge CSP- und Form-Action-Beschränkungen verwenden
  • Validierung und Bereinigung der Auslöserlogik für das automatische Ausfüllen von Kennwörtern
  • Überwachung und Einschränkung von Erweiterungsberechtigungen
  • Überprüfen des iCloud-Schlüsselbundzugriffs mit Geräteauthentifizierung

Diese Praktiken betreffen sowohl UI-Logik und Sicherheit der Credential Pipeline.

Penligent: KI-gesteuerte Erkennung der Offenlegung von Zugangsdaten

Bei komplexen Webanwendungen entgehen automatisierten Tests oft subtile Probleme mit dem Berechtigungspfad - insbesondere solche, die das automatische Ausfüllen oder skriptgesteuerte Formularlogik betreffen. Plattformen wie Sträflich Unterstützung von Ingenieurteams durch:

  • Identifizierung riskanter Autofill-Auslöser in Frontend-JavaScript
  • Korrelation von Formularfeldern mit Anmeldeinformations-APIs und Speichermustern
  • Erkennung von nicht autorisiertem Autofill-Verhalten auf dynamischen Seiten
  • Integration in CI/CD, um Probleme frühzeitig zu erkennen

Anstatt Seiten nur statisch zu scannen, analysiert die KI von Penligent, wie Skripte mit Formular- und Anmeldeinformations-APIs zur Laufzeit interagieren, und deckt so Logikfehler auf, die Passwörter offenlegen könnten - selbst wenn Browser und Betriebssysteme technisch sicher sind.

Verwandte CVEs, die es wert sind, überprüft zu werden

Der Verweis auf frühere CVEs verdeutlicht, dass das automatische Ausfüllen und die Passwortlogik eine bedeutende Angriffsfläche darstellen:

  • CVE-2018-4137: Safari Login AutoFill verlangte keine explizite Bestätigung und konnte Anmeldedaten für manipulierte Inhalte preisgeben. yisu.com
  • CVE-2018-4134: Safari UI Spoofing, das zu einem falschen Domänen- oder Berechtigungskontext führt. cve.mitre.org
  • CVE-2024-23222 & andere CVEs, die sich auf WebKit auswirken, zeigen, wie Schwachstellen in der Browsing-Engine die Sicherheit im Allgemeinen beeinflussen. cve.mitre.org

Diese Erkenntnisse zeigen, dass es bei der Passwortsicherheit nicht nur um die Speicherung geht, sondern auch darum, wie Browser mit nicht vertrauenswürdigen Inhalten interagieren.

Schlussfolgerung

Safari-Passwörter liegen an der Schnittstelle zwischen Komfort und Sicherheit. iCloud Keychain und AutoFill bieten zwar Benutzerfreundlichkeit, erweitern aber die Angriffsfläche auf Client-Logik und Browser-Interaktionsschichten. Historische CVEs zeigen, dass Logik- und UI-Fehler - nicht nur kryptografische Schwächen - ein echtes Risiko darstellen. Durch die Kombination von strengen Formular- und CSP-Richtlinien, defensiven Programmiermustern und automatisierten Tests (z. B. durch KI-gestützte Plattformen wie Penligent) können Entwicklungsteams die Arbeitsabläufe für Anmeldedaten zuverlässiger absichern - selbst in komplexen Webumgebungen.

Teilen Sie den Beitrag:
Verwandte Beiträge
de_DEGerman