[System Environment] | |||||||||||||
Windowsの自動実行機能(Autorun)を完全に無効化してウイルス感染を防ぐ
|
|||||||||||||
|
解説 |
Windows OSには「自動実行(Autorun)」という機能があり、CD/DVDメディアをドライブに挿入したりUSBメモリなどのリムーバブル・ストレージをコンピュータに装着したりしたとき、格納されているプログラムを自動的に実行できる。例えば、ソフトウェアのセットアップCDをドライブに挿入するだけでインストーラが起動するなど便利に活用されている一方で、ウイルスなどの悪意のあるソフトウェアがこの機能を悪用して感染を広げるという弊害も報告されている。
Autorunを悪用するウイルスは、Autorun.infという自動実行用の設定ファイルをウイルス本体とともにUSBメモリなどにコピーする。これをAutorunの有効な別のコンピュータに装着すると、Autorunによってウイルスが自動実行され、そのコンピュータにウイルスが感染してしまう。近年、こうした感染手法を持つウイルスが増加しているとのことだ。
- コンピュータウイルス・不正アクセスの届出状況[11月分]について(情報処理推進機構、IPA)
こうした脅威への対策としては、Autorunを無効にすることがよく推奨されている。Windowsには標準でAutorunを無効化する機能があり、TIPS「リムーバブル・ストレージの自動再生機能を制御する方法(Windows XPの場合)」「CD-ROMドライブの自動再生機能を有効/無効にする方法(Windows 2000の場合)」でもその方法を紹介している。このほかにも、レジストリあるいはグループ・ポリシーの設定変更により全種類のドライブに対して一律にAutorunを無効化できる、とされていた。
ところが、こうした設定をWindowsが正しく解釈しないため、無効化の設定をしても実際にはAutorunが働いてしまう、ということがマイクロソフトから報告されている。例えば、本来はデフォルトで無効なはずのネットワーク・ドライブでのAutorun機能が、実際にはデフォルトで起動してしまうとのことだ。
- Windows Autorun (自動実行) 用の更新プログラム(マイクロソフト セキュリティ・アドバイザリ)
- Windows で "Autorun レジストリ キーの無効化" の強制を修正する方法(マイクロソフト サポート技術情報)
また米国のセキュリティ対策組織US-CERTによれば、Autorunの無効化設定後、新たに接続したリムーバブル・ストレージに対しては無効にならない、という。そのほか、ユーザーがWindowsエクスプローラのドライブ・アイコンをダブル・クリックした場合、依然としてAutorunによってプログラムが起動するため危険である、とのことだ。
- Microsoft Windows Does Not Disable AutoRun Properly(US-CERT Technical Cyber Security Alert)
この問題を解消するには、マイクロソフトが提供しているAutorun修正パッチを適用し、かつ従来からあるAutorunの無効化の設定を行う(両方とも実施する必要がある)。本稿では、セキュリティ強化のため全種類のドライブに対して一律かつ完全にAutorunを無効にする方法を説明する。
操作方法 |
リムーバブル・ストレージやネットワーク・ドライブを含む全種類のドライブに対して、一律にAutorunを無効化するには、マイクロソフト提供のパッチ適用と、レジストリ(またはグループ・ポリシー)の設定変更の両方が必要だ。以下では、適用すべきパッチやグループ・ポリシーの設定個所が異なるため、Windows 2000/Windows XP/Windows Server 2003と、Windows Vista/Windows Server 2008に分類して説明する。
Windows 2000/Windows XP/Windows Server 2003の場合
■Autorun修正パッチを適用する
Windows 2000/Windows XP/Windows Server 2003に適用すべきAutorun修正パッチは、以下のKB967715のパッチである(いずれもリンク先はマイクロソフトのダウンロード・センター)。
- Windows 2000用更新プログラム (KB967715)
- Windows XP用更新プログラム (KB967715)
- Windows Server 2003用の更新プログラム (KB967715)
- Windows XP x64 Edition 用の更新プログラム (KB967715)
- Windows Server 2003 x64 Edition 用の更新プログラム (KB967715)
これらは自動更新で配信されており、またWindows Update/Microsoft、WSUSでも適用可能だ。それぞれ上記リストの名称で登録されているので、「KB967715」というKB番号で検索すると見つけやすいだろう。
適用方法は通常のセキュリティ・パッチと同じだ。手動で再起動を抑制しつつサイレント・インストールをするには、以下のようにオプションを指定して実行する。
<パッチ・ファイル名> /quiet /norestart |
なお、以下のサポート技術情報からダウンロードできるKB950582のパッチが適用済みであれば、上記のKB967715のパッチを適用する必要はない。
- Windows で "Autorun レジストリ キーの無効化" の強制を修正する方法(マイクロソフト サポート技術情報)
この2種類のパッチは同等のもので、異なるのは実質、KB950582の方が早くリリースされたことと、自動更新などで適用可能なのはKB967715の方だけ、という2点のみだ(すなわちKB950582のパッチがマイクロソフトのパッチ適用ツールで自動的に適用されることはない)。両方とも未適用ならKB967715の方を適用すればよい。
■レジストリ設定でAutorunを無効化する
[注意] |
レジストリに不正な値を書き込んでしまうと、システムに重大な障害を及ぼし、最悪の場合、システムの再インストールを余儀なくされることもあります。レジストリ・エディタの操作は慎重に行うとともに、あくまで御自分のリスクで設定を行ってください。何らかの障害が発生した場合でも、本Windows Server Insider編集部では責任を負いかねます。ご了承ください。 |
レジストリ設定によって、Autorunによる自動実行を全種類のドライブに対して無効化するには、以下のレジストリ・エントリを操作する。NoDriveTypeAutoRunの設定値を0xFFから変えることで、一部のドライブのみ無効化することも可能だ(詳細はマイクロソフトのサポート技術情報967715の「特定の自動実行機能を選択して無効にする方法」を参照のこと)。なお、HonorAutoRunSettingはWindows XP/Windows Server 2003だけの機能だ。
項目 | 内容 |
キー | HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\ Policies\Explorer\ |
![]() |
|
値の名前 | NoDriveTypeAutoRun |
値の型 | DWORD型(REG_DWORD型) |
値の内容 | 0xFF→全種類のドライブでAutorunを無効化する |
![]() |
|
値の名前 | HonorAutoRunSetting |
値の型 | DWORD型(REG_DWORD型) |
値の内容 | 1→KB967715あるいはKB953252のパッチによる修正を有効にする(正しくAutorunを無効化できるようにする) |
![]() |
|
全種類のドライブでAutorunを無効化するためのレジストリ設定値 | |
NoDriveTypeAutoRunの値を0xFFから変えると一部のドライブのみ無効化できる(サポート技術情報967715参照)。HonorAutoRunSettingは前述のKB967715あるいはKB953252のパッチを適用すると自動的に「1」が設定される。通常は「1」が設定済みであることを確認すればよい(Windows XP/Windows Server 2003のみ)。 |
■グループ・ポリシーでAutorunを無効化する
Active Directoryに所属する複数のコンピュータでAutorunを無効化するには、レジストリ設定よりグループ・ポリシーの方が簡単だろう。それにはグループ・ポリシー・エディタで[コンピュータの構成]−[管理用テンプレート]−[システム]にある[自動再生機能をオフにする]のプロパティを開き、[設定]タブで[有効]を選択してから[自動再生機能をオフにする]を「すべてのドライブ」に設定する。
![]() |
||||||
全種類のドライブでAutorunを無効化するためのグループ・ポリシー設定 | ||||||
グループ・ポリシー・エディタで[コンピュータの構成]−[管理用テンプレート]−[システム]にある[自動再生機能をオフにする]をダブル・クリックすると、この画面が表示される。 | ||||||
|
Windows Vista/Windows Server 2008
■Autorun修正パッチを適用する
Windows Vista/Windows Server 2008の場合、Autorunに関する修正はMS08-038のセキュリティ・パッチに含まれるので、このパッチを適用すればよい(以下、いずれもリンク先はマイクロソフトのダウンロード・センター)。
- Windows Vista 用の更新プログラム (KB950582)
- Windows Server 2008 用の更新プログラム (KB950582)
- Windows Vista for x64-based Systems 用の更新プログラム (KB950582)
- Windows Server 2008 x64 Edition 用の更新プログラム (KB950582)
これらも自動更新やWindows Update/Microsoft、WSUSで適用できる。適用方法は通常のセキュリティ・パッチと何ら変わらない。手動で再起動を抑制しつつサイレント・インストールをするには、以下のオプションを指定して実行する。
<パッチ・ファイル名> /quiet /norestart |
■レジストリ設定でAutorunを無効化する
Autorunを無効化するためのレジストリ・エントリは下記のとおり、Windows 2000/Windows XP/Windows Server 2003と変わらない。ただしHonorAutoRunSettingの設定はない。
項目 | 内容 |
キー | HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\ Policies\Explorer\ |
![]() |
|
値の名前 | NoDriveTypeAutoRun |
値の型 | DWORD型(REG_DWORD型) |
値の内容 | 0xFF→全種類のドライブでAutorunを無効化する |
![]() |
|
全種類のドライブでAutorunを無効化するためのレジストリ設定値 | |
NoDriveTypeAutoRunの値を0xFFから変えると一部のドライブのみ無効化できる(サポート技術情報967715参照)。 |
■グループ・ポリシーでAutorunを無効化する
Autorunをグループ・ポリシーで無効化するには、グループ・ポリシー・エディタで[コンピュータの構成]−[管理用テンプレート]−[Windows コンポーネント]−[自動再生のポリシー]にある[自動再生機能をオフにする]のプロパティを開き、[設定]タブで[有効]を選択してから[自動再生機能をオフにする]を「すべてのドライブ」に設定する。
![]() |
||||||
全種類のドライブでAutorunを無効化するためのグループ・ポリシー設定 | ||||||
グループ・ポリシー・エディタで[コンピュータの構成]−[管理用テンプレート]−[Windows コンポーネント]−[自動再生のポリシー]にある[自動再生機能をオフにする]をダブル・クリックすると、この画面が表示される。 | ||||||
|
この記事と関連性の高い別の記事
- Windows Updateを無効化する(TIPS)
- CD-ROMドライブの自動実行機能を有効/無効にする方法(Windows 2000の場合)(TIPS)
- Windows Update適用後の自動再起動を抑制する(TIPS)
- 自動更新における自動再起動を抑止する(TIPS)
- Windows 7/Server 2008のWindows Updateの使い方(設定編)(TIPS)
このリストは、デジタルアドバンテージが開発した自動関連記事探索システム Jigsaw(ジグソー) により自動抽出したものです。

![]() |
「Windows TIPS」 |
- Azure Web Appsの中を「コンソール」や「シェル」でのぞいてみる (2017/7/27)
AzureのWeb Appsはどのような仕組みで動いているのか、オンプレミスのWindows OSと何が違うのか、などをちょっと探訪してみよう - Azure Storage ExplorerでStorageを手軽に操作する (2017/7/24)
エクスプローラのような感覚でAzure Storageにアクセスできる無償ツール「Azure Storage Explorer」。いざというときに使えるよう、事前にセットアップしておこう - Win 10でキーボード配列が誤認識された場合の対処 (2017/7/21)
キーボード配列が異なる言語に誤認識された場合の対処方法を紹介。英語キーボードが日本語配列として認識された場合などは、正しいキー配列に設定し直そう - Azure Web AppsでWordPressをインストールしてみる (2017/7/20)
これまでのIaaSに続き、Azureの大きな特徴といえるPaaSサービス、Azure App Serviceを試してみた! まずはWordPressをインストールしてみる
![]() |
|
|
|
![]() |