Abo
  • Services:

Programmiersprache: Microsoft forscht an sicherer C-Erweiterung

Einige Änderungen an Syntax, Compiler und Laufzeitumgebung sollen C-Programme vor typischen Fehlern der Programmiersprache schützen. Microsoft erforscht diese Technik gemeinsam mit Universitäten in einem Open-Source-Projekt.

Artikel veröffentlicht am ,
Die Forschungsabteilung von Microsoft sucht nach Wegen, C abzusichern.
Die Forschungsabteilung von Microsoft sucht nach Wegen, C abzusichern. (Bild: flickr.com, janitors/CC-BY 2.0)

Wegen einiger Besonderheiten der Programmiersprache haben manche in C geschriebene Programme immer wieder typische Probleme, die schnell zu Sicherheitslücken werden können. Dazu gehören der fehlerhafte Umgang mit Zeigern und der Zugriff auf Daten außerhalb ihrer eigentlichen Grenzen. Microsoft erforscht deshalb eine Erweiterung der Sprache C, dank der diese Fehler vermieden werden sollen.

Stellenmarkt
  1. Diamant Software GmbH & Co. KG, Bielefeld
  2. HUK-COBURG Versicherungsgruppe, Coburg

In einer vorläufigen Spezifikation (PDF), die das Projekt mit dem Namen Checked C erstellt, werden dazu einige Erweiterungen zu der Sprache C eingeführt, die es ermöglichen sollen, Bounds Checking für Zeiger und Arrays durchzuführen. Das heißt, es wird überprüft, ob sich die Zeiger und Operationen auf dem Array innerhalb festgelegter Grenzen bewegen. Anders als etwa bei Java geschieht dies nicht automatisch, sondern muss explizit deklariert werden.

Der Programmcode wird dabei meist statisch geprüft, das heißt, bereits während des Kompilierens. Das Team von Microsoft ist sich über die damit verbundenen theoretischen Grenzen im Klaren und erklärt, die aufgestellten Regeln umfassten bewusst nur einen stark limitierten Bereich und seien damit inkomplett. Ebenso schützt Checked C nicht vor bestimmten weiteren Fehlerkategorien von C-Programmen, wie dem Freigeben von Speicher, der noch in Benutzung ist, oder Data Races.

Erweiterung zu Clang und LLVM

Beim Erstellen der Regeln ist das Team eigenen Angaben zufolge schrittweise vorgegangen und hat einen Teil des Quellcodes von OpenSSL den neuen Regeln entsprechend umgeschrieben. Dafür seien etwa 11.000 Zeilen Code verteilt auf über 160 Dateien angepasst worden. Die praktische Umsetzung der Spezifikation von Checked C erfolgt durch Anpassungen an die Compiler-Werkzeugsammlung LLVM sowie dessen C-Frontend Clang.

Sowohl die Spezifikation als auch die Änderungen an LLVM und Clang finden sich auf Github. Neben Microsoft sind an den Arbeiten Forscher der University of Maryland beteiligt, ebenso haben Forscher von Samsung und der Cornell-University an dem Projekt mitgewirkt.



Anzeige
Top-Angebote
  1. (-81%) 5,55€
  2. 299,00€ inkl. Versand
  3. 433,00€ (Bestpreis!)
  4. 481,00€ (Bestpreis!)

gadthrawn 16. Jun 2016

1. Du unterschätzt das Übertragen von Altlaste... Altsystemen in andere Umgebungen. 2...


Folgen Sie uns
       


Frösteln in Frostpunk - Golem.de Live

Frostpunk ist ein düsteres Aufbauspiel, aber mit der Unterstützung unserer Community haben wir frostige Zeiten im Livestream überwunden.

Frösteln in Frostpunk - Golem.de Live Video aufrufen
EU-Urheberrechtsreform: Wie die Affen auf der Schreibmaschine
EU-Urheberrechtsreform
Wie die Affen auf der Schreibmaschine

Nahezu wöchentlich liegen inzwischen neue Vorschläge zum europäischen Leistungsschutzrecht und zu Uploadfiltern auf dem Tisch. Sie sind dilettantische Versuche, schlechte Konzepte irgendwie in Gesetzesform zu gießen.
Ein IMHO von Friedhelm Greis

  1. Leistungsschutzrecht VG Media darf Google weiterhin bevorzugen
  2. EU-Verhandlungen Regierung fordert deutsche Version des Leistungsschutzrechts
  3. Fake News EU-Kommission fordert Verhaltenskodex für Online-Plattformen

Oneplus 6 im Test: Neues Design, gleich starkes Preis-Leistungs-Verhältnis
Oneplus 6 im Test
Neues Design, gleich starkes Preis-Leistungs-Verhältnis

Das Oneplus 6 hat einen schnellen Prozessor, eine Dualkamera und ein großes Display - mit einer Einbuchtung am oberen Rand. Der Preis liegt wieder unter dem der meisten Konkurrenzgeräte. Das macht das Smartphone trotz fehlender Innovationen zu einem der aktuell interessantesten am Markt.
Ein Test von Tobias Költzsch

  1. Android-Smartphone Neues Oneplus 6 kostet ab 520 Euro
  2. Oneplus 6 Oneplus verkauft sein neues Smartphone auch direkt in Berlin

Kryptographie: Der Debian-Bug im OpenSSL-Zufallszahlengenerator
Kryptographie
Der Debian-Bug im OpenSSL-Zufallszahlengenerator

Einer der schwerwiegendsten Fehler in der Geschichte der Kryptographie beschäftigte vor zehn Jahren Nutzer der Debian-Distribution. Wenn man danach sucht, findet man noch heute vereinzelt verwundbare Schlüssel.
Von Hanno Böck


      •  /