Windows TIPS
[System Environment]
  Windows TIPS TOPへ
Windows TIPS全リストへ

XP SP2のデータ実行防止(DEP)機能を無効にする

解説をスキップして操作方法を読む

デジタルアドバンテージ
2004/11/20
 
対象OS
Windows XP Service Pack 2
XP SP2には、スタックやヒープ上に置かれたプログラムの実行を防止するDEP機能がある。DEP機能を利用すると、バッファ・オーバーフローの脆弱性を突いてコードを実行するウイルスやワームを防止することができる。
DEP機能は、Windows OSシステムに適用されるほか、ユーザー・プログラムに対して適用することもできる。
古いバージョンのプログラムやデバイス・ドライバなどでは、DEP機能によって実行できなくなる場合がある。そのような場合はDEP機能を無効にすればよい。
 
解説

 Windows XP Service Pack 2(以下XP SP2)では、スタックやヒープ上に置かれたコードの実行を制限する、「データ実行防止(Data Execution Prevention。以下DEP)」という機能が新たに実装された。バッファ・オーバーフローとは、プログラムが想定しているよりも大量のデータを送り込んでスタックやヒープ上のデータ領域を書き換え、プログラムの制御を奪ったり、実行を停止させたりするという脆弱性である(基本的にはプログラムのバグが原因)。DEP機能を有効にすることにより、MS BlasterやSlammerなど、この脆弱性を使うウイルスやワームの実行を阻止することができる。詳細については関連記事を参照していただきたい。

ネットワーク管理者のためのWindows XP SP2レビュー―データ実行保護機能(DEP)

 DEP機能には、ソフトウェアDEPとハードウェアDEPの2種類があるが、ハードウェアDEP機能は現在のところ、AMD社のAthlon64(Opteron)など、特定のプロセッサでのみ利用できる。これに対して、ソフトウェアDEPはどのシステムでも利用できるが、その機能は非常に限定的である。将来はすべてのプロセッサおよびすべてのWindow OSで、いずれのDEPも利用できるようになる予定である。

DEP機能によるプログラムの実行中断
スタックやヒープ上でコードを実行させようとすると、DEPによってプログラムの実行が中断させられる。これはAMD Athlon64 CPUを使ったWindows XP SP2システム上での実行例。
  スタック上でコードを実行するサンプル(具体的なプログラムについては先の関連記事を参照)。
  実行しようとしたプログラムの名称。
  DEP機能の設定を変更して、このプログラムをDEPによる実行中断から除外するには、これをクリックする。
  DEP機能の設定を変更せず、以後も有効にしておくには、これをクリックしてダイアログを閉じる。

 ところでバッファ・オーバーフロー対策として有効なDEP機能であるが、場合によっては、正常なプログラムであってもDEP機能によって実行が中断させられてしまうことがある。プログラムによっては、わざとスタックやヒープ上にプログラム・コードを置き、それを実行している場合もあるが(主に性能向上のためにこのような技法が使われている)、DEP機能を有効にすると、このようなプログラムは不正なものとみなされてしまうことになる。今後出荷されるプログラムはDEP対応が施され、DEP環境下でも正しく動作するようになるだろう。だが以前から使用しているプログラムの場合は、DEPによって実行が阻止されないように、設定を変更する必要がある。


操作方法

 DEPの設定を変更するには、2つの方法がある。特定のプログラムでのみDEPの除外設定を行うか、それともシステム全体でDEPを無効にするかである。

特定のプログラムに対するDEPの除外設定

 特定のプログラムに対してDEP機能を無効にするには、上記の画面で[設定の変更]ボタンをクリックするか、DEPの設定画面で、除外するプログラムを手動で追加する。

 [マイ コンピュータ]を右クリックしてポップアップ・メニューから[プロパティ]を選び、[詳細設定]タブにある[パフォーマンス]−[設定]をクリックすると、次のようなダイアログが表示される。

DEP機能の設定ダイアログ
DEP機能をシステム全体で使うか、それとも特定のプログラムを除外するかを設定するダイアログ。
  DEP機能の設定タブ。
  Windowsシステム(デバイス・ドライバも含む)でのみDEP機能を有効にする。XP SP2のデフォルト設定。
  Windowsシステムだけでなく、ユーザーのプログラムもDEP機能の対象とするにはこれをクリックする。
  ここにリストアップされたプログラムについては、DEP機能の対象外とする。DEP機能が有効だと動作しないプログラム(DEP非対応プログラム)を明示的に登録するために利用する。チェック・ボックスをオフにすると、一時的にDEP機能が有効になる。
  特定のプログラムを手動でDEP機能の適用対象外リストに登録するには、これをクリックする。

 このダイアログで設定することにより、Windows OSシステムでのみDEP機能を利用するか、ユーザー・プログラムでもDEP機能を利用するかを設定することができる。

DEP機能をすべて無効にする設定

 以上の設定では、DEP機能の適用範囲を変更することはできるが、DEP機能をすべて無効にすることはできない。OSカーネルのバッファ・オーバーフローの脆弱性に対する攻撃を防ぐためである。だが場合によっては、DEP機能を完全に無効にしたい場合もあるだろう。例えば古いバージョンのデバイス・ドライバを使っているような場合である。デバイス・ドライバはOSカーネルの一部として動作するため、デバイス・ドライバに対するDEP機能が有効になっていると、OSそのものが動作しなくなる。パフォーマンスを向上させるために、デバイス・ドライバでは、スタックやヒープ上に置いたコードを実行している場合があるが、XP SP2に対応するまでは、DEP機能全体を無効にしておく必要がある。

 DEP機能そのものを無効にするには、システム・ドライブのルートにあるboot.iniファイル(通常はc:\boot.ini)に対して、「/NoExecute=AlwaysOff」というオプションを追加する。これ以外にも次のようなオプションがあり、何も指定がなければ、「/NoExecute=OptIn」と同じ扱いになっている。End of Article

設定 意味
/NoExecute=OptIn デフォルト設定。Windows OSのシステム・ファイルでのみDEPが有効になる
/NoExecute=OptOut Windows OSのシステム・ファイルとユーザー・プログラムをDEPの対象とするが、除外リストに登録されたものについてはDEPを適用しない
/NoExecute=AlwaysOn Windows OSのシステム・ファイルとユーザー・プログラムをDEPの対象とする。除外リストにプログラムを登録することはできない
/NoExecute=AlwaysOff DEP機能をすべて無効にする
boot.iniにおけるDEP設定
各OSごとの設定行の最後に、これらのうちのいずれかのオプションを追加する。一番下を選択すると、DEP機能をすべて無効にすることができる。
 
関連記事
  ネットワーク管理者のためのWindows XP SP2レビュー―データ実行保護機能(DEP)(Windows Server Insider)
  Windows XP SP2で採用されたDEPの仕組み(System Insider)
  Windows TIPS「システムのブート情報ファイルBOOT.INIを編集する」(Windows Server Insider)
     
この記事と関連性の高い別のWindows TIPS
起動時に自動実行される不要なプログラムを「見つける」方法
このリストは、(株)デジタルアドバンテージが開発した
自動関連記事探索システム Jigsaw(ジグソー) により自動抽出したものです。
generated by

更新履歴
【2005/11/16】boot.iniファイルにおけるオプション値の記述が間違っておりました。当初公開した記事ではオプション値を「OptIn/OutOut/AlwayOn/AlwayOff」と記述しておりましたが、正しくは「OptIn/OptOut/AlwaysOn/AlwaysOff」でした。お詫びして訂正させていただきます。
 
「Windows TIPS」

TechTargetジャパン

Windows Server Insider フォーラム 新着記事
  • Gmailのキーボードショートカットを素早く確認する (2014/4/23)
     マウス操作が基本とはいえ、キーボードショートカットを使いこなすことで、作業効率はグンと上がる。まずはショートカット一覧を素早く表示する方法を覚えよう
  • 第411話 連鎖反応 (2014/4/22)
     今日の授業は連鎖反応について。ある反応が次の反応を引き起こして、反応が次々と進むことです。おいっ、聞いてるかそこっ!
  • まだ知らない人のためのOneDrive入門 (2014/4/21)
     マイクロソフト提供の個人向けオンラインストレージ「OneDrive(旧SkyDrive)」。仕事で活用するうえでのメリット/デメリットは? 最新情報で全面更新
  • Win 7をUEFIインストールするためのUSBメモリの作成 (2014/4/18)
     Windows 7をUEFIモードでインストールするためのブータブルUSBメモリを作るには、不足しているファイルを手動で追加コピーする

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

キャリアアップ

- PR -

イベントカレンダー

PickUpイベント

- PR -

アクセスランキング

もっと見る
- PR -

ホワイトペーパーTechTargetジャパン

ソリューションFLASH

「ITmedia マーケティング」新着記事

仮説ではなくオープンなクエスチョンでアプローチ――ビジネスパーソンが身につけたい「デザインリサーチ」手法
日本マイクロソフトが主催する「SQL Server 2014 発売記念フォーラム ビジネス成長を支え...

ITシステムやソリューションなどのBtoB購買者は何を求めているのか
ClickZ.comに掲載された記事では、Explore(探索)、Evaluate(評価)、Purchase(購買)...

富士通、オムロン草津工場にて「ものづくりビッグデータ分析」の実証実験を開始
富士通は4月22日、オムロンの草津工場において、プリント基板表面実装ラインの品質向上/...