Title (deu): Konzeptionierung, Entwicklung und Erprobung eines SSL-Zerdifikatsfuzzers zur Prüfung von Zerdifikatsvalidierungschecks

Author: Stoiber, C. (Christian)

Description (deu): St. Pölten, FH-Stg. Information Security, Master Thesis, 2014

Description (deu): SSL-Verschlüsselung ist heutzutage eine weit verbreitete Sicherheitstechnologie im Internet. Viele Dienstanbieterinnen und Dienstanbieter schützen durch den Einsatz von Verschlüsselung die Privatsphäre und die, teilweise hochsensiblen Daten, ihrer Nutzerinnen und Nutzer. Da SSL mit Zertifikaten arbeitet, hat die Endverbraucherin oder der Endverbraucher die Möglichkeit, die Identität der Dienstanbieterin oder des Dienstanbieters zu verifizieren. In der Regel übernimmt die Zertifikatsüberprüfung ein Programmteil - in Form von SSL-Bibliotheken, der in den modernen Browsern und mobilen Applikationen fix integriert ist. Kürzlich veröffentlichte Schwachstellen in SSL-Bibliotheken und im Umgang mit Verschlüsselung bestärken allerdings die Vermutung, dass eine korrekte Zertifikatsprüfung die Ausnahme und nicht die Regel ist. In dieser Arbeit wird die fehlerfreie Funktion der Zertifikatsüberprüfung, durch zu Hilfenahme eines SSL-Zertifikatsfuzzers, analysiert. Der Fuzzer erzeugt mutwillig veränderte Zertifikate, die bei einer korrekten Zertifikatsüberprüfung abgelehnt werden sollten. Für die Konzeptionierung und Implementierung des Zertifikatsfuzzers wird im Vorfeld das nötige Grundlagenwissen über X.509 Zertifikate erarbeitet. Es wird analysiert, welche Felder und extensions in einem Zertifikat vorhanden sein müssen und welche Zertifikatsinhalte außerhalb der Spezifikation liegen. Eine umfassende
Sicherheitsanalyse ausgewählter mobile Banking Applikationen von österreichischen Bankinstituten, deutschen Kreditinstituten und anderen Geldinstituten aus aller Welt wird durchgeführt. Die Ergebnisse der Test liefern Informationen über das Sicherheitsniveau von Netbanking auf mobilen Endgeräten.

Description (eng): Today SSL-encryption is a common technique used on the internet to secure network traffic. Various service providers use encryption to provide privacy for their customers and secure highly sensitive data. Another aspect of SSL-encryption is the use of certificates. A certificate - which is bound to an entity - provides information about the identity of a service provider. Therefore the customer has the ability to check whether the server belongs to the service provider or if the server is only a fake. This verification process will be performed automatically by the web browser or mobile application calling which the user has started. The built in SSL-library of the web browser or mobile application has the required functions implemented to do so. Recently published vulnerabilities in the implementation of SSL-libraries and other problems with encryption lead to the assumption that accurate certificate validation cannot be taken for granted. In the course of this thesis a SSL-certificate fuzzer is used to analyse the bug-free functionality of the certificate validation process. The fuzzer forces the creation of certificates which should be declined by a functional secure SSL-client. To design and implement such a program, research on the topic of the X.509 certificate standard is necessary to know which fields and extensions are allowed in a certificate. Based on that knowledge, test cases can be specified that are outside of the specification but valid enough to be accepted as a certificate. Using the certificate fuzzer a security analysis is performed with the mobile banking applications of banks in Austria and Germany and some other countries around the world. The results of the analysis report the truth about security
concerning online banking on mobile devices.

Object languages: German

Date: 2014

Rights: © All rights reserved

Classification: Computersicherheit; SSL; Softwareschwachstelle

Permanent Identifier