情報セキュリティにおいても「AI」や「人工知能」がひとつの注目キーワードとなっている。増え続ける攻撃トラフィック、複雑・多様化するマルウエアに対応するには、防御の自動化、脆弱性発見の自動化、対策ソフトウエアの自動生成といった手法の開発が進められている。これを実現するため、ディープラーニングの普及で急速に利用が広がる人工知能技術を応用しようというわけだ。

AIによるハッキングコンテストが開催されたわけ

 2016年夏、世界的なハッカーの祭典とも呼ばれる 「DEF CON」において「DARPA Cyber Grand Challenge」という、ちょっと変わったコンテストが開催された。コンテストはCTFと呼ばれる、サーバーへのハッキングや防御をチームで競うものだが、参加者はすべてコンピュータプログラムという異例の競技だった。

 プログラムを開発したのは人間だが、相手サーバーの脆弱性の発見、攻撃マルウエアの生成だけでなく、反対に自サーバーの防御もAI技術によって自動化されている。参加チームは自分たちが開発したプログラムを主催者が用意したコンピュータにインストールし、プログラムをスタートさせる。あとはひたすらプログラムがお互いのサーバーをスキャンし、脆弱性を探して侵入を試みるのを観察するだけで、人間は途中に手出しはできない。

 AIは、攻撃するだけでなく、自分のサーバーへの攻撃を検知し、脆弱性を修正して侵入を防ぐ。その間の攻防や得点は、別のコンピュータのモニター画面の順位リストで確認できる。

 主催したのは、米国の国防高等研究計画局(DARPA)である。コンテストの目的は、高度化、複雑化するサイバー攻撃に対処するため、AIによる防御の自動化技術を開発・発展させることだ。

 このようなコンテストが開催されたのは、秒単位で新しいマルウエアが発見されるという問題に対処するためだ。攻撃側も、マルウエアの自動生成を進めている。そこにAI技術が利用され始めていると言われており、従来のパターンファイルによる検出、駆除では追いつかなくなっている。

防御側は複数技術による多層防御と統合管理で対抗

 これに対して、ウイルスベンダーはクラウドを利用するなどして、パターンファイルの更新を時間単位分単位で行えるようにしている。パターンファイルによる対策も一定の効果はあり、ムダではないが、新種や亜種の生成スピードに追いついていない。

 パターンファイル以外の対策は、トラフィックパターン、通信ログ、ファイルの特徴、振る舞いなどによって検知するソリューションとなる。セキュリティベンダーは、ウイルス対策ソフトとファイアウォールから次世代ファイアウォール、IPS/IDS、サンドボックス、Webフィルタリングといった製品・ソリューションの強化で対応している。

 IPS/IDSは、ログの解析により不審な外部サーバーへの通信を調べたり、個人情報や重要ファイルをコピーしたりしていないかを調べたり(振る舞い検知)している。サンドボックスは、不審なファイルや添付ファイルを仮想環境で実行して、ハッキング活動を行わないかチェックする。加えて、重要なデータのアクセスや変更、決済処理には、第2パスワードやワンタイムパスワードによる追加認証を行う対策も行われる。

 セキュリティ対策は、どれかひとつやっておけばいいというものではない。複数の対策技術を入口、内部、出口などと多層的に組み合わせて実施するのが効果的とされる。ファイアウォールやWebフィルタリング、トラフィック監視などバラバラに動かしても効率が悪く、効果も下がる。一般的に、全体のセキュリティはいちばん弱い部分のレベルに引きずられると言われている。

 SIEMやUTMといったソリューションは、ウイルス対策ソフト、ファイアウォールといった個々の機能を統合的に管理、制御してくれる。SIEMは各機器やセキュリティソリューションのイベントログ、サーバーのログを基準に、静的ログ解析またはリアルタイム監視を統合的に行ってくれる。UTMはセキュリティ機器の統合管理を、ネットワーク上のアプライアンス製品として実現するものが多く、ファイアウォールやフィルタリングは同一ベンダー、パートナーベンダーの製品で構成されることが多い。

 多層防御やSIEM/UTMソリューションを利用する際の注意点は、各セキュリティコンポーネントやアプライアンスの連携した設定や統合的な制御をいかにするかということだ。これがうまくできないと、誤検知が多かったり、マルウエアや攻撃を見逃したりしてしまう。

攻めも守りもAIプログラム活用の傾向

 そこで、攻撃やマルウエアの識別に人工知能やAIの技術を使う動きが活発化している。これまでも、ログをベースとした振る舞い検知やスパム・攻撃メールの識別にAI技術(パターン認識など)を応用したソリューションも存在していたが、これをさらに推し進め、機械学習やディープラーニングといった技術が応用されつつある。

 例えば、トラフィックパターンによる攻撃の検知、ファイルのパターン認識によるマルウエアや危険度判定などに、AIを使ったソリューション、アプライアンスが出現している。機械学習を利用するメリットは、添付ファイルやログの中身をサーチする従来方式より、高速で高い精度が期待できることだ。また、ブラックリスト、ホワイトリスト、シグネチャーとのマッチング判定ではないので、亜種、未知のマルウエアなど事前情報がない攻撃にも対応できる。

 SIEMなどもリアルタイム解析をしているが、解析結果が出るまで処理を止めるわけではない。発生したイベントやファイルをその場で解析するが、判定結果が出る前にマルウエアの稼働が終わっている場合もある。機械学習やディープラーニングでは、学習済みのアルゴリズムにパケットやファイルを読ませるだけで、すぐに判定結果が出力される。そのため、マルウエアの実行を未然に防ぐこともできる。

 AI技術は情報セキュリティ分野にも応用は広がってくるものと予想される。今後は、冒頭のDARPA Cyber Grand Challengeのような対策ソフトの自動生成、DDoS攻撃対応の自動化(特定パケットのブロック、サーバー設定の調整など)、脆弱性診断の自動化・AI化へと進んでいくだろう。

 いずれ、サイバー空間でAIプログラムが見えない攻防を繰り広げる時代がくるのかもしれない。