Windows TIPS ディレクトリ

セキュリティ

更新日:2006/03/31

 サブディレクトリ
 セキュリティ
クライアント・コンピュータのパッチ適用状態を集中的に調査する(MBSA)
マイクロソフトは、コンピュータへのパッチの適用状態、セキュリティ上の弱点などをリモートから調査するGUIツール、Microsoft Baseline Security Analyzer(MBSA) 1.2の無償提供を開始した。 / これを利用すれば、複数のクライアント・コンピュータのパッチ適用状態を集中的に管理することが可能になる。
クラッキングを手助けする“Rootkit”ツールを検出する
本格的なシステム・クラッキングでは、長期間にわたってシステムのセキュリティ・ホール調査などが行われる。 / こうしたクラッキングを効率的に行うためのツール集がRootkitで、さまざまなRootkitがアンダーグラウンドで流通している。 / 重要度の高いサーバなどでは、Rootkitが仕込まれていないかどうかを定期的に調査したほうがよい。 / Rootkit検出用の無償ツールが利用できる。
リモート・コンピュータ上の.CHMファイルを表示させる
セキュリティの強化により、デフォルトでは、リモート・コンピュータ上の.CHMファイルを表示することができなくなっている。 / これはHTMLヘルプの脆弱性によってリモート・コードが実行されないようにするための制限である。 / この制限を緩和するためには、レジストリの設定を変更する。
USB大容量記憶装置ドライバを無効にする
手軽なデータ移動デバイスであるUSBメモリは、それゆえ簡単に機密情報を盗まれる心配も高い。 / Windows XP SP2からの新機能で、USBメモリへの書き込みを禁止することが可能になったが、OSが限られるうえに、読み取りは制限されない。 / 必要なら、読み取りも含めて、USBメモリの使用を全面的に禁止することができる。
DHCPによる未許可クライアントへのIP割り当てを禁止する
DHCPサービスを利用すると、TCP/IPの設定を自動的に行うことができる。 / デフォルトでは、どのようなクライアントでもIPアドレスを取得してネットワークに接続することができるが、可能ならば、あらかじめ許可されたコンピュータだけにIPアドレスを割り当てるようにしたい。 / これを行うためには、IPアドレス・プール中のすべてのIPアドレスを除外範囲に含めておくとよい。そして許可したいコンピュータのIPアドレスとMACアドレスの対をすべて予約として定義する。
リモート・デスクトップで目的のコンピュータに素早く接続する
リモート・デスクトップ機能を使うと、リモートのコンピュータにログオンして、GUI操作を行うことができる。 / リモート・デスクトップ接続の設定をファイルに保存しておくと、クリックするだけで自動的に接続できるようになる。 / だがセキュリティの面から見るとこれは危険なので、パスワード指定は空欄にしておくか、サーバ側でパスワードの入力を強制するように設定しておくとよい。
離席時に簡単にコンピュータをロックする方法
ちょっと離席した隙に端末を操作されては困るときには、コンピュータのロックを行う/Windows XPでは、[Windows]+[L]キーで素早くロックすることが可能/ドメインに参加していないWindows XPでは、[コンピュータのロック]ダイアログではなく、「ようこそ」画面が表示される。
Administratorとは?
Windows NT系OS(NT/2000/XP)では、複数のユーザーが1台のコンピュータ資源を共有する可能性も踏まえ、ユーザーごとに異なる権限を与えて使用させることができるようになっている/デフォルトの管理者アカウントはAdministratorであり、パスワードはWindowsのインストール時に指定する/初心者を意識して、Windows XPでは、Administratorアカウントが可能な限り隠蔽され、これを意識しなくてもWindowsを使えるようにされた。
セキュリティ・パッチを適用する
システムに重大なセキュリティ・ホールや障害が見つかると、セキュリティ・パッチという緊急の修正モジュールが提供されることがある/システムを安全に保つためには、常に最新のセキュリティ情報を収集するように努め、必要ならばパッチを適用しなければならない。
セキュリティ・パッチの3つのレベル
セキュリティ・ホールなどが発見されると、これに対処するためのパッチが公開される/しかし同じ問題を修正するパッチであっても、とにかく早期の対応を目指したもの、早期対応よりも信頼性を重視したものと、パッチにもレベルがある/セキュリティ・ホールの内容などによって、これらのパッチを適切に使い分ける必要がある
アクセス制御リストACLとは?
ファイルやフォルダに対するアクセス権はアクセス制御リストACLで柔軟に制御できる。 / ACLには、(複数の)アクセス制御エントリACEを含むことができる。 / 各ACEには、どのユーザーやグループに対して、どのような権利を許可するか(もしくは拒否するか)を設定する。 / ACEには許可のACEと、拒否のACEの2種類があり、該当するACEが両方ある場合は、拒否のACEが優先される。 / ACLは上位のフォルダから継承することができる。
ログオンを省略してWindows 2000を利用できるようにするには(レジストリによる設定法)
コンピュータの起動時、ログオン プロンプトでのユーザー名、パスワードの入力を省略して、すぐにコンピュータを利用可能にする方法。危険性は高いが、ドメイン環境でも有効なレジストリを操作する方法。
一時的にほかのユーザー権限でプログラムを実行する方法(ショートカットのプロパティを利用する方法)
Windows NT系OSでは、ユーザーに一定の権限を割り当て、権限に応じて、操作可能なことと、操作不可能なことを区別できる。 / システムの変更を伴う操作では管理者権限が必要だが、普段一般ユーザー権限でコンピュータを利用している場合、管理者権限を持つユーザーの再ログオンが必要になる。 / 繰り返しこのような作業が発生するなら、プログラムのショートカットを利用することで、一般ユーザーでログオンしたまま、特定のプログラムだけを管理者権限で実行することができる。
ログオンを省略してWindows 2000を利用できるようにするには(GUIによる設定法)
コンピュータの起動時、ログオン プロンプトでのユーザー名、パスワードの入力を省略して、すぐにコンピュータを利用可能にする方法。安全だが機能性にやや制限があるGUIによる方法。
レガシーWindowsからはアクセスできない共有リソースを作成する
セキュリティ的には、Windows 95や98、98 SE、Meなどの古い16bit Windowsはネットワークから排除したい。しかし現実はそう簡単にはいかないものだ。 / あくまで簡易的なものだが、共有名を工夫することで、こうした古いWindowsからはアクセスできず、Windows 2000/XPからのみアクセス可能な共有リソースを作ることができる。
一時的にほかのユーザー権限でプログラムを実行する方法(ショートカット・メニューを利用する方法)
Windows 2000/XPにはユーザー管理機能があり、管理者権限のない通常のユーザーは、システム構成を変更するなど、システムに重大な影響を及ぼす操作が禁止されている。 / しかしプログラムの中には、例えばWindows Updateなど、実行には管理者権限が必要とするものもある。 / 管理者でログオンしなおせばよいのだが、それが面倒なら、特定のプログラムだけ、別のユーザー権限で実行する方法が用意されている。
暗号化はフォルダごと行う
ファイル単位で暗号化を行うことは可能。しかしこれをアプリケーションで上書きすると、暗号化設定が解除されてしまうことがある。
ファイルやフォルダを暗号化する方法
Windows 2000で新たに提供された暗号化機能はこうして使う。
ファイルの所有者を変更する(GUI操作編)
ファイルには所有者情報があり、誰のファイルであるかを表している。 / 所有者のデフォルトはファイルの最初の作成者であるが、作成者が管理者のときはAdministratorsグループになることがある / 所有者はアクセス権を変更できるし、NTFSのクォータはこの所有者に基づいてユーザーごとの使用量を計算しているので、正しい所有者情報を設定しておく必要がある。 / 所有者を変更するには「所有権の取得」という操作を行う。
DNSの動的更新を無効にする
Windows OSでは、起動時に自分自身のホスト名とIPアドレスをDNSサーバへ送信して、DNSのエントリを動的に更新するという機能を持っている。 / トラフィックやセキュリティなどの観点から、この動的更新が不要ならば、無効にすることができる。
前回ログオン時のユーザー名を非表示にする
デフォルトでは、前回ログオンに成功したユーザーの名前がログオン・ダイアログに表示される。 / 利便性を考えてのことだが、ログオン認証の安全性をより高めるには、ユーザー名表示は行わないほうがよい。 / ローカル・セキュリティ・ポリシーの設定を変更すれば、これが可能である。
メールに添付された.PIFや.EXE、.SCRなどの実行ファイルに注意
メール添付型のウイルスでは、ウイルスのプログラムを添付したメールを送信し、ユーザーが実行するのを待つ。 / 自分の知っているファイル・タイプ以外の添付ファイルは不用意に開かないようにする。 / .PIFや.LNKファイルは、エクスプローラではファイル・タイプが表示されないので、取り扱いには特に注意する。
IEのゾーン設定情報を移行・バックアップする
IEのゾーン機能を使えば、Webサイトによってスクリプト設定やCookie設定を自動的に切り替えることができる。 / この場合、信頼できるWebサイトをゾーンに登録していくことになるが、こうして登録したサイト一覧をバックアップしたり、別のPCに移行したりする簡単な方法はない。 / これらの情報はレジストリに保存されているので、対応するレジストリ・キーの内容をエクスポート/インポートする。
VPNのアカウント・ロックアウトを有効にする
Windows 2000 Serverは、標準でVPNサーバ機能を持っている。 / しかしデフォルトでは、何度パスワード認証に失敗してもリトライできる設定になっており、ブルート・フォース攻撃対策は十分ではない。 / リモート・アクセスのアカウント・ロックアウトを設定することで、一定回数以上パスワード認証を間違えたら、一定時間、アカウントをロックアウト(無効化)させることができる。
ディスクの内容を完全に消去する
ディスクを破棄したり、譲渡したりする場合には、あらかじめディスクの内容を消去しておかないと情報が漏えいする危険性がある。 / ファイルをごみ箱に捨てても、インデックスが削除されるだけで、データ本体を消去するわけではない。そのためファイルを復活させることもできる。 / データを完全に消去するためには、ディスク全体に渡ってデータを完全に上書きする必要がある。このためにはcipher /wコマンドを実行すればよい。
Blasterワーム削除ツールを使う
2003年に猛威を振るったBlasterやNachiワームは、適切な修正プログラムを適用しておけば防ぐことができる。 / だがすでに感染してしまった場合は、まず修正プログラムを適用するだけでなく、ワームそのものをシステムから削除する必要がある。 / Blasterワームを削除するためのツールがマイクロソフトから提供されているので、これを実行すればよい。
ターミナル・サービス/リモート・デスクトップ接続のポート番号を変更する
ターミナル・サービスを利用すると、システムをリモートから管理したり、出先からログオンして作業を行ったりできる。 / だがターミナル・サービスは、ユーザー名とパスワードさえ分かれば利用できるサービスである。そのためインターネット上に公開する場合は注意が必要である。 / 最低限のセキュリティ対策として、デフォルトのポート番号を変更するのがよい。
ユーザー・アカウントのロックアウトを解除する
辞書攻撃などを悪用した不正侵入からシステムを守るには、一定回数以上ログオンに失敗したユーザーのアカウントをロックアウトする設定にしておく。 / しかし不正アクセスではない正規のユーザーでも、繰り返しログオンに失敗する場合がある。一度アカウントがロックアウトされてしまうと、その後正しいパスワードを入力してもログオンできず、ユーザーにはその原因が分からない。 / この場合には、管理者がユーザーのロックアウトを解除する必要がある。
ドメインのユーザー・パスワードを変更する
パスワードの安全性を高めるには、定期的にパスワード文字列を変更するのがよい。 / ユーザーが自発的にドメインのパスワードを変更する方法を説明する。
caclsコマンドでACLを編集する
コマンドラインでファイルやフォルダのACLを編集するにはcaclsコマンドを利用する。 / ACLの追加や置換、削除には、それぞれ/G、/P、/Rオプションを使用する。 / 既存のACLを残したまま編集するためには、/Eオプションを付ける必要がある。
ハッシュ値を利用してファイルの同一性をチェックする
ハッシュ値を比較すれば、ファイルの同一性を確認できる。 / ダウンロード・サイトでは、ファイル同一性のチェック目的でハッシュ値を公開していることがある。 / 大量のファイルを持つディレクトリ同士を比較して、更新されたファイルを特定するのにもハッシュ値を使うと便利である。
「悪意のあるソフトウェアの削除ツール」を利用する
「悪意のあるソフトウェアの削除ツール」は、今まで個別に提供されてきたウイルス/ワームの駆除ツールをまとめたものである。毎月新しく提供されることになっている。 / Windows XPではWindows Updateで提供されるが、ほかのOSでは手動でダウンロードして実行する。 / このツールを実行してもシステムに恒久的にインストールされるわけではないので、必要ならば手動で毎回実行する。
caclsコマンドの出力の見方
コマンド・プロンプト上でACLの内容を操作/確認するにはcacls.exeコマンドが利用できる。 / 代表的なアクセス権はF、W、W、Cなどで表されるが、特殊なアクセス権の場合は個別に列挙される。 / フォルダの場合は適用先が(OI)や(CI)、(IO)という文字列で表される。
リモート・デスクトップ接続でパスワード入力を強制する
リモート・デスクトップ接続のためのログイン情報をプロファイルに保存しておけば、クリック1つで簡単にサーバに接続することができる。 / だがこのプロファイルさえあれば誰でも簡単にサーバに接続できるようになるので、非常に危険である。 / これを避けるためには、常にパスワードの入力を強制するようにサーバ側で設定しておけばよい。
自動実行されるプログラム/サービス/アドインを一望にし、制御する
Windowsでは、さまざまなプログラムやサービス、アドインなどが自動的に起動される。 / スパイウェアの調査やトラブル発生時の対処などで、これら自動起動されるコンポーネントを調査、制御したい場合がある。 / Windowsの標準ツールを使うこともできるが、さらに便利な無償ツールを活用することができる。
キャッシュされたログオンを無効にする
Windows OSには「キャッシュされたログオン」機能があり、ネットワークに接続されていなくても、以前のドメイン・ログオン資格情報を使ってコンピュータにログオンすることができる。 / キャッシュされたログオン状態ときでも暗号化されたファイルにもアクセスできるため、場合によってはセキュリティ的に問題がある。 / キャッシュされたログオンを無効にするには、レジストリを変更する。 / ただしノートPCでこの設定を行うと、オフライン時にはドメイン・ユーザー・アカウントではログオンできなくなる。
セキュリティ・パッチの適用状態を調べる― hfnetchkツールの使用法 ―
システムに重大な影響を与えるセキュリティ・ホールや障害に対しては、ホットフィックスという修正モジュールが提供される。システムのセキュリティを安全に保つためには、ホットフィックスの速やかな適用が欠かせない/HFNetChkは、システムにまだインストールされていないホットフィックスの一覧を表示するためのツールである/ローカルやリモートのマシンを調べて、システムやIE、IIS、SQL Serverのホットフィックスの適用状態を調べることができる。
ポート445(ダイレクト・ホスティングSMBサービス)に注意
Windows系OSでは、ファイル共有サービスのためにポート137〜139番を使用しているので、セキュリティのためにはこれらのポートをインターネットからアクセスできないようにフィルタリングしなければならない。 / Windows 2000/XPでは、さらにポート445番も使用しているので、これもブロックする必要がある。 / フィルタリングはOS内蔵のパケット・フィルタ機能を使うか、外部ルータでフィルタリングを行う。
安全性の高いランダムなパスワードを生成し、パスワードを変更する
パスワードは、簡単に類推できない、できるだけランダム性の高い文字列の方が安全性が高い。しかしランダムな文字列を考えるのは苦痛である。/「net user」コマンドの隠しオプションである「/random」を使えば、ランダムなパスワードを生成し、これを割り当てることが可能である。
デフォルト共有(管理共有)を停止させる方法
Windows NT/2000/XPでは、デフォルト共有、または管理共有と呼ばれる隠し共有フォルダが存在する。 / これは、コンピュータの集中管理などを目的とするもので、これにより管理者が利用するツールなどからのアクセスが可能になる。 / しかしミッション・クリティカルなコンピュータなどで安全性を高めたい場合には、デフォルトの管理共有をレジストリの変更によって停止させることができる。
一定時間以上離席したら強制的にログオフさせる
離席中に端末を別人に操作されるという危険がある。これを回避するには、スクリーン・セーバを有効にし、パスワード保護を有効にすればよい。 / この方法では、コンピュータがロックされてしまうので、複数のユーザーで端末を共有している場合には使えない。 / このような場合は、ロックではなく、強制ログオフできると便利だ。今回はこれを可能にする簡単なスクリーン・セーバ・プログラムを編集部で作成した。
Windowsサーバへの不正アクセスを検知するためのパフォーマンス・モニタ・オブジェクト
サーバの管理者は、サーバに対して不正なアクセスが行われていないかを注意しなければならない。 / 本格的なIDS製品などもあるが、Windowsの標準ツールであるパフォーマンス・モニタを使って、最低限の対策を行うことができる。
ログオンの失敗をメールで通知する
重要なサーバなどでは、ログオンの失敗が発生したことを検知したい場合がある。 / WMIを利用して、ログオン失敗時に発生するイベントを監視することができる。さらにCDOを組み合わせれば、ログオン失敗の発生をメールで通知させることが可能である。
IISをインストールする
Windows 2000 Professional/Windows XP Professionalには、Webサーバ/FTPサーバ機能を実現するためのIISが標準で提供されている。/ ただしデフォルトではIISはインストールされないので、必要ならIIS用のWindowsコンポーネントをマニュアルでインストールする必要がある。 / Nimdaなどのワームに感染しないように、IISのインストールはインターネットとは遮断された環境で実施したほうがよい。
WSHスクリプト・コードを暗号化する
スクリプト言語によるプログラミングには簡易である反面、ソース・コードがエンドユーザに露出してしまう、コードの改変が可能である、などの問題も存在する。 / しかし、フリーで利用可能なScript Encoderを利用することで、スクリプトコードを暗号化し、ユーザーの目から隠ぺいすることができる。
「パスワードの複雑性」の要件
ユーザー名から類推が容易なパスワードや、短いパスワードの使用は安全性に問題があるので禁止させたいことがある。 / セキュリティ・ポリシーを変更すれば、ある種の「複雑性」を満たさないパスワードの使用を禁止することができる。 / ただしこのセキュリティ・ポリシーで強制できる条件は非常に限定的なので、補助的な運用ルールなども決めるのが望ましい。
MDACのバージョン調査ツールを利用する
MDACは、さまざまな種類のデータベースにアクセスするための、汎用的で統一的なインターフェイスの総称である。 / MDACには多くのバージョンが存在し、さまざまな製品とともに出荷されているので、システムにインストールされているMDACのバージョンも多岐に渡る。 / MDACのバージョンを調査するにはComponent Checkerツールが利用できる。
不要になったユーザー・プロファイルを削除する
ユーザー・プロファイルには、ユーザーごとのレジストリ情報やデスクトップ設定、ユーザー・ドキュメントなどが格納されている。 / ユーザー・プロファイルは、ユーザーが最初にログオンしたときに作成されるが、自動的に削除されることはない。 / 不要になったプロファイルを削除すれば、ディスクの空き領域を増やし、フラグメントなどを軽減することができる。
DNSサーバの動的更新設定を変更する
Windows OSでは、起動時に自分自身のホスト名とIPアドレスをDNSサーバへ送信して、DNSのエントリを動的に更新するという動的更新機能を持っている。 / Windows Server OSのDNSサーバは、デフォルトでは任意のコンピュータからの動的更新要求を受け付けないので、必要に応じて設定を変更する。 / インターネット向けに利用する場合は動的更新は無効にしておくのがよい。
「悪意のあるソフトウェアの削除ツール」をWebページから素速く実行する
マイクロソフトが無償公開した「悪意のあるソフトウェアの削除ツール」を使えば、重大なウイルス/ワームにコンピュータが感染していないかどうかを確認できる。 / 当初はWindows Updateでの提供、またはダウンロード・センターからツールをダウンロードして実行するしかなかったが、その後Webページから実行可能なActiveXコントロール版が公開された。 / 操作が容易なので、初心者に実行を指示する場合などに便利である。


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間