連載
» 2008年10月24日 00時00分 公開

セキュリティ対策の「ある視点」(13):プレイバックPart.II:シフトした脅威の中で (1/4)

2004年、ウイルスは新世紀へ。コンピュータウイルスの歴史をひもとく旅、後編は“攻撃者”の狙いが徐々に変化するさまを追います。

[辻 伸弘(ソフトバンク・テクノロジー株式会社),@IT]

※ご注意

本記事に掲載した行為を自身の管理下にないネットワーク・コンピュータに行った場合は、攻撃行為と判断される場合があり、最悪の場合、法的措置を取られる可能性もあります。また、今回紹介するツールの中には、攻撃行為に利用されるという観点から、ウイルス対策ソフトにウイルスとして検出されるものも存在します。このような調査を行う場合は、くれぐれも許可を取ったうえで、自身の管理下にあるネットワークやサーバに対してのみ行ってください。

また、本記事を利用した行為による問題に関しましては、筆者およびアイティメディア株式会社は一切責任を負いかねます。ご了承ください。


 第12回「プレイバックPart.I:ウイルスのかたち、脅威のかたち」に引き続き、コンピュータウイルスの過去を振り返ろう。Part.IIではいったんその歴史から離れ、コンピュータウイルスの進化、そして道具としてのコンピュータウイルスにフォーカスを当てたいと思う。

コンピュータウイルスの進化、そして道具へ

 自身の複製をあらゆる経路から世界中に、そして自由に広げることができるようになり生命体とも呼べるレベルとなったコンピュータウイルスだが、本当の生物界に食物連鎖があるように、彼らには皆さんがご存じの天敵「ウイルス対策ソフト」が存在する。ウイルスは「ウイルス対策ソフト対策」という進化をしない限り、絶滅の危機にひんしてしまうのである。コンピュータウイルス作成者、またはそれを改造し、広めようとする者もそのことには気付いており、実際に「ウイルス対策ソフト対策」が行われているのである。

 その対策の初歩として、彼らはウイルス対策ソフトの基本動作に着目した。ウイルス対策ソフトは、基本的にパターンマッチングという手法を用いて、検査対象のファイルがコンピュータウイルスであるか否かということを判別している。

 この手法を逆手に取ると、既知のウイルスパターンにさえ合致しなければ、コンピュータウイルスではない、と判断されるということだ。

図1 ウイルス対策ソフトはパターンマッチングでウイルスかどうかを判断している 図1 ウイルス対策ソフトはパターンマッチングでウイルスかどうかを判断している

 そのパターンマッチを回避するために、コンピュータウイルスは以下のような方法で進化を遂げることとなる。

ポリモーフィック――暗号化でパターンマッチを回避

 ポリモーフィック(Polymorphic)とは、「多形の、多様な形の、多形態の」といった意味を持つ言葉で、生物学でも用いられる言葉である。

 コンピュータウイルスの世界では、自身の一部をランダムな暗号化コードで暗号化することでパターンマッチを回避するものである。当然、暗号化されているので実行される際には、復号コードを用いるのだが、この復号コードがウイークポイントとなる。つまり、復号コードを検出することで、コンピュータウイルスであるということも検出できてしまうのである。

図2 ウイルス部分を暗号化しパターンマッチを回避するポリモーフィック 図2 ウイルス部分を暗号化しパターンマッチを回避するポリモーフィック

メタモーフィック――機能はそのままに、変身

 メタモーフィック(Metamorphic)とは、「変形の、変態の、変成の」という意味を持つ言葉で生物学、地学などでも用いられる言葉である。ポリモーフィックと大きく異なるところは、ポリモーフィックが自身の一部に暗号化という部分的な変化を加えるのに対し、メタモーフィックでは、自分自身全体に変化を加えるという手法を取る。

図3 無意味なコードの挿入や順序変更、コード自体を書き換えることでパターンマッチを回避するメタモーフィック 図3 無意味なコードの挿入や順序変更、コード自体を書き換えることでパターンマッチを回避するメタモーフィック
       1|2|3|4 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。