GoogleとMicrosoftはRust言語のセキュリティ強化に逃げ込む

GoogleとMicrosoft、Rust言語のセキュリティ強化に逃げ込む

Fortanix が 2016 年に設立されたとき、同社は次の決断を下しました。セキュリティの強みとパフォーマンスの恩恵を受けるために、XNUMX 年前に開発された Rust のプログラミング言語にコミットするということです。

XNUMX 年後、Fortanix の Rust への取り組みは成功したことが証明されました。 同社は、Intel Software Guard Extensions (SGX) のサポートを構築しました。これにより、ユーザー データに安全なエンクレーブを使用できるようになり、一部のクラスの脆弱性、特にメモリの安全性の問題を回避する Rust コンパイラの機能の恩恵を受けることができる、と副社長の Jethro Beekman 氏は述べています。テクノロジーと CISO の データセキュリティ会社.

「その可能性を本当に理解していた初期導入者も何人かいたので、徹底的な調査を行って実際の経験を積んだ後、私たちは基本的に全面的に取り組むことにしました」と彼は言います。 「ツールとコンパイラは間違いを避けるのに非常に役立ちます。」

1.0 のリリースから XNUMX 年が経過した現在も、Rust 言語と開発プラットフォームは開発者や企業の間で人気を集め続けています。 安全なコードに焦点を当てた。 Rust ははるかに低いですが、 C または C++ よりも TIOBE 評価が高い、この言語は年々大幅にユーザーが増加しています。 Rust には熱心な支持者もいます。過去 12 年間にこのテクノロジーを使用したプログラマーはわずか 85% でしたが、開発者のほぼ XNUMX% がこの言語を使い続けたいと考えており、Rust は「最も賞賛される」プログラミング言語となっているとのことです。 Stack Overflow「2023 開発者調査」。

Rust プログラミング言語の成長を示すグラフ

Rust の採用は急激に増加し続けています。 ソース: Lib.rs (https://lib.rs/stats)

たとえば、さまざまな種類のバグを排除する取り組みの一環として、Microsoft は Rust を使用してカーネルの一部を書き換えていると、Microsoft のエンタープライズおよび OS セキュリティ担当バイスプレジデントである David Weston 氏は 5 月の BlueHat Israel で述べました。 同社は、フォント解析をメモリ安全機能に変えるために Rust で DWriteCore を作成し、現在、Rust でグラフィックス ドライバー インターフェイス (GDI) の一部を記述する実験に取り組んでいます。 同社は、コードの初期バージョンでパフォーマンスが 15% ~ XNUMX% 向上したことを確認しました。

「私たちは、Windows での Rust に関しては、まだクロールの段階にあると言えます」と Weston 氏は次のように述べています。 彼のプレゼンテーションのビデオ録画。 「私たちはツールチェーンを実験中です。 私たちはコード生成を検討しており、これが Rust の学習にかかるコストに見合う価値があるかどうかを判断しようとしています。」

ただし、Rust Foundation のスポンサーである Microsoft は、この言語に積極的に取り組んでいます。 「実際には、カーネル内の Rust を使用して Windows を起動することになります」と Weston 氏は言います。

Google、1Password、その他の機能を搭載

Google も Rust の主要なサポーターです。 同社は、Android におけるメモリ安全性の脆弱性の割合が減少したのは、C および C++ から Rust、Kotlin (関数型プログラミング言語)、および Java への移行によるものであると考えています。 2022 年には、バッファ オーバーランなどのメモリ安全性の脆弱性が発生します。 Android のすべての脆弱性の半分未満を占めています.

Google の Android プログラミング言語エンジニアリング担当ディレクターであり、Rust Foundation 理事会の議長である Lars Bergstrom 氏は、「新しい C [または] C++ コードの作成を検討している場合は、どこでも Rust を使用することを一般的にお勧めします」と述べています。 「したがって、基盤となるシステムとそのリソース (メモリなど) を厳密に制御する必要がある場合には、Rust が良い選択となることがよくあります。」

国家安全保障局 もお勧めします 開発者は、セキュリティ クリティカルなコードに対して C および C++ の代替を求めています。これらの言語は 開発者が間違いを犯さないことに頼りすぎる.

Fortanix は Rust を広範囲に使用することに取り組んでいますが、他の企業はコードベースに Rust 言語を導入する方法についてより戦術的です。 ユーザーのパスワード ストアを保護するために強固なセキュリティを必要とするパスワードおよび ID 管理会社 1Password は、コア データ セキュリティ コンポーネントの開発プラットフォームとして Rust を採用し、さまざまなオペレーティング システムのフロントエンド インターフェイスに他の言語を使用しています。 同社がブログ投稿で述べた.

Microsoftも同様の状況にあり、コードベースの大部分をRustで書き直すつもりはない、とウェストン氏は述べた。

「言いたくないのですが、Rust ファンがいることは知っていますが、Rust で Windows を書き直すことは、おそらくすぐには実現しないでしょう」と同氏は BlueHat Israel カンファレンスの出席者に語った。 「私たちはRustを愛していますが、より多くのネイティブコードを保護することも含めた戦略が必要です。」

学習曲線はそれほど急ではない

Rust Foundation は、別の新しいプラットフォームである WebAssembly で Web およびクラウド アプリケーションを作成するだけでなく、特に自動車、産業、航空宇宙アプリケーションなどの組み込みおよび接続デバイス企業によって多くの採用が見られている、とエグゼクティブ ディレクターの Rebecca Rambul 氏は述べています。 Rust財団のCEO。

「この種の組織は、大手テクノロジー組織以外で最初にRustの可能性に気づいた組織のXNUMXつです。 セキュリティのためだけではなく、スピードとパフォーマンスのため、" 彼女が言います。 「メモリの安全性によりそのレベルのセキュリティが得られますが、パフォーマンスの観点からは何も失われません。」

Fortanix が始まったとき、すべてのプログラマーは Rust を学ぶ必要がありました。 この言語は習得が難しいというのが一般通念ですが、Rust を学習しているプログラマーの XNUMX 分の XNUMX 以上が、XNUMX か月以内にプロジェクトに貢献できる自信があると答えています。 Google による社内プログラマーへの調査.

新人プログラマはすぐに Rust を習得したが、コンパイラは依然として多くの人が望んでいるよりも遅いことも調査で判明した。

この言語には多少の調整が必要であると、セキュア コーディング トレーニング会社 Security Journey のシニア セキュリティ エンジニア Michael Erquitt 氏は認めています。 さらに、プログラマーは、どの機能やアプリケーションがその言語から恩恵を受けるかを独自の感覚で養わなければなりません。

「プログラミング言語とツールを選択する際には、常にトレードオフがつきものです。」 アーキット と言う。 「最新のプログラミング言語としての Rust は、幅広いプロジェクトに使用できますが、最終的には、プロジェクトの機能/顧客の要件を最もよく満たすものを選択することになります。」

タイムスタンプ:

より多くの 暗い読書