スポンサーサイト

--/--/-- -- --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
スポンサー広告
ウイルス対策してますか?

日本はかなり対策が進んでいる国で、国別でWeb経由の脅威発生率は低いほうです(2010年の情報)。
これがウイルス感染率が低いというには早計ですが、機会が少なければ総数としても少ないだろうと思われます。
しかし、その日本でも標的型のウイルスに相当やられていたようで、「ウイルス対策ソフトだけいれていれば大丈夫!」という変な神話はなくなるでしょう。
(どうでもよいが日本はこの手の神話が多い(ex.日本の原子力は安全などの安全神話など)

さて、国外に目を向けると、コンピュータ隊員の要請内容にもよりますが場所によってはウイルスとの壮絶ないたちごっこを続ける事になります。

ここマーシャル諸島もそんな国の一つ。

ただ、他の途上国と様子が違うのは、「お金がある」ということです。
被援助大国なので、アメリカから莫大な資金が流れ込んできます。
そのため、自国での積極的な産業推進などをあまり行っておらず、これといって特に目立つ産業がありません。コプラ産業くらい?

そんなアンバランスな国なので、他のボランティアが派遣されている国で聞くような

・機材が古いまま
・OSはXPであれば良いほう。2000や98も使ってる
・故障したら部品の調達が困難

という苦労があまりありません。

新しいラップトップは(主にハワイからや通販で)どんどん入ってくるわ、OSは新規購入だからWindows7がどんどん入ってきます。Windowsだけじゃなく、MacからAndroidのタブレットまで見る事ができます。


ともかく、お金の事は除いてもウイルス感染が厄介ごとである事は変わりありません。
メインの感染源は、例に漏れずUSBメモリ。
ここからの感染を食い止められれば、全体的な感染率は下がっていくはずです(期待)。

さて、これまでwindowsXPでは有効なウイルス対策と言えば、

・ウイルススキャンソフトをいれる
・USBメモリの使用を禁止する

くらいしかなかったのですが、Windows7になるとまともに使えるウイルス対策ソフト以外の対策法があります。

その前におさらいです。

USBメモリ経由の感染には、大まかに2つの根本的な理由(脆弱性)があるからだと個人的には思っています。

一つはシステム的なもの。
OSのアップデートをしていない、USBメモリをさすと自動的にプログラムを実行する設定になっているなど、システム側の設定や脆弱性の問題を放置しているために起こるもの。
ここには、ウイルス対策ソフトを入れていない、定期的なスキャンを行っていないなども入ります。

もう一つは人為的なもの。
システム側での対策をしっかりしていても、人為的なミスによる感染です。
うっかりダブルクリックしてウイルスを実行した、ウイルスが仕掛けた罠(ウイルスが重要なファイルやフォルダに偽装していた)に嵌った、ウイルス対策ソフトが警告を出したのに「また誤検知か」「なんだかよく分からない」とそのままキャンセルしてしまったなど。

システム的なものは、パッチ当ててください、定期的にアップデートしてください、ウイルス対策ソフト入れてくださいとしかいいようが無いわけですが、そうはいってもそれがとても難しい地域もあります。


これから紹介するのは、Windowsの標準機能を使い、「システム側で人為的なミスを事前に排除しよう」というものです。

Windows7のProfessional以上のエディションではグループポリシーエディタ(gpedit.msc)が使用できます。
この設定の中に、「リームーバブルディスク:実行アクセス権の拒否」という項目があります。
これを有効にすると、USBドライブ上にある実行ファイルの実行が禁止されます。
英語表記では、「Removable Disks: Deny Execute access」です。
場所は「コンピューターの構成→管理用テンプレート→システム→リムーバブル記憶域へのアクセス」にあります。

Removable Disks: Deny Execute access


つまり、うっかり実行ファイルをダブルクリックしたり、フォルダだと思ってダブルクリックで開こうとしてウイルスを起動してしまうような事が事前に防げます。

弊害は、USBドライブから実行ファイルが実行できなくなる事。
これは、ポータブル版と呼ばれるようなUSBメモリにアプリケーションをインストールして、どのパソコンでも自分が利用するアプリケーションを使えるようにするものが使えなくなるということです。
(Firefoxのポータブル版やメールクライアントのポータブル版など)

もちろん、USBドライブ上での実行が禁止されているだけなので、デスクトップや内蔵のドライブにアプリケーションをコピーすれば通常通りに実行できます。

よく覚えて欲しい事なのですが、安全と便利さはトレードオフの関係にあるものが多いので、便利さを求めれば、それだけ安全性(セキュリティー)が下がる傾向にあります。逆に一手間を惜しまなければ、安全性を高める事が可能です。


本当に実行したいプログラムは内蔵のHDDにコピーして利用するという手間さえ惜しまなければ、ウイルスに感染したUSBドライブで、ワードドキュメントを開こうとして、又はフォルダを開こうとしてウイルスを実行するという危険性がぐっと下がります。


しかしgpedit.mscはWindows7のProfessional以上のエディションでしか利用できません。
一般のユーザーが使うような、StarterやHome Premiumはどうしたら良いのでしょう?


この場合でも以下のレジストリを追加する事により、全てのエディションで同等の機能を実現可能です。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\RemovableStorageDevices\{53f5630d-b6bf-11d0-94f2-00a0c91efb8b}]
"Deny_Execute"=dword:00000001



メモ帳などで適当な名前をつけて保存し(deny_excute_flashdrive.reg など)、ダブルクリックで追加し再起動すれば機能が有効になります。regedit.exeの使い方が分かる人はレジストリを直接編集しても良いと思います。

ではこのような機能がない、WindowsXPはもう手遅れなのでしょうか?
まだまだ任国でもメインのOSとして使われているため、WindwosXPでも同様な機能が実現できたらとても良いですよね?

完全ではありませんが、もしもWindowsXPのエディションがProfessionalなら設定は少しばかり面倒ですが、似たような事が実現可能です。

これにも、同じく「gpedit.msc」を利用します。
ただし有効にするのは、「ソフトウェアの制限ポリシー」というものです。英語表記では、「Software Restriction Policies」です。場所は、「コンピューターの構成→Windowsの設定→セキュリティの設定」にあります。

最初の状態では有効になっていないので、ソフトウェアの制限ポリシー上で右クリックし、「新しいソフトウェアの制限ポリシー」を選択します。

gpedit.msc


まずEnforcementの設定を変更します。デフォルトでは、「Apply software restriction policies to the following users」という項目が「All users」となっています。ここを利用状況にあわせて以下のように変更します。

・通常使うユーザーのグループが「制限ユーザー」など管理者権限が無い場合→「All users except local administrators」を選択
・普段からAdministratorグループのアカウントを使用している場合→「All users」を選択

これを機会に普段利用するユーザーは原則「制限ユーザー」などの管理者権限が無いものにする事をお勧めします。

Apply software restriction policies to the following users


次に新しい禁止ルールを作成します。「Additional Rules」で以下の「New Path Rule」を設定します。

New Path Rule


E:\*.exe
E:\*.com
E:\*.pif
E:\*.lnk
E:\*.inf
E:\*.scr

F:\にも同様なものを設定


ただしドライブ名は環境に依存します。実は、この設定はドライブを固定で設定するので、全てのUSBドライブ上で禁止の設定ができるわけではありません。
ただ、利用状況から考えて、通常の使用であればUSBドライブは同時に2つくらいを接続する事が想定されるので、たとえばパソコンにHDD(Cドライブ)とDVDドライブ(Dドライブ)があった場合、EドライブとFドライブで禁止の設定を行います。上の例はこのような状況を想定しているので、たとえばCドライブしかないパソコンでは、DドライブとEドライブで設定すると良いと思います。
また禁止する拡張子は上記のものだけではなく、危険な拡張子としては、.EXE .COM .BAT .CMD .PIF .SCR .VBS .VBE .SYS .HTML .JS .JSE .WSF .WSH などがあるので、その国で流行しているウイルスにあわせて追加したりします。もちろん全部加えてもOKです。

このようにする事で、うっかりUSBドライブ上のウイルスをダブルクリックで開こうとしても、該当する拡張子を持つものはUSBドライブ上では実行がブロックされます。フォルダアイコンに偽装したウイルスも、リンクファイルのソースがウイルスでもブロックしてくれるので安心です。
これも先の「リームーバブルディスク:実行アクセス権の拒否」と同様にローカルのHDDにアプリケーションをコピーすれば普通に実行されます。またドライブ名を禁止対象となっているもの以外に変更すると、同様に制限無く実行できるようになります。


ではWindowsXPのHomeエディションではどうなのか?という事になりますが、残念ながら方法を見つける事ができませんでした。少し専門的な事を言うと、レジストリの場所は分かっているのですが、設定するパスごとにGUIDを求めなければならずちょっと設定が大変そうだったからというのがあります。GUIDを生成するツールはあるようなので、誰かチャレンジしてくれないかな・・・
正確には、Proからレジストリの移植という方法をすぐに思いついたのですが、何台か試したらきちんと動作しないPCがあったので、環境によって正常に動作したり動作しなかったりで、はっきりとこれだ!といえないからです。参考にリンクを足しておきましたが、根本的には私の方法も全く同じものです。今見てみると、RLOの偽装についてはすでに知っていたので、自分で見つけたと思っていたけど、どこかで解法をみていたのかなぁ。


無償で、「USBドライブ上で実行ファイルを禁止する」というソフトウェアがあれば一番手軽で良いのですが、私が見つけられたものは、日本語のみ。

USBウィルス対策ソフト PAK (パック) フリー版

隊員のパソコンに入れるには簡単で良い上に機能も十分なのですが、現地で使うとなるとメニューやマニュアルは英語である必要があるので、すぐには使うことができません。しかし、もし作者に連絡を取り英語化できたのなら、任国でのウイルス事情も大きく変わるかもしれません。





最後にウイルスに感染したUSBドライブをウイルススキャン以外で救出する方法。

ウイルスの中には、ファイルを全て改変するものや削除してしまうものもありますが、こちらでは元のファイルやフォルダを非表示にして、ユーザーから隠し、代わりに偽のダミーファイルやフォルダを用意して(これがウイルス本体だったり、本体へのリンクだったりする)、ユーザーが間違えて実行するのを待つというものがほとんどです。

この場合、元のドキュメントなどのファイルはまだあるわけなので、簡単なコマンドを使い救出します。
ついでにウイルスと思わしきものも削除してしまいます(ただし、ウイルスではない実行ファイルも削除される)。
まずコマンドプロンプトでUSBドライブのルートディレクトリに移動し、次のコマンドを実行します。

attrib -s -h -r /s /d
del /f /s *.exe
del /f /s *.lnk
del /f /s *.scr
del /f /s *.pif
del /f /s *.inf



削除する拡張子は、好みに合わせて.EXE .COM .BAT .CMD .PIF .SCR .VBS .VBE .SYS .HTML .JS .JSE .WSF .WSH などを使用します。私のところでは上のもので大体事足りています。バッチファイルを作成しても良いですが、USBドライブに移動する前に間違って実行してしまわないように注意してください。最悪、システムの重要安ファイルが削除され、起動不能に陥ります。



<参考>
Group Policy Settings Reference for Windows and Windows Server
http://www.microsoft.com/download/en/details.aspx?id=25250

第10回 Windows 7ならできる、もう1つのUSBメモリ対策
http://www.atmarkit.co.jp/fsecurity/rensai/tipstoday10/tips03.html

chuukaiの日記: XP,Vista,7のHOME Editionにsecpol.mscがないから
http://slashdot.jp/journal/541831/XP,Vista,7%E3%81%AEHOME-Edition%E3%81%ABsecpol.msc%E3%81%8C%E3%81%AA%E3%81%84%E3%81%8B%E3%82%89

実行させたくないアプリケーションを指定する
http://www.losttechnology.jp/Tips/disallowrun.html

RLOでの拡張子偽装に注意(ウィルス対策)2
http://hakkakudo.exblog.jp/5957285

葉っぱ日記
http://d.hatena.ne.jp/hasegawayosuke/20061222/p1

[HOWTO] Windows 2000 で特定の Windows プログラムの実行を制限する方法
http://support.microsoft.com/kb/323525/ja

Windows XP Home Edition: gpedit.msc (group policy) editing via registry
http://bogdan.org.ua/2007/11/15/windows-xp-he-home-edition-gpedit-msc-group-policy-editing-via-registry.html

WindowsXP HomeをPro化してリモートデスクトップを有効にする方法
http://nosa.cocolog-nifty.com/sanonosa/2009/12/windowsxp-homep.html

セキュリティ | コメント(0) | トラックバック(0)
コメント

管理者のみに表示

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。