Google OSS-Fuzz

Defatsch, Sven (2017) Google OSS-Fuzz. Student Research Project thesis, HSR Hochschule für Technik Rapperswil.

[thumbnail of FS 2017-SA-EP-Defatsch-Google OSS-Fuzz - Security Testing des strongSwan Codes.pdf]
Preview
Text
FS 2017-SA-EP-Defatsch-Google OSS-Fuzz - Security Testing des strongSwan Codes.pdf - Supplemental Material

Download (5MB) | Preview

Abstract

Im Jahr 2016 hat Google das sogenannte OSS-Fuzz Programm angekündigt, welches sich zum Ziel gemacht hat, ausgewählte Open Source Projekte sicherer zu machen. Dazu wird die Möglichkeit angeboten, die enorme Rechenleistung der Google Infrastruktur für kontinuierliches Fuzzing, inklusive übersichtlichem Reporting, zu nutzen. Die Open Source IPSec Umsetzung strongSwan wird an der HSR entwickelt und weltweit eingesetzt. Für eine Software im Sicherheitsbereich ist es besonders wichtig, die Anzahl an Fehlern im Code so gering wie möglich zu halten. Fuzzing ist eine gute Möglichkeit, latente Fehler zu entdecken und somit die Codequalität zu steigern.

Für das Fuzzing wurde libFuzzer eingesetzt, da es zu diesem Zeitpunkt die einzige von Google unterstütze Fuzzing Engine ist. Als ein vielversprechendes Fuzz Target stellte sich der Zertifikatsparser heraus, für welchen sich ein Fuzz Target relativ leicht umsetzen liess. Das Fuzzing wurde zuerst lokal getestet, um Erfahrungen im Umgang mit der Nutzung von libFuzzer zu sammeln und dabei Änderungen, welche im strongSwan Build Prozess nötig sind, aufzudecken. Anschliessend wurde das Fuzzing auf die Google Infrastruktur verlagert, um den Code auf Herz und Nieren zu testen.

Ein Resultat dieser Arbeit ist die Erkenntnis über die Integration von strongSwan in das Google OSS-Fuzz Projekt und auf welche Stolpersteine dabei besonders geachtet werden muss. Des Weiteren sind beim Fuzzing selbst einige Fehler unterschiedlicher Tragweite im Code von strongSwan aufgedeckt worden, welche bereits behoben und in Form von Patches wieder eingeflossen sind. Somit ist das Hauptziel des Fuzzings, die Verbesserung der Codequalität, zu einem Teil bereits erreicht worden.

Item Type: Thesis (Student Research Project)
Subjects: Topics > Software > Testing and Simulation
Area of Application > Development Tools
Area of Application > Security
Technologies > Programming Languages > C++
Technologies > Programming Languages > C
Technologies > Security > StrongSWan (OpenSource IPSEC VPN Solution)
Brands > Google
Divisions: Bachelor of Science FHO in Informatik > Student Research Project
Depositing User: OST Deposit User
Contributors:
Contribution
Name
Email
Thesis advisor
Steffen, Andreas
UNSPECIFIED
Thesis advisor
Brunner, Tobias
UNSPECIFIED
Date Deposited: 18 Oct 2017 06:59
Last Modified: 18 Oct 2017 06:59
URI: https://eprints.ost.ch/id/eprint/586

Actions (login required)

View Item
View Item