« 技術革新:"ついに来た"・・・量子コンピュータ商用化! | トップページ | KDE4.8:マウスのダブルクリック化 »

2014年6月22日 (日)

マルウェア対策-予備知識:「拡張子」と「2種のファイル実行パターン」

PCを使用するにあたって、ユーザは「様々な処理」を行うために「ファイルの実行」を行っています。

具体的には、文書作成や表計算の作成、写真画像の閲覧、編集やインターネットの閲覧などが代表的な例だと思いますが、これらは全て「何かしらのファイル」を実行することにより、行われています。

さて、このファイル。
非常に多くの種類のファイルが存在しますが、ユーザ自身のマルウェア対策を考えた場合、どんなファイルの種類なのかある程度判別できる必要があります。

そして、ファイルの種類(ファイルフォーマット)を判別するための重要な情報が「拡張子」になります。
 
 
〔拡張子とは?〕

51_file_r

拡張子とは、「〜.exe」や「〜.txt」「〜.pdf」「〜.doc」「〜.xls」「〜.zip」「〜.rar」「〜.lzh」など、ファイル名の末尾に、ドット「.」とアルファベット(及び数字)で表されるものです。

通常は3文字以内のアルファベットですが、「〜.jpeg」や「〜.tar.gz」「〜.html」のように3文字を超えていたり、拡張子が付けられていないファイルもあります。

この拡張子、ファイルの種類を識別するために与えられる文字列で、これを見ることで、ファイルの種類の判断がだいたいできます。

ある程度知っておくと、危険なモノを避けることが可能です。

もちろん、すべてを覚える必要はありません。
〔代表的なモノ〕 + 〔自分が良く使うもの〕で十分です。

自分が知らないモノは「いじらない、実行しない、触れない」。
それだけでも、一つのマルウェア対策になります。

ということで、代表的なモノと思われる拡張子について挙げていきたいと思いますが、Windowsの場合、デフォルトでは「一部の拡張子は表示しない」という「おせっかい設定」になっています。

ファイル名変更などで、拡張子を削除してしまったり、勝手に変えてしまったりすると、Windowsの場合、うまく起動しなかったりするので、MS側も面倒だから表示させたくないのかもしれませんが、これは情報弱者を生み出す元凶の1つだと思います。
もし、Winodwsで拡張子を表示させたい場合は、「Windows 拡張子 表示」で調べてみてください。すぐに設定変更できると思います。

ちなみにLinuxでは拡張子が削除されても、正しく起動します。システムが拡張子だけで判断していないので。まぁ、普通そんなことはやりませんが。



〔代表的なファイルフォーマット〕

【写真/画像:jpg/png/gif】

デジカメなどの写真フォーマットは一般的に「.jpeg」です。「.jpg」の場合もありますが、中身は同じです。昔のOSの中には、拡張子が3文字以内でないとダメなものがあったための歴史的な背景の名残りです。
なので、例えばユーザ自身が「.jpeg」から「.jpg」に拡張子名を変更しても全く問題がありません。

写真以外の静止画で良く使われるのが「.png」「.gif」です。「.jpg」も一応は静止画なので使われることもありますが、イラストのようなモノには、不向きです。
ホームページに使われるロゴやイラストなどの画像フォーマットは大抵が「.png」や「.gif」などになります。

ちなみに拡張子に大文字、小文字は関係ないので、大文字で表記されることもあります。小文字で見かける方が多いですけどね。
 
  
 
【音楽/音声ファイル:wav/mp3/wma】

音声データファイルの代表格は「.wav」でしょう。「.wave」の場合もあります。「.wav」と「.wave」は同一です。
さて、このフォーマット。無圧縮ファイルなため、ファイルサイズが大きくなりがちです。wavフォーマットを圧縮変換し、他の音声ファイルに変更して利用するのが一般的です。

圧縮変換で有名なのは、「.wma」や「.aac」などがありますが、歴史的な代表格といえば「.mp3」でしょう。
ただし、これらは非可逆圧縮なため、それを嫌って「flac」などの可逆圧縮フォーマットを選ぶ人もいたりします。

さて、この音声ファイルフォーマット。近年は数が爆発的に増えていて、全てを把握するのははっきり言って無理です。自分が使うようになったモノを順次覚えていけばよいかと思います。

ちなみに動画フォーマットも似たような状況です。
代表的なフォーマットは「.avi」や「.mpeg/.mpg」「.mp4」などになります。
 
 
 
【文書/表計算等ファイル】
   
52_file_list_r4_2

上の表は、各オフィスソフト自身が標準で利用するフォーマット一覧です。
ただし、上記の表に載っていない他の形式の読み書きもできるケースは多いです。

52_file_r2
LibreOffice 3.5 での例)

ただし、そのソフト専用のフォーマット以外のものを利用した場合、全ての設定が使えなかったり、表示が崩れたりすることがあります。

基本的には、そのソフト自身が標準で利用するフォーマットを使用すると良いです。
 
 
〈 テキストファイル:txt〉

「.txt」の拡張子の付くファイルは、文字情報のみが記録されるシンプルなファイルフォーマットで、どんな機種のコンピュータでも共通して利用できる数少ないファイル形式の一つです。

いわゆる「テキストファイル」と呼ばれるものです。
プレーンテキスト」と呼ばれることもあります。

Linuxでシステムファイルをいじったことがある人はわかると思いますが「/etc/apt/sources.list」 や「/etc/fstab」などもプレーンなテキストです。
「.txt」以外の拡張子が付いたり、拡張子自体が付かないものもあったりします。

一般的にこのテキストファイルはエディタ(またはテキストエディタ)と呼ばれるソフトウェアで編集します。

.c」なんかもそうですね。
プログラミングでは必須のフォーマットでもあります。
 
 
〈 文書ファイル:pdf 〉

その他の文書系フォーマットでは「.pdf」フォーマットもまたよく使われます。

特定の環境(OS等)に左右されずに全ての環境でほぼ同様の状態で文章や画像等を閲覧できる特性を持っていて、一般的に閲覧や印刷を目的にして使われます。ただし、編集には向きません。文書等を完成させた上で「pdf化」して利用されることが多いです。

ちなみに「pdf化」についてはオフィスソフトにその機能が付いているものがあります。
「LibreOffice」や「Apache OpenOffice」などは標準で「pdf化」が可能です。

61_pdf_writer_r_3  

「pdf化」を細かく設定したい場合は「ファイル > PDFとしてエクスポート」と進めば良いです。

62_pdf_writer_r

63_pdf_writer


pdf化されたファイルを.doc/.odtなどのファイルに戻すこと(pdf化の逆の作業)は基本的にできませんので、再編集する可能性がある場合オリジナルのファイルの保存を確実にするよう、注意してください。pdfファイルでは保存したけれども「.odt」ファイルで保存するのを忘れて「データの再利用ができ〜ん!」と文句を言っていた人がいたので・・・。
まぁ、大抵はオリジナルファイルは保存するとは思いますけれども。
 
 
 
【書庫(アーカイブファイル)/データ圧縮:zip / lzh / rar / tar】

使う人は使いますが、使わない人は使わないファイルですね。

書庫化とは「複数のファイルを1つにファイルにすること」で、データ圧縮とは「データの実質的な性質を保ったまま、データ量を減らした別のデータに変換すること」です。

だいたいのフォーマットでは「書庫化」と「データ圧縮」がセットで行われますが、「tar」のように、「書庫化」のみというフォーマットもあります。

複数のファイルをまとめて、かつ容量を減らしてデータを送ったり、システムのバックアップ等に利用されたりします。

フリーソフト等の配布にもよく使われますね。

書庫化されたファイルは直接は使用できませんので、元に戻す作業が必要になります。元に戻す作業のことを「展開」や「解凍」と呼んだりします。




【実行形式ファイル:exe / cmd / bat / com(Windowsのみの拡張子)】

コンピュータがプログラムとして解釈実行できるファイルです。
いわゆる「プログラム(ファイル)」です。

003_ie_r_2

上図の例、「IEXPLORE.EXE」はIE(インターネットエックスプローラ)の本体です。
 
デスクトップ画面のIEのアイコンや、スタートメニューのIEのアイコンはこの本体へのショートカットです。


004_ie_r


例えば、スタートメニューの「Internet Explorer」アイコンをクリックすることで、「IEXPLORE.EXE」が実行されます。他のメールソフトやオフィスソフトもすべて同様です。

「スタートメニュー」から起動されるアプリケーションは基本的に「.exe」ファイルへのショートカットになっています。

つまり、スタートメニューからアプリをクリックした場合、何かしらの「.exe」ファイルが実行されるということです。

むろん、当然のことながら直接「プログラム本体」をクリックしてもアプリケーションが起動します。
 
「.exe」以外にも「.cmd」「.bat」「.com」などがあります。
これらの拡張子はすべてWindows用になります。
ちなみに「.exe」拡張子の偽装拡張子として、「.pif」「.scr」などがあります。

Linuxの場合は拡張子は特にありません。
「.bin」と付くものもあったりしますが。
 
 

〔「実行形式ファイル」と「データファイル」〕

さて、大雑把ではありますが、代表的なフォーマットのファイルについて説明してきましたが、マルウェア対策を考えた場合は、ファイルを次のように「大きく2種類」に分類して考えると良いかと思います。
1つは「実行形式ファイル」、もう1つは実行形式以外の「データファイル」です。
 
02__2
さて、この「実行形式ファイル」と「データファイル」。
ダブルクリックなどをしてそれぞれを「実行」させた場合、何らかのアプリケーションが起動すると思いますが、起動までの流れが微妙に違います

下図は「OS」と「ハードウェア」、「アプリケーション」の関係図です。

35_

「OS」は「ハードウェア」や「アプリケーション」とやり取りをして、すべてを管理しています。


図を細かく見ると、OSが2箇所書かれていますが、真ん中の枠の方はアプリ(パッケージ)やハードウェアとのやり取りを強調するために書いています。OSは結局のところすべてを管理しているので、全体を大枠でくくっています。

この図を使って以下説明をします。

 

【実行形式ファイルをクリックした場合】
例えば、ワードのショートカットアイコンや、スタートメニューのワードアイコンをクリックした場合、「winword.exe」が直接起動します。

21_win_r1

内部的には以下のようにユーザが直接ワードの本体プログラム(実行形式ファイル)を起動したことになります。

32_word_s
これが、作成済みのファイル、例えば「.doc」ファイルをクリックして「ワードを起動した」場合、流れが変わります。 
 
 
 
【データファイルをクリックした場合】
作成済みの「.doc」ファイルをクリックした場合、データファイルの内容が読み込まれた状態で「ワードが起動」します。

23_win_r2

内部的には、以下のような流れでワードが起動しています。

33_word__2
ワードの本体プログラム(実行形式ファイル)直接実行したのはユーザ自身ではなく、OS側です。
 
最終的に「ワード」が起動することには変わりませんが、この起動プロセスの違いこそが、ネット等からダウンロードした見知らぬファイルに対して「データファイルよりも実行形式ファイル(.exe)の実行の方が危険!」と言われる理由になっています。
 
 
マルウェア・ウイルス感染の原因(1):データファイル系』に続きます。
 
 
 
 
 
 








 

« 技術革新:"ついに来た"・・・量子コンピュータ商用化! | トップページ | KDE4.8:マウスのダブルクリック化 »

セキュリティ」カテゴリの記事

2021年5月
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          
無料ブログはココログ