グーグル、Rust採用で「Android」のメモリーに関わる脆弱性が激減

Liam Tung (Special to ZDNET.com) 翻訳校正: 石橋啓一郎

2022-12-06 15:31

 メモリー関連の不具合を減らすために、「Android」の新しいコードにRustを使用するというGoogleの判断は、成果を挙げているようだ。この数年で、Androidのメモリー安全性関連の脆弱性は半分以下になった。この成果が達成された時期は、GoogleがCやC++からメモリー安全性の高いプログラミング言語であるRustに切り替えた時期と一致する。

Rustのロゴ

 Androidに発見されたセキュリティホールの中で、最も件数が多かったカテゴリーがメモリー安全性関連の脆弱性でなかったのは2022年が初めであり、Googleは1年前に、「Android Open Source Project(AOSP)」で新しいコードのデフォルト言語をRustに切り替えている。

 GoogleがAndroidに使用しているほかのメモリー安全性を備えた言語には、JavaやJava互換のKotlinがある。AOSPで主流の言語はまだCとC++だが、Android 13は、新しいコードの半分以上がメモリー安全性を備えた言語で書かれた最初のバージョンになった。GoogleがAOSPの言語にRustを採用したのは2021年4月のことで、現在では新規コードの約21%をRustが占めている。Linuxカーネルプロジェクトでも2022年に入り、C言語に次ぐ新たな公式言語として、Rustが採用された。

 2019年にリリースされたAndroid 10にはメモリー安全性関連の脆弱性が223件見つかっているが、Android 13では85件しかない。

 Android SecurityのソフトウェアエンジニアであるJeffrey Vander Stoep氏は、この期間に、Androidの全脆弱性に占めるメモリー安全性関連の脆弱性の割合は、76%から35%に減少したと述べている。また、メモリー安全性関連の脆弱性が減少したことで、リモートから悪用可能な重大なセキュリティホールの数も減った。

 Vander Stoep氏は、この変化は「英雄的な行動」によるものではなく、ただ開発者が仕事に最適なツールを使ったことによって達成されたものだと述べている。Androidチームは、Rustの利用をステップアップしていく予定ではあるものの、システムプログラミングからCやC++を排除するつもりはないという。

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

NEWSLETTERS

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

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

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