2min

Tags in dit artikel

, , , ,

Microsoft wil onderzoeken of de programmeertaal Rust te gebruiken is als een alternatief voor onder meer C en C++. Op die manier hoopt het bedrijf de beveiliging van zijn apps en die van anderen te verbeteren.

De aankondiging werd gedaan door Gavin Thomas, Principal Security Engineering manager voor het Microsoft Security Response Center (MSRC), schrijft ZDNet. Thomas benadrukt dat MSRC niet alleen op kwetsbaarheden en incidenten reageert, maar ook een proactieve rol heeft.

Geheugen-veilige talen

“In een nieuwe blogserie lichten we Microsoft’s verkenning van veiligere programmeertalen uit, te beginnen met Rust.” Uiteindelijk wil het bedrijf een manier vinden om ontwikkelaars weg te halen bij het verouderende C en C++, en ze naar “geheugen-veilige talen” toebrengen.

Geheugen-veilige talen als Rust zijn van de grond af ontworpen met beschermingen tegen zogeheten memory corruption-kwetsbaarheden. Het gaat dan bijvoorbeeld om buffer overflows, geheugenlekken en race conditions.

C#, een programmeertaal die Microsoft ontwikkeld heeft, heeft ook een aantal verbeteringen op het gebied van geheugentoegang. De taal is echter minder geavanceerd dan Rust.

Veel geheugenfouten in Windows

Security-engineer Matt Miller van Microsoft zei eerder dit jaar dat ongeveer 70 procent van de jaarlijkse patches van het bedrijf in de afgelopen twaalf jaar oplossingen waren voor fouten die te maken hadden met het geheugen.

De reden achter dit hoge percentage is dat Windows en veel van de andere producten van Microsoft vooral in C en C++ geschreven zijn. Dat zijn twee geheugen-onveilige programmeertalen, waarmee ontwikkelaars veel controle hebben over geheugenadressen en waar code uitgevoerd kan worden.

Maakt een ontwikkelaar een fout, dan kan dat leiden tot een reeks problemen met het geheugen. Die problemen kunnen door aanvallers misbruikt worden, met grote gevolgen. Denk bijvoorbeeld aan remote code execution-fouten.

Microsoft zoekt al jaren

Het is overigens niet nieuw dat Microsoft zoekt naar een alternatief voor C en C++. Het bedrijf doet dit al jaren. De extensie Checked C werd in juni 2016 open source gemaakt, en brengt nieuwe functies voor de C-programmeertaal om een serie aan beveiligings-gerelateerde problemen aan te pakken.

Rust is op zijn beurt de “meest geliefde” programmeertaal van het moment, aldus een onderzoek van StackOverflow. Ontwikkelaars vinden de taal prettig vanwege de eenvoudigere syntax en het feit dat apps die met Rust gemaakt zijn, niet hetzelfde aantal fouten hebben. Daardoor kunnen ontwikkelaars zich richten op het uitbreiden van de apps, in plaats van het onderhouden ervan.