Blog IT, Blog Marketing

Microsoft szuka języka programowania, który zastąpi C i C++. Mocnym kandydatem Rust

Microsoft szuka języka programowania, który zastąpi C i C++. Mocnym kandydatem Rust

Maciej Olanicki , 17.07.2019 r.

Interesujące wieści płyną do nas Microsoft Security Response Center. Mimo że dział ten kojarzony jest przede wszystkim z łataniem oprogramowania Microsoftu, to okazuje się, że wkrótce może mieć duży wpływ także na proces jego produkcji. W Microsofcie trwają bowiem poszukiwania sposobów na wyeliminowanie podatności związanych z błędami w obsłudze pamięci. Jednym z nich może być zastąpienie C i C++ nowymi językami programowania, na przykład... rozwijanym pod okiem Mozilli Rustem.

W najnowszym wpisie opublikowanym na łamach bloga Microsoft Security Response Center Gavin Thomas, szef działu inżynierii bezpieczeństwa, przypomina statystyki, które ujrzały światło dzienne już w styczniu tego roku. Podatności wynikająće z błędów w obsłudze pamięci stanowią aż 70% wszystkich podatności oprogramowania Microsoftu poważnych na tyle, że otrzymały własną sygnaturę CVE. Wycieki pamięci, przepełnienia bufora, hazard czy błędy w alokacji – oto błędy, które spędzają sen z powiek ludziom odpowiedzialnym za bezpieczeństwo oprogramowania produkowanego przez Microsoft.

microsoft-security-response-center Źródło: Microsoft Security Response Center

Zdecydowana większość błędów, które powodują podatności związane z obsługą pamięci, znajdować ma się w niskopoziomowym kodzie napisanym w C i C++. Pracownicy MSRC doszli zatem do wniosku, że do znacznego zmniejszenia ryzyka nowych podatności w kodzie produkowanym przez Microsoft będzie zastąpienie C/C++ przez nowsze języki programowania. Z jednej strony muszą one sprawdzić się w niskopoziomowym kodzie, a z drugiej oferować funkcje zabezpieczające. Według Gavina Thomasa obiema tymi cechami wykazuje się Rust:

C++ ma swoje zalety, które sprawiają, że jest atrakcyjny, a w niektórych przypadkach niezbędny: jest niezwykle szybki, zużywa niewiele pamięci operacyjnej i masowej, jest dojrzały, jego wykonywanie jest przewidywalne, jego adaptowalność do platformy jest niemal niezrównana i można tego doświadczyć bez konieczności instalowania dodatkowych komponentów. Gdyby tylko programiści mieli możliwość zagwarantowania bezpieczeństwa pamięci, jak w .NET/C# przy jednoczesnym zachowaniu zalet C++. Być może jest to możliwe: jednym z najbardziej obiecujących języków programowania systemów, które spełniają te wymagania, jest język programowania Rust, pierwotnie opracowany przez Mozillę.

Czy taka deklaracja z ust człowieka, który w zakresie bezpieczeństwa produktów i usług Microsoftu ma naprawdę wiele do powiedzenia oznacza, że od jutra Windows zacznie być przepisywany od zera na Rusta? Tego oczywiście nie należy oczekiwać, niemniej wpis Thomasa sygnalizuje nam ważną kwestię: Microsoft „proaktywnie” poszukuje następców C i C++. A to faktycznie może przełożyć się na ograniczenie szkód powodowanych przez błędy pamięci i wzrost poziomu bezpieczeństwa we wszystkich programach rozwijanych przez korporację, na czele rzecz jasna z Windowsem.

Zobacz też: Microsoft potwierdza duże zmiany w Universal Windows Platform i Microsoft Store

Najnowsze oferty pracy:

Polecane wpisy na blogu IT:

Szukasz pracownika IT?

Dostarczymy Ci najlepszych specjalistów z branży IT. Wyślij zapytanie

Wyrażam zgodę TeamQuest Sp. z o.o. na przetwarzanie moich danych osobowych w celu marketingu produktów i usług własnych TeamQuest, w tym na kontaktowanie się ze mną w formie połączenia telefonicznego lub środkami elektronicznymi.
Administratorem podanych przez Ciebie danych osobowych jest TeamQuest Sp. z o.o., z siedzibą w Warszawie (00-814), ul. Miedziana 3a/21, zwana dalej „Administratorem".
Jeśli masz jakiekolwiek pytania odnośnie przetwarzania przez nas Twoich danych, skontaktuj się z naszym Inspektorem Ochrony Danych (IOD). Do Twojej dyspozycji jest pod adresem e-mail: office@teamquest.pl.
W jakim celu i na jakiej podstawie będziemy wykorzystywać Twoje dane? Dowiedz się więcej