Algorithmic improvements for feedback-driven fuzzing
- Randomisiertes Testen oder "Fuzzing" bezeichnet den Prozess, pseudo-zufällige Eingaben an ein Programm zu übergeben, um Fehler auszulösen. In den letzten Jahren hat dieser Ansatz eine große Zahl Fehler und Sicherheitslücken gefunden. Programmkonstrukte wie spezielle, festgelegte Kennzahlen, hoch-strukturierte Eingabeformate oder Quersummen stelle immer noch ein Problem dar. Die zufälligen Veränderungen, die Fuzzer an den Eingaben vornehmen, sind nicht in der Lage, den Abstand zwischen zwei verschieden, interessanten Eingaben zu überwinden. In dieser Arbeit stellen wir verschiedene neue Methoden vor, um Programme effizient zu testen, die solche problematischen Strukturen enthalten. Die Fuzzer die wir im Rahmen dieser Abschlussarbeit entwickelt haben, haben eine Vielzahl von Fehlern und Sicherheitslücken in Software gefunden, welche (indirekt) von fast jedem Menschen täglich benutzt wird.
Author: | Cornelius AschermannGND |
---|---|
URN: | urn:nbn:de:hbz:294-71745 |
DOI: | https://doi.org/10.13154/294-7174 |
Referee: | Thorsten HolzORCiDGND, Ahmad-Reza SadeghiGND |
Document Type: | Doctoral Thesis |
Language: | English |
Date of Publication (online): | 2020/09/01 |
Date of first Publication: | 2020/09/01 |
Publishing Institution: | Ruhr-Universität Bochum, Universitätsbibliothek |
Granting Institution: | Ruhr-Universität Bochum, Fakultät für Elektrotechnik und Informationstechnik |
Date of final exam: | 2020/01/14 |
Creating Corporation: | Fakultät für Elektrotechnik und Informationstechnik |
GND-Keyword: | Sicherheit; Algorithmus; Programmfehler; Softwaretest; Softwareschwachstelle |
Institutes/Facilities: | Lehrstuhl für Systemsicherheit |
Dewey Decimal Classification: | Allgemeines, Informatik, Informationswissenschaft / Informatik |
faculties: | Fakultät für Elektrotechnik und Informationstechnik |
Licence (German): | Creative Commons - CC BY 4.0 - Namensnennung 4.0 International |