セキュリティ対策に数学の力を――機械学習は先行防御の夢を見るか?:「いたちごっこ」からの脱却なるか
どうしても攻撃者の後手に回りがちなセキュリティ対策。ここに機械学習を活用することで、先手を打った対策を実現できないか――そんな取り組みが始まろうとしている。
膨大なログの中から不審な通信を見つけ出したり、マルウェアの挙動を解析するならば専門家の長年の経験やカンに勝るものはない、という印象が強い。しかし、次々と亜種のマルウェアを生み出してくる攻撃者の「物量作戦」の前には、いくら優秀な専門家でも後手に回りがちだ。ならば「機械学習」を活用して異常を速やかに検出し、次の亜種を予想して、先回りして攻撃を防げないだろうか――そんなアプローチが始まろうとしている。
機械学習は、コンピュータの黎明(れいめい)期から研究が進んできた分野だ。コンピュータプログラムにデータを与え、その中に潜んでいる規則性を機械学習のアルゴリズムを使って抽出し、モデル化することで、あたかも人間と同じように判断を下せるようにする。かつては、膨大な計算量が必要なことがネックとなっていたが、近年のコンピューティング能力の向上に伴い、画像処理やユーザーの行動分析、それに基づくレコメンデーション、あるいは最近はやりの「ビッグデータ」など、適用領域は大きく広がっている。
この機械学習をセキュリティ対策に応用しようと考えているのが「機械学習+セキュリティ勉強会」だ。この活動を進めている静岡理工科大学 総合情報学部 コンピュータシステム学科講師の松田健氏は、「防御には数学的な考え方も必要になる。過去のデータの中から特徴を抽出して、そこから新しい攻撃を予測し、判別できるようにしたい」と述べる。
脱「いたちごっこ」のセキュリティ対策
こうしたアプローチが生まれた背景には、現在のセキュリティ対策が抱える恒常的な課題がある。常に攻撃者に先手を打たれ、対策を打っても打ってもいたちごっこに陥ってしまうという点だ。「ある攻撃を踏まえ、次の攻撃を予測し検出できないだろうか。どのように攻撃手法を変えてくるかまで含めて予測できないだろうか」(松田氏)――ここに機械学習が活躍できる余地があるという。
例えば、ある攻撃が発生したとする。防御側がそのサンプルを基に検出の仕組みを作っても、攻撃者はすぐにそれを迂回する別の手を考えてくる。特に、シグネチャなど静的な特徴に基づくアプローチでは、コードをちょっと変えただけでも検出が困難になり、対策が追い付かない。加えて、攻撃の数自体も増加しているため「いろいろな情報を見なければ攻撃の判別が困難であり、今では人間の手に余る状況だ」(松田氏)。
「ウイルスかそうでないかを判定する際、現在のように亜種が次々と出てくる状況ではパターンマッチングではどうしても漏れが生じてしまう」と、同じく勉強会に関わるサイボウズ・ラボの竹迫良範氏は指摘する。この限界を踏まえて、ヒューリスティック検出やビヘイビア検出といった「振る舞い」そのものを解析する手法が生まれているが、「うまく特徴を抽出することで、ここに機械学習を活用できないかと考えている」(竹迫氏)という。
すでに、機械学習を応用したセキュリティ対策としては、迷惑メールを検出してフィルタリングを行う「ベイジアンフィルタ」がある。これは、過去にやりとりしてきた業務メールのデータを元に学習し、迷惑メールをフィルタする仕組みだが、それを逆手にとって、取引先企業からのメールを装って攻撃メールが送られてくるケースがある。「こうしたものまで判別するには、メールの転送履歴を可視化するなど、これまで着目してこなかった特徴まで見ていく必要があるだろう」(竹迫氏)。
増え続けるログの処理も機械学習の理論を適用するのに有望なエリアだ。ログの中にはまれに、極端に長いなどの外れ値がある。それは本当に異常なのか、それとも正常値の範囲なのか。逆に、ほとんど正常な格好をしているログの中から異常をどう見つけるか――「通信量や通信内容に基づいてタチの悪いものの特徴を見つけ出せるのではないか。複雑さという意味では同様に、出てくる単語の頻度だけでは見分けが付かないメール送付を足がかりとした『標的型攻撃』への応用も考えられる」(機械学習+セキュリティ勉強会の実行委員、サイバー大学IT総合学部 専任准教授 園田道夫氏)。
このように、防御側が打つ手に応じて攻撃側が仕掛けてくるであろう「次の一手」まで見据えるために、機械学習がうまく活用できるのではないかという。
幅広い視座で優れた成果を
園田氏によると、機械学習とセキュリティという2つの技術の組み合わせは、以前からも試みられていた。「しかし、アルゴリズムを現実に合わせて改良するというよりは、どちらかというとそのチューニングに特化しており、根本的な問題を解決するところにまでは至っていなかった」という。今後、学生も含め幅広い分野の人材に参加してもらい、知見を広げることで、そうした部分を解決していきたいという。
機械学習という概念が生まれた当時に比べると、コンピュータの計算能力は飛躍的に向上した。かつてはリソースの制約に縛られ、特徴点をある程度絞って計算せざるを得なかったが、あらゆる要素を解析できるだけの環境が整ってきた。加えて、プログラミング環境や自然言語処理技術の進化もめざましい。
一方で機械学習においては、「特徴をいかに数値化できるか」もポイントになる。抽出された特徴の重み付けをするのは人間の仕事だ。「攻撃の傾向が変わった」といった判断を下すには、人間の知見が不可欠となる。
そのためにはたくさんの「目」「視点」が必要だ。そこで機械学習+セキュリティ勉強会では、セキュリティ業界以外からも人材を幅広く募るため、機械学習を活用した「最強の箱」作りを目指した勉強会や競技会を開催していく。こうした分野に興味を持つ研究者だけでなく、高校生や大学生、あるいは一般の人々にも参加してもらいたいとしている。
「専門家だけではどうしても凝り固まった視点になりがち。いろいろな人たちの知見を得られれば、それだけ優れたものができると期待している」(松田氏)。「参加した人が勝つためにどんどん工夫を凝らし、負けた原因を分析するなど、コンペティションにはそれ自体に魅力がある。セキュリティ業界はもちろん、モノ作りやWebなど、いろいろなところに応用できるのではないか」(園田氏)。
現に、ニューラルネットワークを使った機械学習手法「Deep learning」は、化学化合物の活性予測や画像認識など、開発者らの専門分野とは異なる多様な分野のコンテストで優れた成績を残している。これと同じように、さまざまな分野の感性と機械学習がつながることで生まれる、新たな化学反応に期待したいという。
機械学習を用いて攻撃を検知する能力を競うコンテストの第1回は、10月26日に開催される予定だ。ここでは、サーバから受け取った文字列がSQLインジェクション攻撃であるかどうかを判別し、正解率を競うという。こうした取り組みを通じて若い世代を巻き込みながら、「何がうまくいくのか」「何がうまくいかないのか」「どんな攻撃にどんな解析手法が有効か」などさまざまなノウハウを蓄積し、攻撃者に先んずることができるセキュリティ対策を実現していきたいとしている。
Copyright © ITmedia, Inc. All Rights Reserved.