Windows XPのセキュリティー更新が、2014/4に終了する予定ということで、それ以降もWindows XPを使い続けることに漠然と不安を持っている人が多いようです。
過去にパソコンへの侵入とセキュリティーに関連したメモを何件か残しているため、検索エンジンからこのメモサイトを訪問する人がいるようですので、今回はWindows XP とマイクロソフトのサポート終了との関係について書きたいと思います。
今回のセキュリティー更新終了というイベントですが、Windows XPというOSはOSリリース時期が10年以上前の割には現在も利用者が多いOSであるというだけで、どのOSにも訪れるただのサポート終了時期です。
われわれは既に何度もそのイベントを体験しており、冷静に対処すればよいだけのことです。
- Windows 98やWindows 2000 などの旧OSを今使うことは危険ですか?
今使っている人はいないと思いますか? - Windows 7 や Windows 8 PCを使っていれば、ウィルスが侵入したり、情報を盗まれたりすることはあり得ないと思いますか?
そう、もう答えは出ているわけです。
マイクロソフトは、自社に都合よく舞台を整えて新しい製品を買えと促します。新しいWindows OS搭載のPCを作ったり販売しているメーカーも、Windows XPユーザーの不安心理を利用し利益を得ようとマイクロソフトの作戦にのっかっています。それは、ユーザーが WindowsXP を使い続ける限り自社のものが売れないからであって、ユーザーの都合を考えての話ではないことは、誰が主人公なのかを考えればわかる話です。
「セキュリティー更新が終了→危険→新しいOSに移行」 という論理は、あまりにも短絡的です。OSなんてアプリケーションを動かすための脇役に過ぎません。多くのユーザーは、電子メールやWebブラウジングを行いたいからPCを使う、年賀状や暑中見舞いを書いて印刷したい、近所に回すための回覧板を作るためにワープロを使う、お気に入りのゲームをプレイしたいからそれを動かすことが出来るパソコンを使うわけです。ほとんどに人はWindowsを管理したくてパソコンなんて買いません。OSごときが、もうセキュリティー対策パッチをリリースしないから買い替えろなんてふざけている話です。
必需品アプリケーションに機能不足を感じている、アプリケーションの新しい機能をフルに使ってみたい、新しいゲームを使いたい、こういう場合にアプリケーションの調達に合わせてOSも更新するのが普通だと思います。
しかし、Windows XP上で利用しているのは電子メールとWebブラウザーだけで、アプリケーションは全てWebブラウザーからアクセスするWebサーバー上のものを利用するような端末的な用途の場合、WindowsXPに価値はありません。
OSを供給するメーカーには、ユーザーの立場を尊重した行動をとってもらいたいものです。ユーザーにとって一番ベストなのは、自分がWindows XPを使っている間はXPのサポートを続けてくれるということですが、メーカーもビジネスですから、利益を生まなくなった製品のコストが掛かるサポートを無制限に続けるのは無理な話です。賢い会社なら、OSをバージョンアップしても同じ使い勝手で習得期間が数10分程度で済み、アップグレードコストも安く済むものを供給するところですが、マイクロソフトのように傲慢で身勝手な製品を作ると、バージョンアップするには多大なコストが掛かり、使い心地も大幅に変わり操作習得期間が大幅にかかるようなクソOSを市場に投入し、しかもユーザーに受け入れてもらえないという失敗を繰り返します。
しかし、セキュリティー更新終了を迎えている大量のWindows XPが市場にあるのは現実なので、これらのユーザーにどういうアクションを取るべきなのか、適切な情報を開示することがOSメーカーとしての義務のはずです。
大量のWindows XP PCがあるからといって、利用方法が大量にあるわけではありません。用途を分類し、それぞれについて検討してゆけばよいわけです。
- サーバー
- ファイルサーバー、プリンターサーバー
- メールサーバー
- Webサーバー
- データベースサーバー
- スタンドアロン
- デスクトップ作業用
- 端末として
- ゲーム
- オーディオ・ビデオ・プレーヤー
- 開発作業
- 組み込み
- 業務用端末
- プリンター
- 計測機器
簡単に思いつくものをピックアップしたところ、こんな用途を思いつきました。ただし、組み込み用途は産業製品であるためここで考える必要はないでしょう。大まかに分けると、複数利用者がいるサーバー用途と、一人だけが占有して利用するスタンドアロン用途に分けられそうです。サーバー機能とスタンドアロン用途を同時に利用している人がいるかもしれませんが、その場合は考えるべきポイントが増えます。まずは、サーバー用途とスタンドアロン用途に分けてどんな脅威があるかを考察すれば良いことになります。
次に、(Windowsに限らず)パソコンを使っているとどんな脅威が存在しているのかということも考えます。
- 動作不良が起きる
- データを外部に盗み出される
- 踏み台、侵入経路として利用される(知らぬ間に加害者になってしまう)
- これらの複合脅威
現時点で特に被害が大きいのが2のデータ流出です。顧客個人情報が漏れてしまったとすると被害額は最悪。1の動作不良は、ウィルスにやられてしまうのは悔しい話ではありますが、機械であるパソコンですから結局いつかは壊れたり修理が必要になったりします。やむを得ない出来事と割り切ってしまえば、小さい被害に分類されると言えます。3は物理的な被害としては軽微と言えますが、パソコンが乗っ取られているということですから状況としては最悪と言えます。気づかずにいると刑事事件の被害者と加害者の両方になってしまうことがあります。世界中のコンピュータに被害を与えているボットネットワークはこの状態のコンピュータが利用されていると考えられています。この3の状態は姿が見えない犯罪者がパソコンの前に座って勝手に操作しているのと同じ状況です。
さて、次はパソコン脅威が侵入する方法を考えます。
侵入ルート
- サービスポート:ファイル共有、プリンター共有、リモートアクセスなど、サービスを提供するため外部に開かれているネットワークポートから盗んだパスワードなど正式な手順や破壊コードを送って侵入する。
- バッファーオーバーフロー:ユーザーが使用するネットワークプログラムのセキュリティーホールを利用して侵入する。例えば、Webブラウザーやプラグインに、侵入コードが埋め込まれたWebページをアクセスさせたり、電子メールのHTMLビューアーが誤動作するようなコンテンツを送りつけたりして、不正アクセスツールをダウンロードさせてしまう。主にIEのセキュリティーホールを使って侵入ツールを忍び込ませる。
- ソーシャル:ユーザー自身が不正アクセスツールをインストールしてしまうようにしむける。
- オフライン:ウィルスに感染したフロッピーディスク、USBメモリー、CDやDVDなどの光学ドライブから侵入する。
のいずれかです。不正ツールの侵入ルートはこれだけしかありません。
日本の場合、JPCERTという組織が最新セキュリティー情報を発表していますので、私はこのサイトの情報を利用させてもらっています。本メモを書いている時点で、「深刻」と発表されているセキュリティー情報の一つを開いてみます。
たとえば、http://www.jpcert.or.jp/at/2013/at130044.html の場合、「Microsoft Graphics Component には未修正の脆弱性があります。結果として遠隔の第三者は、細工した TIFF 形式の画像ファイルやそれを含む MS-Word やMS-Excel などのファイルをユーザに開かせることで、任意のコードを実行させる可能性があります。」とあります。
さて、どんな侵入ルートでパソコンに入り込むのでしょうか?
文章を読むと、「なんらかの侵入コードを埋め込んだグラフィックスファイルを特定のアプリケーションで開いた場合、侵入用のプログラムを動かすことが出来るようになる。」ということのようです。では、そのグラフィックスファイルはどこからパソコンに入ってくるのか?
私の推測では、上記1のサービスポートからの侵入はあり得ません。可能性としては、2と3ですが、感染は2のバッファーオーバーフローを使うようです。
次に、http://www.jpcert.or.jp/at/2013/at130045.html のドキュメントを見てみます。
これは、「Internet Explorer 用の累積的なセキュリティ更新プログラム」「Windows Graphics Device Interface の脆弱性により、リモートでコードが実行される」「ActiveX の Kill Bit の累積的なセキュリティ更新プログラム」の3件です。
これらも、感染ルート2が侵入ルートになります。
このサイトのWindows関連のセキュリティー情報を見て行くと、「Microsoft XXXXX の脆弱性により、リモートでコードが実行される」という記述が多いことに気がつきます。別の表現を使うと、Webブラウザーを使ってWindowsを攻撃しようとしているサイトをアクセスしたり、電子メールに添付されているファイルを開いたりすると、危険だということです。これは感染ルート2と3による感染が現実に最も可能性が高いということです。
マイクロソフトのセキュリティー更新終了後に侵入に関係する箇所に脆弱性が見つかった場合、修正されませんからどんな侵入ルートがあるのかを事前に確認しておく必要があります。
Windows XPの用途と脅威の侵入ルート・対策をマトリックスで考えます。
サーバー | スタンドアロン | |
サービスポート | A | B |
バッファーオーバーフロー | C | D |
ソーシャル | E | F |
オフライン | G | H |
サービスポート
サービスポートの確認方法
Windowsのコマンドプロンプトを開いて、「netstat -a -p tcp」 コマンドを発行したとき、
TCP atomD330:smtp *.* LISTENING
のように、「ホスト名:サービス名 *.* LISTENING」となっているところがサービスポートです。ここから正規のアクセス方法や不正コードで侵入します。
A. サーバーとして使用しているWindows XPの場合、サービスポートを開いているのが、OSの機能(ファイルサーバーやプリンターサーバー)であるならばセキュリティー更新終了後、マイクロソフトのサポートはありませんから、ファイヤーウォールによるアクセス制限とロギングを丁寧に行いログを頻繁にチェックする。アンチウィルスソフトを導入しステータスを細かくチェックするなど公開サーバーを運用する場合に当然行うべき管理が必要になるでしょう。アプリケーションの機能(メールサーバー、データベースサーバー、Webサーバーなど)によるサービスポートは、そのアプリケーション供給メーカーのサポート体制に依存します。
更新終了以降、使っているサービスにセキュリティーホールが見つかってしまった場合は、その内容にもよりますが、ファイヤーウォールで利用範囲を限定するか、サービスを停止するしかありません。上記JPCERTのメールマガジンに登録してセキュリティー情報を受け取るなど自衛が必要になります。
また、WindowsXPに依らず、正規利用者が悪意を持ってサーバーを侵そうとする場合は対策が困難ですから、内部利用者の利用状況も記録しておく必要があります。
B. スタンドアロンとして使っているなら、TCPサービスポートを開く必要はありません。意図していないポートが開かれた状態ならば、そのサービスを停止すべきです。ポートを開かない限りそこからの侵入は起こりえませんから、サポート終了後もここからの侵入を心配する必要はありません。
なんらかのネットワークポートを開く場合は、サーバーとなりますので、上記Aとなります。
バッファーオーバーフロー
バッファーオーバーフローとは、IEなどの何らかの外部データを読み込んだあとで動作をおこなうアプリケーションに対して、改造を施したデータを読み込ませ、本来データの格納に使うパソコンのメモリー領域で無理矢理プログラムを実行させる方法です。つまり、本来動作していたプログラムがいつのまにか別のプログラムに代わってしまうという侵入方法です。侵入プログラムは乗っ取ったプログラムの権限で動作しますから、乗っ取られたプログラムの権限が管理者権限の場合はダメージが最大になります。逆に制限ユーザーが起動したプログラム、例えばワードパッドやペイントをバッファーオーバーフローで乗っ取ったとしても、制限ユーザーが触れることができる範囲のことしか出来ませんから、書き込みによる破壊行為は起こしにくいと考えられます。しかし読み出しは自由のことが多いため、データ流出に関する脅威は残ります。
C. システム管理を行うための操作ですから、管理者として実行する必要があり、万が一管理作業中に侵入コードを含むファイルを開いてしまった場合の被害は甚大です。
リッチテキスト系のファイルを開いたり、WebブラウザーなどのHTMLビューアーで不正コードを埋め込んだファイルを開くという操作で、感染が起こります。従って、サーバーとして使用しているWindows XP上では、1)身元がはっきりしないファイルを開くこと、2) IEを使う、3) メールソフトを使う、4) 動画ファイルを再生する など基本的にサーバー上で行う必要がない作業は厳禁というルールで運用する必要があります。インターネットへのアクセスは事前に別のパソコンで処理した後に行うという行動が必要です。セキュリティー更新が終了した後も身元がはっきりしないファイルを開かない、直接IEでネットワークの向こうにあるファイルをブラウズしない限り脅威はありません。
それが出来ないのであれば、別のOSを使うことになります。
D. 厳しい話ではありますが、Cと同じく、1)身元がはっきりしないファイルを開くこと、2) IEを使う、3) IEをビューアーとして使うメールソフト(Outlookなど)を使う、4) 怪しいサイトからダウンロードした動画ファイル、音声ファイル、写真を開く、5) メールに添付されてきたファイルをウィルススキャンを通さずに開く ということが危険な操作と言えます。こういう操作がパソコン上で行ってはいけない行為となるならばパソコンを使っている意味が無くなります。対策としては、1) 通常オペレーションはプログラムを乗っ取られても影響範囲が小さい制限ユーザーで利用する。2) IE以外のブラウザーを使う。3) Microsoft以外のメールソフトを使う。4) DPEを使う(コントロールパネル→システム→詳細設定→パフォーマンス→データ実行防止→「次に選択するものを除くすべてのプログラムサービスおよびサービスについて DEPを有効にする」を使う。DPEが有効に機能するのは64bit CPUを使っている場合のみで、DPEに対応していないアプリケーションもありますが、うまく使えばバッファーオーバーフローによる被害を防ぐことができます。)ということで運用するのが最善でしょう。Windows XP PCの利用方法にもよりますが、大半のパソコンはこの範囲で十分使えると推測します。
ただし、侵入が成功した場合のファイルの読み出しは防ぐことが出来ません。データ読み出しを防げるのはDPEに対応した64bit CPUを使っていて、DPEを有効にしている場合だけですので、外部流出したらまずいファイルをPC上に起きっぱなしにするような使い方をするなら、Windows XPは使わない方がいいでしょう。
ソーシャル
アクセスすると不正アクセスコードを埋め込んだプログラムを送ることが出来て、パソコンを乗っ取ることが出来るURLに、パソコン使用者を導いてクリックさせようとする手口で、バッファーオーバーフローを引き起こして乗っ取る場合や、普通にプログラムをインストールさせる場合があります。最近よく聞く「標的型」の侵入方法に使われる方法で、防御方法はパソコン利用者の良識だけです。セキュリティーパッチの更新が続いたとしても防ぐことは出来ません。そもそも不正プログラムと正規プログラムの間に明確な線引きは出来ません。例えば、トレンドマイクロのアンチウィルスソフトは確かにウィルスの侵入をモニターして防いでくれますが、スパイウェアでもありユーザーがアクセスしたURLを自社サーバーに送っています。VNCのようなリモートデスクトッププログラムなんて、動作としては遠隔操作プログラム・バックドアそのものですが、非常に役に立つプログラムです。ちゃんとした動作もするが、パソコン情報を盗み出すというプログラムを不正プログラムと判断するかどうかの線引きは簡単ではありませんから、アンチウィルスソフトが不正アプリケーションとして認識しない場合も多々あるわけです。
E. インターネット上の人気掲示板、ブログ、電子メール、迷惑メール、ビジネスメール、チャットメッセージなどに偽の身分で情報URLを貼り付け、興味を持たせてWebブラウザーで表示させたり、ダウンロードさせて侵入を行う方法です。サーバー上ではインターネット上の情報をアクセスしないというローカルルールによってある程度防げますが、別のパソコンでマイクロソフトからパッチだと思ってダウンロードしたプログラムが、実はマイクロソフトのサイトに似せたマクロソフトソフト(仮称)のサイトからダウンロードしたウィルスプログラムだったという場合は、スコンと侵入されてしまいます。例としてマイクロソフトと書きましたが、有名ソフトに似せたドメイン名はたくさんありますから、URLフィールドに直接タイプする場合誰でも一度くらいミスタイプするものです。これは防御しようがありません。アンチウィルスソフトが検出してくれることを期待するだけですが、誰かがウィルスとして認知するまでは検知できないでしょう。
F. 基本的にはEと同じですが、スタンドアロンパソコンでは、制限ユーザーで利用することである程度防ぐことが出来ます。しかし、正規の更新ドライバーやパッチだと思ってダウンロードしてしまったら、制限ユーザーで利用していたとしても、インストール作業にともない管理者にスイッチしてインストールすることになりますから、技術的な対策は意味がありません。こちらもアンチウィルスソフトが検出してくれることを期待するだけですが、誰かがウィルスとして認知するまでは検知できないでしょう。
上記 E.F. は、OSがWindows7だろうと8 であろと、XP であろうと同じです。オレオレ詐欺、振り込め詐欺と同じですから、オペレーターが冷静であること以外の対策はありません。半年くらい前にニュースになった「遠隔操作ウィルス事件」で、ユーティリティプログラムだと思って掲示板のURLからダウンロードして入れたら遠隔操作プログラムだったという話と同じです。
防ぐには、インターネットの仕組みを理解し、怪しいサイトには近づかない、便利で無料のサービスには必ず裏があるという意識でネット利用をするという姿勢を忘れないことしかありません。
また、インターネットサイトからダウンロードやメールに添付される形で取り込んだドキュメントファイルは絶対にダブルクリックして開かない、先に自分のアプリケーションを開いた後、「ファイル→開く」で選択して開くことにより、拡張子を偽って添付される「filename.pdf.exe」のような侵入を目的としたファイルを間違って開くことを回避できます。
オフライン感染型
フロッピー、USBメモリ、CD-Rメディアなど外部記憶デバイスから感染するウィルス。
G. 20年くらい前は主流はオフラインによる感染でしたが、今は耳にしなくなった感染方法です。挿入したメディアを自動再生するオプションをOFFにしておくこと(レジストリの編集)と、アンチウィルスソフトにより対策可能です。セキュリティー更新終了とは無関係です。
H. 上記Gと同じ。
私が考える典型的なパソコン利用方法に関して、上記の通り、Windows XPの利用方法と不正プログラムの侵入経路、その対策を考えてみました。結局、セキュリティーパッチ更新が続いたとして、それで防ぐことが出来るのは一部の侵入ルートだけだということがわかると思いますし、恐いのは標的型に代表されるようにパソコン利用者をだましてインストールさせる方法だということです。パソコンの利用方法を限定すればマイクロソフトのセキュリティー更新終了後もWindows XPを今後も使い続けることもできると思います。しかし、作業が煩雑になったり、IEやOutlookを今とても気に入って使っているなら、それらを使っちゃ駄目といわれるのはつらいことでしょう。IEやMicrosoftのメールソフトを使いたいなら、OSを更新するしかありませんし、不要ならWindowsXPを使い続けることも出来るということです。どのWindows Vista, 7, 8 を使ったとしても完全に安全に利用できるわけではありません。
遠隔地からの侵入ばかり書いてきましたが、それ以上に危ないのは、悪意がある隣の席の人による盗聴です。画面をそのままにしてトイレに行っている間に画面を撮影されてしまったら? パスワードを入力している様子をパーティションの上にちょこっと置いてあるUSBカメラで撮影されてしまったら?メールサーバー管理者は管理しているサーバー上のメールを見ようと思えばなんの制限もなく除くことが出来ることをご存知ですか?OSを更新したからといって脅威が無くなるわけではなく、若干小さくなるだけです。
最終的には費用と使い勝手のトレードオフということです。
まとめ
私が提案できる、セキュリティ更新終了後も比較的安全にWindows XPを使い続ける方法は、以下の通りです。
- ファイル共有やプリンター共有などの外部からの接続を許可するサービスを全て停止する。
- IEを使わない。IEをビューアーとして使うメディアプレーヤー、Outlook などのアプリケーションを使わない。
- ソフトウェアのインストールや更新作業時以外は、すべてシステム領域への書き込み権限がない制限ユーザーで使用する。
- ソフトウェアのインストールや更新などの管理者権限が必要な作業は、管理能力がある担当者が行う。
または、システム管理のトレーニングを受けて、必要なときだけショートカットアイコン右クリック→「別のユーザーとして実行」で管理者として実行する。 - コントロールパネル→システム→詳細設定→パフォーマンス→データ実行防止→「次に選択するものを除くすべてのプログラムサービスおよびサービスについて DEPを有効にする」を使う。
これだけやっても、ソーシャルによる侵入には無力というか、Windows Vista以降のOSでも同じですから、危険を遠ざけるにはパソコンとネットワークに関する知識を身につけて常に冷静にパソコン操作するよう心がけるしかないということです。利用者のネットワークやパソコンツールに関するスキルアップが常に必要になります。
愛機だと名残惜しいのは確かですが、Windows7 / 8のパソコンが4万円あれば買える時代なので、省エネやハードウェア故障する前に買い換えるなどしてもいいかもしれませんね。
パソコン自体が故障したり、パフォーマンス不足になってきて新しいパーツが必要になるなど、いずれにせよ出費が必要なら、一般の人は修理してまで古いPCを使う必要は無いと思います。
ペーパーレスFax専用マシンとして動いているような場合は、悩むところでしょう。