Prof. Dr. G. Hellberg EDV Beratung und Softwareengineering seit 1984

Mailadresse fuer Kontaktaufnahme
NewsNews
 
Die Hellberg EDV Beratung ist SuSE Business Partner
 
Professor Hellberg ist Certified Novell InstructorDie Hellberg EDV Beratung ist Novell Business Partner
 
Die Hellberg EDV Beratung ist Microsoft Partner
 
GDATA Software
 
 
News
 

Während dem verschlüsselten Verbindungsaufbau prüfen Apps oft genau nach, ob sie mit dem korrekten Server kommunizieren - dieser sich also mit einem erwarteten TLS-Zertifikat ausweist. In iOS 14 geht dieses sogenannte Certificate Pinning, für welches Entwickler bisher noch eigenen Code schreiben mussten, bereits per Konfiguration - Apple informierte hierüber per News-Meldung.

Werden verschlüsselte Verbindungen über das TLS-Protokoll aufgebaut, authentifiziert sich der Server mithilfe eines Zertifikats gegenüber der App - zudem wird ein gemeinsames Geheimnis zur Verschlüsselung ausgehandelt. Die Vertrauenswürdigkeit des verwendeten Zertifikats wird von dem Betriebssystem bei jedem Verbindungsaufbau überprüft, indem etwa der im Zertifikat angegebene Hostname mit dem des angefragten Systems abgeglichen wird. Auch wird überprüft, ob das Zertifikat von einer vertrauenswürdigen Zertifizierungsstelle (Certficate Authority, CA) ausgestellt und signiert wurde. Für letzteren Schritt hat iOS einen systemweiten Zertifikatsspeicher mit den Root-Zertifikaten zahlreicher öffentlicher CAs.

Der Zertifikatsspeicher in iOS 14 enthält mehr als 150 als vertrauenswürdig eingestufte Root-Zertifikarte. Im Hinblick auf zahlreiche Vorfälle in der Vergangenheit wurden zur Vermeidung von Missbrauchs bereits verschiedene Kontrollinstrumente wie Certificate Transparency eingeführt. Das Risiko von Social Engineering zur unbemerkten Einschleusung zusätzlicher CAs in den Zertifikatsspeicher besteht außerdem weiterhin. Den CAs sollte daher nicht uneingeschränkt vertraut werden.

Apps verlassen sich aus diesen Gründen immer weniger auf die Validierung des Betriebssystems und führen diese selbst aus - das erwartete TLS-Zertifikat oder der öffentliche Schlüssel werden dazu bereits während der Entwicklung hinterlegt. In iOS 14 muss der Code der App hierzu nicht mehr angepasst werden: Apps können die erwarteten Schlüssel dazu einfach in der zentralen Info.plist Konfigurationsdatei ablegen. Bei allen über die Standard-API initiierten Verbindungen gleicht iOS dann die Schlüssel mit der Konfigurationsdatei ab - stimmen sie nicht überein, so wird der Verbindungsaufbau abgebrochen.

Angriffe auf die Kommunikation können auf diesem Weg, auch wenn der Angreifer über ein gefälschtes Zertifikat von einer vertrauenswürdigen CA verfügt, abgewehrt werden. Bei Android steht ein ähnlicher Mechanismus über die Network Security Configuration bereits seit Version 7.0 bereit.

(jb, hannover)

(siehe auch: Heise-News-Ticker)

Hannover · EDV-Beratung · Linux · Novell · Microsoft · Seminar · IT-Consult · Netzwerk · LPIC · CLE