新米Linuxユーザへの一言アドバイス――アンチウィルスソフトは不要です
Windowsをそこそこ使い込んだユーザであれば、集中治療室で生命維持装置を注意深く監視する担当看護師よろしく、ウィルスチェッカには常に目を光らせ続けていることだろう。たいていの場合、Windowsのセキュリティ関連で交わされる話題は、本日の流行マルウェアないしは現時刻において蔓延中のマルウェアをどの有料ウィルス防御業者が一番最初に検出して対策パッチをリリースしたかというものである。また月曜日のオフィスにおける出勤一番の世間話といえば、自分がひいきにしているスーパーボールチームの勝ち負けが定番どころだろうが、ある種の人々にとっては、ウィルスチェッカによるマルウェア検出トトカルチョの配当金の行方になっているかもしれない。
だがWindowsの防御壁に潜む空隙をひとたび有害なプログラムに突破された場合は、上納金を納める見返りに地元のマフィアによそ者の排除を依頼するがごとく、ウィルス防御業者の人間に有償によるマルウェアの検出と駆除を依頼することになる。こうして感染1件あたりに200ドルもの大枚を支払う羽目に陥ったあなたは、マルウェア対策は不可欠だという事実を再認識させられるだけならまだしも、こうした業者の力を借りることこそが最も有効な防御策であると思いこまされることになるのだ。その辺の事情はマルウェア対策をメシの種としている業者側も心得ていて、セキュリティに対するWindowsユーザの不安感と、そこから生じる過剰心理につけ込んだ広告戦略を繰り広げている。また実際にWindowsユーザ側もマルウェアの出現報告や侵入された体験談を日常的に耳にしているため、安全保障費の一種だという感じで、半ば条件反射的にこうした費用を支払ってしまうのである。
こうした状況が当たり前であるWindowsという世界からLinuxという自由な世界にたどり着いたばかりのユーザが、「アンチウィルス用のソフトは不要です」と説明する私を不信のまなざしで見つめるのも仕方のないことであろう。こうした人々が、こちらの世界では無用な負担は背負い込まなくて済むのだという事実を理解しようとしないのは、気休め程度のセキュリティを得るのに上納金を支払うのは当然と思うようになっているからに他ならない。
私の場合、Linuxでそうした上納金を納める必要がないことを説明する際は、ファイルパーミッション(アクセス権)というシステムについて説明することにしている。ウィルスやトロイの木馬とは何かという本質を外れた議論は不要であり、「これらのマルウェアは、あちらが必要とするファイルパーミッションをこちらから与えてやらない限り、悪さをすることはできません」と説明するのだ。
Linuxにおけるファイルパーミッションとは、各ファイルに対する、読み取り、書き込み、実行という3つの権利を規定するもので、こうした設定はシステム全体に適用される。またファイルパーミッションについては、root権限を有す特別なユーザ、サインイン中の各ユーザ、その他すべてのユーザ(world)という3種類のユーザレベルも関与してくる。そして通常、システム全体に影響を与えるようなソフトウェアは、root権限がなければ実行することができないのである。
これに対しMicrosoftによるWindowsの設計では、外部の人間でもシステム内のソフトウェアを実行できるようになっている。こうした仕様を擁護する同社の説明は、外部からデスクトップを操作することで“クール”なユーザエクスペリエンスをもたらすタイプのWebサイトも存在し、こうした設計のおかげで“リッチ”な機能を実現できているのだというものである。だが現実問題として、こうした設計思想の恩恵を受けて“リッチ”になっている最大のユーザといえば、泥縄式のセキュリティ策を提供したり、損傷したシステムを復旧することで一稼ぎしている連中だというのは今では明白な事実であり、そもそもこうした脅威はそのようなWindowsの仕様によってもたらされているのである。
Windows世界におけるマルウェアの感染経路といえば、電子メールクライアントやWebブラウザないしはIMクライアントが窓口となるのが一般的である。これらのプログラムは、マルウェアという毒入りリンゴをすんなりと受け入れて、各自のシステムに格納してしまうのだが、そうしたマルウェアに不正行為をさせる上で制作者が前提としているのは“ファイルパーミッションが無くても実行できるはずだ”ということである。
確かに一部のマルウェアには、添付ファイルをユーザが開かない限りプログラムとして動作しないものがある。だが一方で、そうしたユーザの誤判断が無くても勝手に動作するマルウェアも存在しているのだ。いずれにせよWindowsを狙ったマルウェアが何らかの手段で起動されてしまうと、まずはそのシステムを汚染し、その次は他のシステムへと感染の手を広げていくのである。よくよく考えてみれば、実にあぶなっかしい防疫態勢でつながっている世界であり、そうした環境と無縁でいられる自分はつくづく幸運だと思うくらいだ。
それに対してLinuxという世界では、最初からこうした行為に対する防御機構が設けられているのである。電子メールクライアントやWebブラウザ経由で入手されたばかりのファイルについては、実行権限が与えられないようになっている。また無害なファイル名を装うという巧妙な手口が使われているケースもあるが、Linux系アプリケーションはファイルの属性を拡張子だけで判断したりはしないので、こうしたマルウェアを誤って起動させてしまう可能性も極めて低い。
こうしたファイルパーミッションという概念を新規ユーザが理解できるか否かはまちまちだが、いずれにせよ私が解説をする際には、Linuxという環境を選択した以上、マルウェア対策の安全保障費を先払いしたり、システムが感染した後での治療費を後払いする必要はないのだという点を説明するようにしている。
それでは、Linuxであれば絶対に安全確実なのかというと、そういう訳でもない。“絶対に安全確実”という状態は、酒が入った席でのホラ話を除けば、セキュリティ関連の世界においてありえる話ではないからだ。Linuxのユーザであろうが、その他のオペレーティングシステムのユーザであろうが、セキュリティを確保したければ、常に注意を払い続ける必要がある。セキュアなシステムを維持するために必要なのは、軽率な行動を避け用心深く行動することだ。例えば、root権限を必要としないプログラムをroot権限で実行するべきではなく、セキュリティパッチについても定期的に最新のものを適用するようにしておくべきである。
ユーザの危機意識を無用に煽ったウィルス防護業者による誇大広告が世間には氾濫しているが、Linuxというプラットフォームをマルウェアの脅威から守る上で、そうしたアンチウィルス製品などは特別必要としないことを心得ておけばいいだろう。