パソコンのウイルス対策は、効果が上がることもあれば、そうでないこともある。全体としては役立ってはいるが、進化する脅威に追いつくための努力を絶えず求められているのだ。また、システムの“深い”ところまでアクセスするため、さらに悪質な攻撃を可能にしてしまうこともある。

そしていま、脅威の高まりによってAndroid向けのウイルス対策アプリの人気が高まっている。だが、ここでも「昔と同じ過ち」が繰り返されているようなのだ。

現在の多くの問題は、Android向けウイルス対策アプリパソコン用と比べて未熟であることに起因している。ジョージア工科大学の研究チームが58種類の主なアプリを分析したところ、その多くが簡単にセキュリティを破られてしまった。マルウェアを検出する方法に多様性がなく、細かい調整ができないからだ。

「攻撃者の視点」から対策アプリをテスト

研究チームは攻撃者の観点に立って分析を行うために、「AVPass」と呼ばれるツールを開発した。ウイルス対策ソフトウェアによる検出を回避しながら、マルウェアをシステムに侵入させられるようにするものだ。このAVPassを使ったテストで攻撃を常に阻止できたのは、韓国のアンラボ（AhnLab）と、ホワイトアーマー（WhiteArmor）の2社のツールだけだった。つまり58分の2、比率にして約3.5パーセントにすぎなかったのである。

ジョージア工科大学の博士課程に在籍し、今回の研究に参加したマックス・ウォロツキーは、「企業によっては、モバイルプラットフォーム向けのウイルス対策製品を手がけ始めたばかりのところもあります。Android向けウイルス対策製品の多くが、まだ初期ヴァージョンにしぎないかもしれないのです」と言う。「消費者は単なるウイルス対策以上のことにも目を向けるべきだと、私たちは声を大にして警告したい。用心深くなる必要があります」

最新のウイルス対策製品は、マルウェアの進化に追いつくために機械学習を利用している。そこで研究チームはAVPassを開発するにあたり、学術研究やその他のオープンソースプロジェクトの場合と同じように、まずは防御アルゴリズムを突破する手法の開発に着手した。そして、その開発した手法を利用して、プログラムを動かしているコードの内容を見ることができない市販製品への攻撃を実行した。

研究チームは7月26日（米国時間）、ラスヴェガスで開催された「Black Hat USA 2017」カンファレンスで、AVPassのプレゼンテーションとリリースを行った。

解析にはオープンソースのソフトを利用

58種類のウイルス対策製品をテストし、それぞれどの「迂回路」が見破られるかを知るため、研究チームは「VirusTotal」と呼ばれるサーヴィスを利用した。VirusTotalは、悪質なリンクやサンプルを特定できるようにするために、さまざまなツールが搭載されたシステムを使い、リンクやマルウェアサンプルをスキャンしてツールごとの結果を出力する。

研究チームは、さまざまなマルウェアコンポーネントについてVirusTotalに調べさせ、どのツールがどのサンプルを検出するのかを確認した。その結果、各ウイルス対策製品がどのようなタイプの検出機能を備えているのかを推測できるようになった。

研究チームはアカデミックライセンスでVirusTotalを利用したため、送信できる検出結果の数はマルウェアサンプル1つあたり300未満に制限されていた。だが、この程度の数でも、各サーヴィスのマルウェア検出方法に関するデータを得るには十分だったという。

また研究チームは調査を行うにあたり、「イミテーションモード」と呼ばれる機能をAVPassに追加した。この機能は、ウイルス対策ツールでスキャンするために送信したテストサンプルの一部が、識別されてブラックリストに登録されることがないように保護するものだ。

「イミテーションモードは、マルウェアを難読化するためのものです」と、この研究に参加した別の研究者のチョン・チャンイルは言う。「われわれは、特定のマルウェア機能を取り出しては、空のアプリに注入しました。どの機能、あるいはどの組み合わせがマルウェアの検出にとって重要なのかをテストするためです」

AVPassはオープンソースのプロトタイプで、ジョージア工科大学が実施している大規模な研究プロジェクトの一環として開発されたものだ。この研究プロジェクトの目的は、ウイルス対策で使われているような機械学習アルゴリズムについて研究し、そのアルゴリズムをどの程度不正利用したり悪用したりできるのかを調べることにある。だがこの研究は、変化を続けるモバイルセキュリティの状況を把握するのにも役立っている。

まだまだ市場は未成熟

現状に明るい兆しがあるとすれば、Android向けのウイルス対策ツールは、現時点ではパソコン用より簡単に開発できることだ。「Androidのマルウェアは、パソコンを狙うどのマルウェアと比べても、たいしたものではありません」と言うのは、モントリオールにあるコンコルディア大学のセキュリティ研究者で、ウイルス対策ツールの脆弱性を研究するムハンマド・マナンだ。「ほとんどがちょっとしたいたずらを働くアプリで、検出ははるかに簡単です」

さらに、Android向けウイルス対策アプリは、システム内で多くの動作を実行できるが、PC向けウイルス対策ソフトウェアのような特別な権限を与えられていない、とマナンは指摘する。権限が与えられなければ、ウイルス対策アプリ自体がセキュリティの脆弱性として悪用される懸念は小さくなる。

「モバイル向けのウイルス対策アプリは、特権を与えられたアプリのように動作します。けれども実際には、今でも一介のアプリに過ぎず、オペレーティングシステムやカーネルの一部にはなっていません」とマナンは語った。

しかし現時点では、潜在的な優位さより市場の未熟さの方が目立っているようだ。Android向けウイルス対策アプリの開発者は、複数の悪質な動作を一度に調査できるような製品を開発する必要がある、とAVPassのチームは指摘する。10人の警備員の目を通すより、能力の高い1人の警備員の目を通す方がはるかに簡単というわけだ。さらにAVPassのチームは、VirusTotalのようなツールが各サーヴィスに関する情報を詳しく提供してくれなければ、研究にかかる時間ははるかに長くなっていただろうと指摘する。

「この研究結果は、それほど驚くべきものではありません」と、ウォロツキーは述べる。「この研究を始めるにあたり、モバイル分野が大幅に遅れていることはセキュリティ研究者としてわかっていました。われわれがAVPassで期待しているのは、何がうまくいって何がうまくいかないのかを確認する手段を、ウイルス対策アプリ開発者に対して提供することです。彼らがそのような手段を持っているかどうかわかりませんから」