Zum Inhalt springen
uencoder

TLS Pinning

TLS-Certificate-Pinning bettet den erwarteten Public-Key oder Hash des Zertifikats im Client ein und lehnt alle anderen Zertifikate ab, was Man-in-the-Middle-Angriffe verhindert (einschließlich gefälschter Zertifikate legitimer CAs).

Zweck

Man-in-the-Middle-Angriffe durch Gegner mit legitimen CA-Zertifikaten (z. B. Regierungen oder kompromittierte CAs) verhindern.

Mechanismus

Der Client konfiguriert vorab den SPKI-Hash (Pin) des Serverzertifikats. Beim TLS-Handshake vergleicht er das Zertifikat mit dem Pin und lehnt die Verbindung bei Abweichung ab. Arten: SPKI-Pin, Zertifikatsketten-Pin. Bei mobilen Apps verbreitet; Browser pinnen kaum, weil Zertifikatsrotation schwerfällt.

Anwendungsfälle

  • MITM-Abwehr für Mobile-App-APIs
  • Kommunikation von IoT-Geräten
  • Hochsichere API-Clients
  • Dienst-zu-Dienst-Kommunikation

Beispiele

  • Eingabe
    pin: sha256/SPKI=abc...
    Output
    Reject on certificate mismatch

    Public key pinning

Häufige Fehler

Expired pins without updates cause connection failures
Provide backup pins and a rotation policy

Verwandte Begriffe

References