HEADER
検索更新情報サイトマップ English Chinese


バックナンバー一覧はこちら >>

インターネットセキュリティ講座
 第3回 不正プログラム (その1)


株式会社ネットワークボックス・ジャパン(NBJ)代表取締役社長の坂野直人(ばんのなおと)です。

今年(2003年)の年初はSARSのおかげで久々に本物のウィルスの脅威を思い知らされましたが、いまマスコミで「ウィルス」といえば暗黙のうちにコンピュータ・ウィルスを表すほどに主客転倒してしまった感があります。年初にはSQL SlammerやFizzerといった新種のウィルスが話題になり、つい先日もBlaster、Welchia、Sobigといった強力なウィルスの被害が全世界で報告されました。こちらのウィルスは全く沈静化する兆しすら見られず、次から次へと新種が現れてきては猛威を振るいます。

Blasterの亜種のひとつは18歳の少年の作だったそうですが、もちろんこちらのウィルスは人間が創造したものであり、その実体は単なるコンピュータ・プログラムです。本来コンピュータ・プログラムは人間の役に立つ仕事を実行するための手続きを記述したものですが、なかには人間に迷惑をかけることを目的にした悪意を持ったプログラムも存在します。コンピュータ・ウィルスもその一種なのですが、これらを総称して「不正プログラム(malicious code / vandal)」と呼んでいます。

第3回の今回と次回の第4回はこれら悪意を持ったコンピュータ・プログラム、インターネットにおける最大・最悪の脅威である不正プログラムについてお話しいたします。

     

不正プログラムの種類

 

一昔前には不正プログラムといえばウィルスしかお目にかかることはありませんでした。ところが最近ではその種類も多様化している上に、ひとつのプログラムに多種多様な不正プログラムを含んだ複合型のものが続々と現れています。従って現在発見されている新種の不正プログラムは厳密な分類が出来ないものがほとんどですが、ここでは一般的な分類を基に個々の不正プログラムについて概要を説明いたします。

実は不正プログラムを体系的に分類した資料を私自身は見たことがありません。そこで私が勝手に分類した体系図を下記に示しますが、分類名・体系名などは恣意的なものですので公的な文書に引用することはご遠慮ください。

 
   

ウィルス、ワームそして不正スクリプト

 

この節で解説する不正プログラムは、何らかの手段を用いて感染を広げていくという共通点を持っています。

  【ウィルス】
    コンピュータ・ウィルスについては日本のお役所が定めた定義があります。通産省(現経済産業省)の定めた「コンピュータウィルス対策基準」(平成12年12月28日(通商産業省告示第952号)(最終改定))の「用語定義」によると、「コンピュータウィルス」は下記のように定義されています。

第三者のプログラムやデータベースに対して意図的に何らかの被害を及ぼすように作られたプログラムであり、次の機能を一つ以上有するもの。
  1. 自己伝染機能
    自らの機能によって他のプログラムに自らをコピーし又はシステム機能を利用して自らを他のシステムにコピーすることにより、他のシステムに伝染する機能

  2. 潜伏機能
    発病するための特定時刻、一定時間、処理回数等の条件を記憶させて、発病するまで症状を出さない機能

  3. 発病機能
    プログラム、データ等のファイルの破壊を行ったり、設計者の意図しない動作をする等の機能
実はこの定義を当てはめると現在知られている不正プログラムはほとんどウィルスに分類されてしまいますが、一般的にはウィルスは下記の特徴を備えたプログラムと認識されています。
  • 他のプログラムやデータファイルに感染することで初めて機能を発揮する
    ( 単独のファイルとしては存在しない)。
  • ファイルからファイルへと次々に感染を広げることによって自らを増殖させる。
自己増殖するプログラムという概念は、実は20世紀前半に現在のコンピュータの基礎を作ったフォン・ノイマン博士の時代から考えられていたそうです。ということは、プログラミング技術としては目新しいことではないことになりますが、まさかその概念が不正プログラムに応用されるとは当時は想像もつかなかったことでしょう。

またプログラムが「感染」するというのは概念的にイメージし難いことと思いますが、これは本来のプログラムのどこかに不正なコードが紛れ込むことだと理解してください。プログラム実行の流れがこの不正なコードに差し掛かると、プログラム本来の機能を逸脱してウィルスとしての異常な活動を始めてしまうのです。これがウィルス感染の症状としての様々な迷惑行為となって現れます。そしてさらなる感染先を求めてウィルス自身も増殖していきます。

上記の一般的な定義に従ったウィルスは最近ではほとんど目立たなくなりました。ウィルスは感染したプログラムを実行することで活動開始するため、感染ファイルや感染セクタを持ったFDやCD-ROMを介した感染が主体となるからです。最近では次に説明するワームやトロイの木馬型の不正プログラムが圧倒的になってきています。

ウィルスは感染形態によってファイル感染型、ブートセクタ感染型、マクロプログラム感染型などに分類できますが、ここでは説明しきれないので割愛します。こういった旧来のウィルスには驚くほど巧妙なプログラミング技術が駆使されたものもあり、それによってステルス型やポリモーフィック型などに分類することも可能です。

不謹慎な言い方ですがこれらのプログラミング手法は芸術的でさえあります。しかしながらこの話も長くなりすぎるので割愛します。これらが与える被害については現在主流の不正プログラムに比べればそれほど甚大ではありません。
  【ワーム】
    現在新聞報道などで大きく扱われているウィルス騒動は、厳密にはウィルスではなくワームと呼ばれる不正プログラムによるものです。「ワーム(worm)」とはミミズなどのニョロニョロした虫を意味します。その名が示すようにネットワークの中を自ら這い回り、増殖を続ける不正プログラムです。ワームがウィルスと異なる点は、他のプログラムに感染することなく単独のファイルとして存在することと、自らは増殖する機能を持たないことです。にもかかわらず、その感染する速度と増殖する速度には驚くべきものがあります。

ワームは独立したファイルの形をしているため、プログラムの中身に感染するウィルスとは異なりファイルには直接感染しません。ファイルですからその所在はディスクかメモリの中です。いうなればコンピュータそのものに感染すると考えれば判りやすいでしょう。また既存の実行可能ファイルに感染することで増殖するウィルスと異なり、ワームは自分自身のコピーを既存のコミュニケーション手段、すなわちメールやWebあるいはファイル転送機能を介してダウンロードさせることで増殖していきます。

ワームも不正プログラムですから、やはり何らかの悪意を持った活動を行うようにプログラミングされています。感染したコンピュータのメール機能を無断使用して自身のコピーやディスクにあるファイルを勝手にばら撒いたり、バックドアなどの他の種類の不正プログラムを仕込んだりといった悪さをします。インターネットという広域のコミュニケーションのインフラを悪用して増殖するため、ウィルスに比べて格段に速い速度で感染が広がるという特徴があります。

ウィルスは既存の実行可能ファイルやデータファイルに感染するので、黙っていてもユーザが起動をかけてくれますが、独立したファイルであるワームの場合、それと判っていて起動してくれる気前のいいユーザはあり得ません。そこでどうしてもワームは自分自身をカムフラージュ(擬態)する必要に迫られます。有用なプログラムに化けたり、ゲームソフトのふりをしたり、ときには不正プログラムの対策ソフトになりすましてまでユーザを騙まし討ちにしようとします。このような特性を後述の「トロイの木馬」と呼びます。だから一般的にはワーム=トロイの木馬といった図式も成り立つ可能性があります。
  【不正スクリプト】
    WWW(World Wide Web)で使われているHTML(Hyper Text Markup Language)という言語は、従来は文字だけ表示できれば事足りたのですが、ユーザの求めるものが高度化するのに伴って様々なデータ形式を扱えるようになっていきました。そして今ではブラウザを介して会計処理などの高度な業務アプリケーションを実行することさえ当たり前になっています。これらの業務アプリケーションは「スクリプト」と呼ばれる小規模なプログラムをサーバからクライアントパソコンにダウンロードすることで実行されます。

スクリプトを記述する言語はJavaScript、 VBScript、Perlなど多種多様な個性を備えたものが開発されていますが、いずれもユーザがWebサイトをアクセスして何らかの操作を行うことで起動がかかります。この講座の読者には身に覚えがある人はいないと思いますが、あるサイトをアクセスした直後からブラウザのホームページがアダルトサイトに変わってしまったり、見知らぬアクセスポイントにつながるように設定が変わったりしていて後日法外な使用料を請求されることがあります。実はスクリプトはこのような不正な行為を行うことにも利用できてしまうのです。

最近はこのような不正スクリプトを実行させることで自分自身をダウンロードさせて感染するタイプのワームも続々と登場してきています。このような不正スクリプトを仕込んだWebサイトは、やはりユーザにアクセスを促すためのある種の工夫を施しています。誰もが見たがる興味深いコンテンツを公開していたり、有名企業のサイトになりすましたりしてユーザを騙まし討ちにするのです。そういう意味では不正スクリプトも擬態を伴うことを宿命とした不正プログラムと言えるでしょう。
     

次回(第4回)は?

 

今回は不正プログラムの種類とその脅威の実態について解説しました。次回は不正プログラムの実態の後半と不正プログラムに対する対策についてお話しいたします。

株式会社ネットワークボックス・ジャパン
代表取締役社長
坂野直人

   
    第4回につづく・・・
     
 
インターネット・セキュリティについてのご相談は、
日本ユニシス・エクセリューションズの担当営業まで、
もしくは こちら からお問い合わせください。
   

お問合わせは こちら

All Rights Reserved. Copyright© 2002-2008 UEL Corporation