編集部からのお知らせ
解説集:台頭するロボット市場のいま
解説集:データ活用で考えるデータの選び方

マイクロソフト、セキュアなコード実現に向けプログラミング言語「Rust」評価

Catalin Cimpanu (Special to ZDNet.com) 翻訳校正: 村上雅章 野崎裕子

2019-07-24 07:30

 プログラミング言語Rustの人気が高まってきているなか、Microsoftはその可能性を見極めようとしている。


 Microsoftは、RustがCやC++などの代替となり、同社や他社のアプリのセキュリティを強化するうえでの方策になるかどうかを調査しようと計画している。

 この情報は、Microsoft Security Response Center(MSRC)の主席セキュリティエンジニアリングマネージャーであるGavin Thomas氏が米国時間7月16日に同組織のブログ上で明らかにしたものだ。

 Thomas氏は「MSRCがインシデントや脆弱性への対応組織だと考えている人もいるだろう」と述べたうえで、「われわれは対応組織でもあるが、積極的な役割も担っている。このため、ブログ上の新シリーズではより安全なシステムプログラミング言語に向けたMicrosoftの探求を取り扱っていきたい。手始めはRustだ」と続けた。

 その目標は、誕生から時間が経っているCやC++といったプログラミング言語から「メモリーセーフな言語」と呼ばれるものに移行していくための道を開発者らに示すことにある。

 Rustのようなメモリーセーフな言語は、バッファーオーバーフローや競合状態、メモリーリーク、解放後の使用、メモリーポインター関連のバグといった、メモリー破壊の脆弱性からの保護を目的としてゼロから設計されたものだ。

 Microsoftが開発したC#というプログラミング言語も、メモリーアクセスに関してある程度の改善がなされているが、Rustほど高度なレベルには達していない。

Microsoftがリリースしたパッチのうちの70%はメモリー関連の問題修正

 MicrosoftのセキュリティエンジニアであるMatt Miller氏は、2月にイスラエルで開催したセキュリティカンファレンス「BlueHat IL」で、過去12年にわたって同社が毎年公開してきたパッチのうち、およそ70%はメモリーの安全性に関するものだったと報告している。


提供:Matt Miller氏

 その割合の高さは、「Windows」をはじめとするMicrosoftの製品群がCやC++で記述されているためだ。こういったプログラミング言語によって、開発者はメモリーアドレスや実行場所をきめ細かく制御できるようになるものの、言語自体は「メモリーセーフではない」のだ。

 メモリーまわりの実行コードで開発者が1カ所でもミスをおかすと、リモート環境からのコード実行や特権の昇格を許してしまう脆弱性といった破壊的な結果を引き起こすために攻撃者が悪用できる、メモリーの安全を脅かすおびただしい数のエラーが生み出されることになる。

 Rustのようなメモリーセーフな言語の利用を検討することで、より安全なMicrosoftアプリを開発するための新たな道が開かれるだろう。

ZDNet Japan 記事を毎朝メールでまとめ読み(登録無料)

Special PR

特集

CIO

セキュリティ

スペシャル

ホワイトペーパー

新着

ランキング

  1. クラウドコンピューティング

    AI導入に立ちはだかる「データ」「複雑さ」「コスト」「人材」の壁をどう乗り切ればいいのか?

  2. クラウドコンピューティング

    【IDC調査】2026年には75%のアプリがAIを実装!導入で遅れた企業はどう“逆転”すべきか?

  3. 運用管理

    経産省調査で明らかに:未だにレガシーシステムを抱える企業が8割!オープン化でよくある課題とは?

  4. 運用管理

    AWS東京リージョンの大規模障害に学ぶ、パブリッククラウド上のシステムの迅速な復旧方法

  5. windows-server

    【ユースケース】ソフトウェア開発にDell EMCインフラ+コンテナを使うメリット

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNet Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]