実は筆者は、マルウェア解析については素人同然だ。セキュリティという分野は、一般的には狭い範囲に思われるかもしれない。Webアプリケーションが専門であったり、ネットワークが専門であったりと、意外と細分化されていて、他の分野のこととなると門外漢であることも多い。最近のマルウェアの仕組みや挙動の概要、バッファオーバーフローやデバッグといった個別の知識や技術は持っている。それだけでは最新のマルウェアの解析まではできないのだ。最新のマルウェアを解析するには、マルウェア解析ならではの技術が必要になる。現在流通しているほとんどのマルウェアには、実行形式を保ったまま圧縮・難読化を施す「パック」という技術が使われている。Proのような逆アセンブラに処理させても、マルウェア自体の逆アセンブル結果を取得できない。パックされたものを展開する技術は「アンパック」と呼ばれている。ZIPファイルのように決まった規格が使われているわけではなく、窓の杜などにあるような一般的な展開ツールではアンパックできない。中には、解析を妨害する機能などを備えたマルウェアもある。Pro」などのデバッガや、解析用プラットフォーム構築に「VMware」などの仮想化ソフトウェアを使うことがあるが、最近のマルウェアはそれらの動作を検出して解析を妨害する「アンチデバッグ」と呼ばれる手法を使っていることがある。Pro」のスクリーンショット例えば、マルウェア自身が主要な監視ツールのプロセスを検出してそれらを停止させたり、感染動作を止めてしまったりする。中にはタイマーによるチェックを行っているマルウェアもあって、コードの実行に掛かった時間を計測し、自身が解析されていることを検出するといった回避策を備えている。これらのマルウェア解析の妨害技術に対処したとしても、すでに動いているプロセスに対して「コードインジェクション」という技術で感染しようとするマルウェアを解析するというハードルが待っている。Insider)http://www.atmarkit.co.jp/fwin2k/insiderseye/20051109rootkit/rootkit_01.html......と、ここまで話すぐらいの知識なら筆者にあるが、「それじゃあ実際にやってみろよ」といわれるとあたふたしてしまうばかりだ。■アセンブリ言語の読経なしであこがれのマルウェア解析職人に近付こうマルウェア解析に興味がなかったから、技術を身につけなかったわけではない。マルウェア解析職人はセキュリティ技術者の花形である。できることなら身につけておきたい。前述のようにマルウェア解析はさまざまな技術の集大成であるので、学ぶべきことがたくさんあるのだ。それらを解説した書籍は日本語でも英語でもほぼ皆無であるし、インターネット上を探してもまとまったものがない。一朝一夕で身につけられるものではないので、今日まで先送りにしてきた。アセンブラの知識も風化し始めている筆者であるが、「アナライジング・マルウェア」と題した書籍を読んだ今は、マルウェア解析職人への道に一筋の光を見出している。本書の目次は次のとおりだ。■マルウェア解析までの道のり●マルウェア検体の入手マルウェア解析を行うには、当然、マルウェアの検体(サンプル)が必要になってくる。欲しくないときにはどこからともなくやってくるのに、こうして解析したいと思ったときには手に入らない。プロであればストックぐらいはあるが、普通は持っているものではない。Computing(http://www.offensivecomputing.net/)などのマルウェア専門Webサイトを利用して探す方法や、nepenthesなどのハニーポットを自分で運用してマルウェアを入手する方法などが紹介されている。注:上記サイトはマルウェアそのものを配布していますので、閲覧・入手の際には自己責任でお願いします。素人が考えても、メールの送受信などで使っている日常の環境でマルウェア解析を行うと、うっかり感染してしまうのではという不安がある。実際そのとおりで、感染動作を引き起こすところまで解析すると、システムが感染してしまうこともある。そのため、普段の環境とは別に解析環境を構築する必要がある。本書では、被感染システムとして物理的に専用ハードウェアを用意する方法と、VMwareなどの仮想化ソフトウェアを使って構築する方法が紹介されている。それぞれのメリットやデメリットなども説明しているので、環境構築の参考になる。本書の本題はもちろんマルウェアの解析である。アンパックの技術から動的解析の妨害を乗り越える方法など、マルウェア解析に必要な技術が一通り解説されている。デバッガや監視ツールのプロセスを検出して妨害するアンチデバッグの技術がある。Debuggerのプロセスを発見するC言語のサンプルコードを挙げ、発見の手順を解説している。このアンチデバッグ技術を回避するために、実行ファイル名を変更するといった方法や、Process32FirstでFalse(0)を返すといった手法なども紹介している。本書はまた、全編にわたってサンプルコードを用意し、解説を加えている。フリーツールを中心とした手法を解説しているので、すぐにでも取り組み始めることができる。何といっても、本書はマルウェア解析の指南書であるにもかかわらず、アセンブリ言語の「読経」はほとんど登場しないという敷居の低さが魅力である。筆者は個人的に著者の1人である新井氏と友人であるが、株式会社ラックのサイバーリスク総合研究所所長である彼は多忙なので、懇切丁寧にマルウェア解析技術を教えてもらうことは困難だし、きっとお高いのではないかと想像する。彼に直接教わらなくても、本書を片手に1週間も実践に取り組めば、マルウェア解析職人(見習いぐらい)にはなれるかもしれない。物覚えが悪いせいで何度か同じことを繰り返しても新井氏に怒られないのも、筆者にとっては好都合である。(IPA)セキュリティセンター研究員なども務める。近著に「今夜わかるメールプロトコル」、「今夜わかるTCP/IP」、「今夜わかるHTTP」(共に翔泳社)がある。個人ブログは「うさぎ文学日記」。10が備える多彩なセキュリティ対策機能を丸ごと理解するには、5つのスタックに分けて順に押さえていくことが早道だ。連載第1回は、Windows起動前の「デバイスの保護」とHyper-Vを用いたセキュリティ構成について紹介する。WannaCryがホンダやマクドにも。(2017/7/11)2017年6月のセキュリティクラスタでは、「WannaCry」の残り火にやられたホンダや亜種に感染したマクドナルドに注目が集まった他、ランサムウェアを作成して配布した中学3年生、ランサムウェアに降伏してしまった韓国のホスティング企業など、5月に引き続きランサムウェアの話題が席巻していました。(2017/7/5)人員リソースや予算の限られた中堅・中小企業にとって、大企業で導入されがちな、過剰に高機能で管理負荷の高いセキュリティ対策を施すのは現実的ではない。Threat)対策の観点から考える。