SCHUTZ DER BENUTZER:INNEN VOR SOFTWAREFEHLERN UND DEREN KONSEQUENZEN
Unsere moderne Gesellschaft kann ohne Software kaum existieren. Daher ist es von größter Wichtigkeit, dass diese Software nicht nur wie vorgesehen funktioniert, sondern auch, dass sie nicht von Angreifer:innen so ausgenutzt werden kann, dass diese die Funktionalität verändern oder Zugang zu sensiblen Informationen erhalten. Software-Analyse und -Tests sind die beiden wichtigsten Techniken, um eine solche Verlässlichkeit von bestehender Software zu erreichen. Bei der Software-Analyse wird der Programmcode der Software selbst untersucht und daraus Eigenschaften wie der mögliche Informationsfluss abgeleitet. Beim Testen von Software wird diese unter einer Vielzahl von Eingaben und Umgebungen ausgeführt, wobei genau bestimmt wird, was in einer konkreten Umgebung geschieht. Beide Techniken arbeiten Hand in Hand, um genau zu bestimmen, was in Software passieren kann - und was nicht passieren kann. So haben unsere Testgenerierungstechniken Tausende von Fehlern und Schwachstellen in Web-Browsern und anderer Software aus der realen Welt gefunden und die Benutzer:innen vor Softwarefehlern und deren Folgen geschützt.