2008年4月24日~25日の2日間、ザ・プリンスパークタワー東京(東京都港区)において、情報セキュリティカンファレンス&展示会「RSA Conference Japan 2008」が開催されました。Software Design編集部は、アンチウィルスソフトウェアなどで知られるKaspersky Lab社のウィルス研究所 所長、Stanislav Shevchenko氏と、ウィルスアナリストのVitaliy Kamlyuk氏にお話を伺う機会を得ました。その模様をお届けします。
巧妙化するマルウェアの感染手口について
――御社の研究所には、毎日どれくらいの数のサンプルが集まり、どれくらいの数のマルウェアが発見されているのでしょうか。
Shevchenko氏:
正確な数字をあげるのは難しいですが、数万単位のファイルが研究所に送られてきます。そのうち、マルウェアの占める割合はおよそ7割です。7割と聞くとずいぶん多いと感じるかもしれませんが、もともと研究所に送られてくるファイルは「マルウェアであると疑われる」ものですから、このような割合になるのです。
――マルウェアの感染手口が巧妙になっていると聞いていますが、最近の傾向としてどのような点が見られますか。
Kamlyuk氏:
かつてのマルウェアは、たくさんばらまいて、その中のどれかが感染すれば良いという考え方が主流でした。ですが今は、たくさん人が集まるところを狙い、感染源を設置する手口が主流になっています。たとえば人気の高いWebサイトに感染用ファイルを設置してしまえば、あとは放っておいても多くのユーザが訪れ、マルウェアが広がっていくわけです。
――近年ではダウンローダと呼ばれるマルウェアが問題視されていますが、なぜこのようなマルウェアが登場したのでしょうか。
Kamlyuk氏:
大きな理由としては、アンチウィルスソフトウェアに検知されない新種のマルウェアを作るよりも、新しいダウンローダを作成するほうが圧倒的に容易である点を挙げることができるでしょう。ダウンローダはコードを書くのも簡単ですし、サイズも小さなものです。
ダウンローダを使えば、たとえばアンチウィルスソフトウェアの機能を無効にしたうえで、アンチウィルスが有効ならば検知可能なはずの古いマルウェアを直接送り込むことができるようになるのです。
――ダウンローダが増えてきたのは、いつごろからなのでしょうか。
Kamlyuk氏:
1年半~2年前ですね。
Shevchenko氏:
現在では、全体のマルウェアのうち30~40%はダウンローダです。
現実のものとなったゼロデイ攻撃、その対策とは
――ゼロデイ攻撃がすでに現実のものとなりましたが、御社ではゼロデイ攻撃に対してどのような対策を採っているのでしょうか。
Shevchenko氏:
我々は、数年前からゼロデイ攻撃について警鐘を鳴らし続けてきました。今も、脆弱性が発見されてから攻撃に悪用されるまでの期間はどんどん短くなっています。もはやゼロデイではなく、「ゼロアワー攻撃」と言っても良いほどの状況です。
こうした危険な攻撃への対策として、まず我々は、1時間毎だった定義ファイルの更新頻度を30分毎へと変更しています。さらに、マルウェアが自分自身を書き換えることによって、将来登場することが予測される亜種のコードもシグネチャファイルに組み入れてきました。
ただ、これら2つは過去に行った対策です。現在では、マルウェアが行う行動を分析して怪しい振る舞いを検知するヒューリスティック技術など、プロアクティブな検知手法を用いて未知の脅威に対抗しています。
Kamlyuk氏:
振る舞いによる検知手法は、大きく2つに分けることができます。1つは、マルウェアのさまざまな振る舞いをシグネチャとして登録する手法。もう1つは、エミュレータを利用して仮想的にマルウェアを実行し、その振る舞いを確認する手法です。
――プロアクティブな検知技術が発達すれば、シグネチャベースの検知手法は必要なくなるものなのでしょうか。
Kamlyuk氏:
どれだけプロアクティブな技術が発達したとしても、シグネチャベースの手法は必要です。シグネチャの中には、セキュリティエキスパートがマルウェアを解析した結果が含まれています。そのコードがマルウェアなのかの判断基準はもちろんのこと、何をするのか、どのファイルを書き換えるのかといった情報もあるのです。こうした情報がなければ、マルウェアを正しく駆除することができません。
Shevchenko氏:
その一方で、ヒューリスティック検知技術を使えば高い確率で未知のマルウェア、危険だと考えられるコードの侵入を未然に防ぐことができます。どちらかだけがあれば良いというものではなく、両方を併用する必要があるでしょうね。
――マルウェアが跋扈する昨今の状況の中で、我々はどのように身を守っていけば良いのでしょうか。
Kamlyuk氏:
何よりも、まずアンチウィルスソリューションを活用することです。そして、こうしたインタビューやメディアからの情報発信に耳を傾けてください。最新の攻撃手口やその対策について知ることは大切です。これは、個人ユーザであってもシステム管理者であっても同じでしょう。
セキュリティエンジニアに必要な資質、スキルとは
――御社のソリューションは市場で高い評価を得ています。こうしたソリューションを支える御社の技術スタッフについて教えてください。
Shevchenko氏:
本社には800人ほどの社員がいて、人数は年々増えています。技術スタッフとしては、ユーザの皆さんが利用するアンチウィルスソフトウェアソリューションを開発するスタッフがおよそ300人、そして研究所で最新のマルウェアなどについて研究するセキュリティエンジニアがおよそ50人です。
――セキュリティエンジニアを目指す技術者にとって、必要なスキルや資質はどのようなものだとお考えですか。
Kamlyuk氏:
私は3年ほど前に、現在のウィルスアナリストという職につきました。その経験からお答えすると、まずプログラミングの能力、知識、とくにアセンブラに関する知識が必要だと考えます。また、インターネットやネットワークのしくみ、そこで使われる各種プロトコルに関しても学んでおくべきでしょう。
さらに、マルウェアが動作する各種OSに関しての知識とスキル、そしてさまざまなアルゴリズムに関する知識も必要になってきます。
Shevchenko氏:
1つ1つのマルウェアの解析を行うスキルはもちろんですが、もっと高い視点から、全体の傾向などを掴み取る能力も必要になるでしょうね。
――世界的に見て、必要なスキルを備えたセキュリティエンジニアの数は十分だとお考えですか。
Shevchenko氏:
現状でセキュリティエンジニアの数が十分だとは言えませんし、その状況は今後も変わらないでしょう。
技術的なレベルだけで考えれば、セキュリティエンジニアになるだけのスキルを備えた人間はたくさんいます。ですがその多くは、我々のような防御側ではなく、攻撃を行う側へと進んでいきます。守る側に留まるためには、技術的な能力はもちろんですが、正義心、モラル、絶対に不正を行わない強い意思などが大切なのです。
――そういった資質、たとえばモラルなどは、会社による教育プログラムで育成できるのでしょうか。
Kamlyuk氏:
モラルというのは、幼少の頃から両親や学校などによる教育を通じて学んでいくものです。ですから、大人になってから後付けで身に付けるのは、かなり難しいのではないでしょうか。
Shevchenko氏:
採用面接では、まさにその点を正しく見抜く必要があります。私は研究員の面接を行う立場にあるのですが、だいたい1日に3~4通の履歴書が届きます。そしてほぼ同じ人数と実際に会って話をするのですが、採用に至るのは四半期(3ヵ月)の間に2人程度です。
なぜそこまで厳しくする必要があるかと言えば、攻撃側にアドバンテージを与えないためです。当社では、採用したセキュリティエンジニアに対し、マルウェアに関するさまざまな教育を行うとともに、必要な技術情報を与えていきます。ですから、攻撃側に流されてしまう可能性を少しでも持った人間は、絶対に採用するわけにはいかないのです。
――ありがとうございました。