マイクロソフト、AIでソフトウェアのバグや脆弱性を探る「Microsoft Security Risk Detection」を発表
マイクロソフトは、AIを用いてソフトウェアのバグや脆弱性を発見するクラウドサービス「Microsoft Security Risk Detection」を今夏遅くにリリースすることを明らかにしました。
バグや脆弱性を発見する有名な手法のひとつに「Fuzzing Test」があります。Fuzzing Testとは、検査対象のソフトウェアに問題を引き起こしそうなデータ(これが「Fuzz」と呼ばれる)を大量に送り込み、その応答や挙動を監視する、というものです。
これまでFuzzing Testは一般にセキュリティテストの専門家などがテストデータを作成し、実行し、その挙動を監視する作業を行ってきました。また、すでに一部のリスク検出サービスではこうした作業にAIの利用も始まっているとのこと。
Microsoft Security Risk Detectionは、AIを使ってこうした作業を自動化し、クラウドによって大量に実行すると、マイクロソフトリサーチのDavid Molnar氏は説明しています。
We use AI to automate the same reasoning process that you or I would use to find a bug, and we scale it out with the power of the cloud
わたしたちは同様の推理手順をAIで自動化することで誰もがバグを見つけられるようにする。そしてクラウドのパワーでそれを大規模に実行するのだ。
基データを与えるとAIが自動的に多数のテストを実行
Microsoft Security Risk Detectionでは、まず利用者がクラウドへ検査対象となるソフトウェアの実行バイナリをアップロード。すると、テスト実行用の仮想マシン内にインストールされます。
さらにクラウドにはテストシナリオを実行する「テストドライバー」プログラムと、AIがテストデータを大量に生成する基となるサンプルデータもアップロードします。
準備が整うと、複数の手法を用いたFuzzing Testが実行されていきます。そしてバグや脆弱性などが発見されると、それがコンソールへリアルタイムに報告されていくのです。
報告とともに再現用のテストデータもダウンロードできるため、再現させたのちに対策をとることができます。バグを修正後、再テストで修正されたことを確認することも可能。
このツールにはマイクロソフトによる15年以上にわたるセキュリティ対策の経験が注入されているとのことです。
Windows版とLinux版があり、今夏遅くにリリース
Microsoft Security Risk DetectionはWindows版に加えLinux版もプレビューが開始されました。
正式なリリースは今年の夏遅く(late summer)の予定で、マイクロソフトの企業向け及びパートナー向けサービスである「Microsoft Services」経由で提供されます。
関連記事
あわせて読みたい
ソースコード管理ツール「GitLab 9.4」リリース。UI改善、Webアプリケーションモニタリング、TrelloやSlackとの連携改善など
≪前の記事
「Rust 1.19」リリース。union(共用体)をサポート