Sichere Web-Anwendungen

Die Sicherheit von Internet­anwen­dungen betrifft Millionen von Benutzern. Es ist bekannt, dass viele dieser Anwendungen unsicher sind. Dies hat beispielsweise jüngst dazu geführt, dass die IT‐Administratoren des Bundestages ihren Abge­ordneten den Zugriff auf über 100.000 Webseiten verweigerten.

Viele Softwareprogramme werden heute vor ihrer Verwendung aus dem Internet geladen. Das bedeutet, sie müssen nicht mehr lokal installiert werden, sondern sie werden jeweils vor der Benutzung über das Internet in einen Webbrowser geladen und danach ausgeführt. Die Programmierung solcher Software erfolgt sehr häufig in der Programmiersprache JavaScript. Die Erfahrung zeigt, dass in JavaScript programmierte Anwendungen oftmals Schwachstellen enthalten.

Es ist deshalb wichtig, dass Schwachstellen in Software, die mit JavaScript entwickelt wurde, möglichst schnell gefunden und behoben werden können. Hierzu braucht man Software, mittels derer dieses möglichst effizient durchgeführt werden kann, insbesondere dann, wenn es sich um große Softwareprogramme handelt.

In diesem Leuchtturmprojekt werden skalierbare Programmanalysen für JavaScript‐basierte Software entwickelt, welche die Schwachstellen finden und aufdecken sollen. Eine neuartige Kombination von Analysen bei der Ausführung dieser Software und Verfahren zu Generierung von Interaktionssequenzen ermöglicht es, das Verhalten solcher komplexer Internet­anwen­dungen vollautomatisch zu analysieren, und diese zuverlässiger und sicherer zu machen.


Schwachstellen in JavaScript-basierten Webseiten

CRISP-Wissenschaftler der TU Darmstadt identifizieren insgesamt 25 Schwachstellen in JavaScript Software-Modulen, durch die Webseiten regelrecht eingefroren werden können.

Mehr In­for­ma­tio­nen


Publikationen im Leuchtturmprojekt Sichere Web-Anwendungen

Freezing the Web: A Study of ReDoS Vulnerabilities in JavaScript-based Web Servers
Autoren: Cristian-Alexandru Staicu, Michael Pradel
vorgestellt auf USENIX Security 2018, 15.-17.08.2018, Baltimore, USA

Understanding and Automatically Preventing Injection Attacks on Node.js
Autoren: Cristian-Alexandru Staicu, Ben Livshits, Michael Pradel
vorgestellt auf NDSS'18,  18.-21.02.2018, San Diego, USA

Systematic Black-Box Analysis of Collaborative Web Applications
Autoren: Marina Billes, Anders Møller, Michael Pradel
vorgestellt auf PLDI 2017, 19.-21.06.2017, Barcelona, Spanien

Monkey See, Monkey Do: Effective Generation of GUI Tests with Inferred Macro Events
Autoren: Markus Ermuth, Michael Pradel
vorgestellt auf ISSTA 2016, 18.-20.07.2016, Saarbrücken

DLint: Dynamically Checking Bad Coding Practices in JavaScript
Autoren: Liang Gong, Michael Pradel, Manu Sridharan, Koushik Sen
vorgestellt auf ISSTA 2015, 14.-17.07.2015, Baltimore, USA