Sie sind hier:

Sicherheitslücken-Scanner - Wie entschärfen: Zeitbomben im Computercode

Datum:

Die Zahl der Sicherheitslücken wächst dramatisch. Neue Programmiermethoden begünstigen Schwachstellen in der Software. Mit einem Scanner können sie aber schneller erkannt werden.

Code auf einem Laptop
Tief im Software-Code versteckt: Sicherheitslücken (Symbolfoto)
Quelle: reuters

Wir kennen das im Alltag: Da hat sich mal wieder das Navi aufgehängt. Oder die neue Streaming-App auf dem Tablet ist abgestürzt. Programmierfehler erfahren wir tagtäglich - und damit auch die aus ihnen erwachsenen Sicherheitslücken.

Erpresser kapern PCs und Netzwerke

Solche Sicherheitslücken sind Einfallstore für Online-Kriminelle. Die nutzen sie und schleusen so zum Beispiel bösartige Verschlüsselungssoftware, Ransomware genannt, auf den PC oder ins Computernetzwerk.

Diese Schadsoftware verschlüsselt dann die Daten auf den Festplatten der betroffenen Computer. Anschließend verlangen die Online-Kriminellen ein Lösegeld für die durch Verschlüsselung gekidnappten Daten.

Programmierfehler und ihre Sicherheitslücken haben aber auch andere Konsequenzen. Sie führen zu Computerabstürzen. So funktionieren dann zum Beispiel Lastverteilungsrechner für die Stromversorgung nicht mehr korrekt. Oder Internet-Router werden gestört und die Netzverbindung klappt nicht.

Neue Entwicklungsmethoden als Unsicherheitsfaktor

"Dass die Zahl der Programmierfehler und Sicherheitslücken zunimmt, liegt auch an einer neuen Methode, Anwendungssoftware oder Apps sehr schnell zu coden, statt sie von Grund auf zu programmieren", meint Richard Werner vom Sicherheitsunternehmen Trend Micro.

Anwendungssoftware wird immer öfter aus bereits bestehenden Modulen zusammengebaut. Das macht die App-Entwicklung schneller und die Software preiswerter. "Sicherheitsfragen werden dabei sträflich vernachlässigt", warnt Security-Experte Werner.

In der Konsequenz stürzen Computersysteme dann eben mal öfter ab. Das sorgt für teilweise erhebliche Schäden. Deshalb haben Forscher am Fraunhofer-Institut für Sichere Informationstechnologie in Darmstadt eine Software entwickelt, die solche schnell zusammengebauten Apps auf Programmierfehler und Sicherheitslücken abscannt.

Wichtiger Unterschied zwischen Binärcode und Quelltext

"Das ist ein Schwachstellen-Scanner, der den Maschinencode der Software gewissermaßen zerlegt und anhand der Code-Muster, die darin enthalten sind, nach typischen Programmierfehlern sucht", beschreibt Dr. Steven Arzt vom Fraunhofer-Institut für Sichere Informationstechnologie in Darmstadt die Entwicklung.

Gescannt wird die für einen Computer vorinstallierte lauffähige Software. Fachleute nennen diese Software Binärcode. Der besteht nur aus Bits, aus Nullen und Einsen, und unterscheidet sich vom Quelltext des Programms, den der Entwickler in einer Programmiersprache geschrieben hat.

Der Quelltext ist der für Menschen lesbare Text mit Befehlen oder Anweisungen eines Computerprogramms, der vom Entwickler in einer gängigen Programmiersprache wie Python geschrieben wurde. Dieser Quelltext muss dann für den Computer übersetzt werden.

So entsteht ausführbarer Binärcode. Beim gängigen PC-Betriebssystem Windows wird solcher Binärcode zum Beispiel in Dateien mit der Namenserweiterung ".exe" gespeichert. Ruft der Anwender eine solche Datei - etwa durch einen Doppelklick mit der Maus - auf, wird das Programm ausgeführt.

Auffällige Bit-Muster verraten Programmierfehler

"Genau in diesem Binärcode suchen wir nach Mustern für Sicherheitslücken", erklärt Steven Arzt und macht das an einem Beispiel klar: "So prüft der Scanner, ob Daten, die in die Datenbank eingetragen werden sollen, beispielsweise Kommandos enthalten, die die Datenbank verleiten sollen, bestimmte Aktionen auszuführen, die ein Angreifer gerade haben möchte."

Der Scanner testet zum Beispiel auch, ob ein veralteter Verschlüsselungsalgorithmus eingesetzt wurde, oder ob die Verschlüsselung auf dem neuesten Stand ist. "Dabei prüft der Scanner auch, welche Daten hier verwendet werden", berichtet Steven Arzt.

Denn es macht einen wichtigen Unterschied, ob Kreditkartendaten unsicher verschlüsselt übertragen werden oder ein öffentlich zugänglicher Text aus einem Blog. Der Sicherheitslücken-Scanner sieht hier unterschiedliche Risikostufen und Eskalationsarten vor.

Automatische Tests könnten Zeit sparen

Die Softwaretester können so mehr Programme in kürzerer Zeit testen. Sicherheitslücken zu finden wird so weniger aufwendig und kostet weniger Geld. "Das kann für mehr Softwaresicherheit sorgen", meint Sicherheitsexperte Richard Werner von Trend Micro.

Er würde es allerdings lieber sehen, wenn Software von vornherein ganz grundständig mit allen notwendigen Sicherheitsvorgaben entwickelt würde, statt schnell aus verschiedenen Modulen zusammengebaut zu werden.

Gemerkt auf Mein ZDF! Merken beendet Bewertet! Bewertung entfernt Abonniert auf Mein ZDF! Abo beendet Embed-Code kopieren HTML-Code zum Einbetten des Videos in der Zwischenablage gespeichert.
Bitte beachten Sie die Nutzungsbedingungen des ZDF.

Um zu verstehen, wie unsere Webseite genutzt wird und um Ihnen ein interessenbezogenes Angebot präsentieren zu können, nutzen wir Cookies und andere Techniken. Hier können Sie mehr erfahren und hier widersprechen.

Um Sendungen mit einer Altersbeschränkung zu jeder Tageszeit anzuschauen, können Sie jetzt eine Altersprüfung durchführen. Dafür benötigen Sie Ihr Ausweisdokument.

Sie wechseln in den Kinderbereich und bewegen sich mit Ihrem Kinderprofil weiter.