脅威の研究

セキュリティがAIにとってIoTを語る上で特殊な課題である理由

Dr. Rajarshi Gupta, 2018年2月12日

AIと機械学習がIoTデバイスとそのユーザーにセキュリティを提供する上で欠かせない点に関する考察

AI研究者がセキュリティ分野で直面している固有の課題について考えると、ハリー・ポッターシリーズの一節が思い出されます。第6巻の導入部で、魔法大臣が人間 (マグル)の首相のもとを訪れ、闇の魔法使いが実行しようとしている悪事について警告します。人間の首相は、当然のことながら恐れおののいて混乱してしまいます。首相は苛立ちのあまり、次のように哀願しました: 「お願いします。あなたは魔法使いでしょう魔法を使えるじゃありませんか!あなたなら必ず何とかできるはずです。たとえ、どんなに難しいことでも!」魔法大臣は次のように答えます。「問題は、向こうも魔法が使えることなんですよ

昨今、AIの活用に関して、熱狂的とも言えるコメントがあらゆる場所で散見されます。中には、AIがまるで魔法のようにさえ聞こえる記事もあることは否めません。驚異的な速さで進歩と続けるAIによって、映像、オーディオやNLPの分野で素晴らしい結果がもたらされていますが、これらの使用事例はいずれもアルゴリズムから意図的に逃れようとはしていません。AIが活躍するさまざまな分野の中で、本当に「敵」とよばれる相手が存在するのはセキュリティの分野のみです。私には、これこそがAIに関する特有の課題だと思えるのです。なぜなら、相手もAIを使うことができるからです! 悪者と正義の味方との間の、この軍拡競争はセキュリティ専門家を魅了し続けると言って過言ではありません。

実のところ、防御的なセキュリティに用いられるAIは、いくつかの固有の障害を克服する必要があります。まず第一に、優れたAIシステムはしばしば適切に分類された大規模なデータセットに依存しますが、この分野でこのようなデータセットを入手できるのはまれです。第二に、機械学習 (ML) システムはいくつかのケースの誤った認識 (専門用語では「誤検出」) を代償にして精度を高めることができます。ところが、ソフトウェアの世界では、善良なアプリケーションをいくつか誤ってブロックするアンチウイルスを許そうとせず、1%よりはるかに低い誤検出率を要求します。第三に、ニューラルネットワークなどの高度なMLアルゴリズムは、人間が読むことのできる言葉で説明するのが困難な場合が少なくないにもかかわらず、セキュリティ分野では結果が「説明可能」であることが求められます。そのようなわけで、軍拡競争は反対方向にゆがめられているように感じます。AIは防御的な目的よりも攻撃的な目的に適用しやすいことが少なくないからです。過去のみならず、現在および将来において、AIが効果的な用途を見出したセキュリティ分野を分析することに価値があるのは、以上の理由によります。

過去において – スパムおよびクレジットカード詐欺

過去10年間に、すべてのメールサーバーで効率的なスパム検出アルゴリズムが利用されるようになったため、現在ではスパムメールを受信することはほとんどなくなりました。これはAIの活用が成功した例のひとつです。金融業界では、クレジットカード会社が顧客のクレジットカードへの異常な課金をほんの一瞬で自動的に識別し不正行為を阻止します。これらのAIアルゴリズムは世界中で採用され、数百万人のクレジットカード利用者を日常的に保護しています。

現在 – マルウェアとバグの検出

AIの活用で多大な成功を収めた分野のひとつは、クラウドにおけるマルウェアの検出です。業界トップのセキュリティプロバイダーであるアバストなどはオンラインの世界で発生するマルウェアを常に99%以上検出する AI エンジンを採用しています。モバイル分野においては、Google PlayとApple AppStore がマルウェアを阻止するためにクラウド型の効果的なAIエンジンを利用しています。実のところ、一元化されたアプリストアモデルはモバイルユーザーをマルウェアから保護する上で大きな効果を上げています。ファジーテスト、すなわちソフトウェアにあるセキュリティバグの自動検出でもML技術が幅広く使用されています。日々行われるプログラミングの量が爆発的に増える中で、これらの自動化ツールは企業が新たなバグを検出するための唯一の現実的な手段です。また、新たなバグが検出されると、これらのツールは同じバグの他の例を迅速かつ信頼性の高い方法で特定できます。

希少 – オンデバイス挙動解析

ここ数年でデバイスの効率性が高まり、よりパワフルになってきました。それにより、デバイス上でMLパイプライン全体 (観察 – 特徴抽出 – 解析)を実施できる可能性も高まっています。デバイス自体に頭脳を配置することにより、この保護のレイヤーを確実に遍在させ、悪意のあるプログラムが実行するあらゆる動作を監視して、リアルタイムで評価することが可能になります。ここでの重要な課題はオーバーヘッドです。MLエンジンを常に作動させておく必要があるばかりでなく、十分な数のイベントを観察することからも大きなコストが発生します。解決策は、効率性は極めて高いのですが、浅い(機能が少ない)モデルを常に実行させておき、その一方で精度の高いモデルを必要に応じて起動することです。この高精度モデルはコンテキストを意識したものでもよく、その場合はデバイスの意思決定における直近のコンテキストをMLエンジンに組み込むことができます。これは興味深い結果をもたらす、将来有望な分野ですが、実施する必要のある作業が多数残されています。

IoTのためのネットワークセキュリティ

インターネット上で数百万台のIoTデバイスが相互に接続され、インターネット上からアクセスが可能となるIoTの世界は、セキュリティにとっては新しい分野となります。現存する多くのIoTデバイスには、ほとんど、もしくはまったくパッチが適用されていない状態の旧式のソフトウェアが搭載されています。さらに、これらのデバイスにはセキュリティソフトウェアをインストールできません。このため、これらの脆弱性を持ったデバイスをネットワークから観察するだけで保護することがセキュリティプロバイダーに課せられた課題となります。これは間違いなく困難な課題ですが、AIが最大限のメリットを提供する主な機会にもなり得ます。カギとなるのは、ほとんどのIoTデバイスは実行できる処理が非常に限られており、それ故にモデル化が容易であることです。このため、ネットワークに導入されている効率的な異常検出技術がこれらのデバイスの保護に役立ちます。

上述からお判りいただけるように、セキュリティはAIが取り組む特殊な課題と言えるでしょう。同じAIツールがハッカーにもオープンにされており、彼らも同時に利用できるため、AIにとって非常に複雑なチャレンジとなります。しかしながら、この分野では既にスパム対策やクレジットカード詐欺の阻止など、人類は過去かなりの成功を収めてきました。また、マルウェアの検出は非常に高度な技術であり、成功率も驚異的です (99% 超)。オンデバイスMLは希少ですが、大きな可能性を持つことが明らかになっています。そして最後に、ネットワークにおけるIoTのセキュリティが今後の大きなフロンティアであり、AIがその防御を担う最善の選択肢と言えるでしょう。