Windows TIPS
[System Environment]
Tips   Windows TIPS TOPへ
Windows TIPS全リストへ
内容別分類一覧へ

Sysinternalsのautorunsツールで自動起動するプログラムを調査する

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

デジタルアドバンテージ 打越 浩幸
2012/08/31
対象OS
Windows XP
Windows Server 2003
Windows Vista
Windows Server 2008
Windows 7
Windows Server 2008 R2
Summary
システム起動時やログオン時に自動的に実行されるプログラムは、システムのさまざまな場所で定義されている。
トラブルの原因究明や解消のために、自動起動を止めたり、起動されるプログラムを変更したい場合がある。
SysinternalsのAutorunsツールを使うと、自動起動するプログラムや拡張機能を簡単に調べることができる。

解説

 Windows OSの起動時やユーザーのログオン時、何らかのイベント発生時などに自動的に実行されるプログラムやサービスなどを調査するにはいくつか方法がある。TIPS「起動時に自動実行される不要なプログラムを「起動しないようにする」方法」では、「システム構成ツール(msconfigコマンド)」を使って自動起動するプログラムを調査したり、必要なら無効にする方法を紹介している。だがこのツールでは表示されないプログラムなどもあり(例えばタスク・スケジューラで起動するプログラムやエクスプローラのエクステンションとして組み込まれているプログラムなどは表示されない)、より詳しく調査したければ、ほかの手法が必要となる。

 そこで本TIPSでは、自動起動するプログラムを詳しく調査/設定できる、SysinternalsのAutorunsツールを紹介する。このツールについては、すでに一度TIPS「自動実行されるプログラム/サービス/アドインを一望にし、制御する」で簡単に紹介しているが、その後機能が大幅に追加されているので、改めて解説する。

  操作方法

Autorunsの入手

 SysinternalsのAutorunsツールは以下のリンクから入手できる。

 ここからAutoruns.zipファイルをダウンロードして適当なフォルダへ解凍し、実行パスを通しておく。.zipファイルの中には、GUI版のautoruns.exeのほかに、CUI版のautorunsc.exeも含まれているので、両方とも展開/コピーしておく。

Autorunsの実行

 Autoruns.exeを起動すると、システムの構成を自動的にスキャンし、自動起動するように設定されている各種プログラムの情報を表示する。その種類は非常に多く、プログラムやサービス、タスク、デバイス・ドライバ、ブート設定、Winsockやネットワーク関連のプロバイダ、プリント・スプール・モニタなどのほか、ExplorerやIEなどの起動に連動する拡張機能(ExplorerのエクステンションやIEのアドオン、ログオンの拡張機能、メディア再生用のCODECなど)も含まれる。デフォルトではすべての情報(「Everything」タブ)が表示されているが、タブを選択してカテゴリ別に表示させることもできる。

Autorunsの実行例
Autorunsを起動すると、システムの構成が調査され、自動起動するように設定されているプログラムやドライバ、サービスなどの情報がまとめて表示される。なお、黄色く表示されているのは該当するイメージ・ファイルが存在しないエントリ(つまり実行されないエントリ)を表す。ピンク色の行は、ファイルに発行者などの情報がないものを表す。
ファイルやレジストリの場所。エントリが記録されている場所を表す。
エントリ名。
説明。
発行者。
イメージ・パス名。
ファイルが存在しない場合は黄色く表示される。内容を確認後、右クリックしてポップアップ・メニューの[Delete]を使って削除するか、アプリケーションを再インスト−ルするなどの対策を行う。

エントリを選択すると、その説明がここに表示される。

 表示されている項目数は多いが、その内容は単純だ。エントリと説明文(これらはドライバ中などに記述されている)、発行者、実行ファイルのイメージ・パスである。先頭にあるチェック・ボックスをオフにすると、その項目を無効にできる(項目により、再ログオンやシステムの再起動などが必要)。なお、Autorunsを実行するユーザーの権限が不足している場合は、いくつかのエントリが表示されなかったり、設定を変更できないことがある。その場合は管理者権限のあるユーザーでログオンして実行するか、[File]メニューの[Run As Administrator]を選択して、権限を昇格させて実行させる。ほかのユーザーの自動起動を確認するには、[User]メニューからユーザー・アカウントを選択する([User]メニューは、管理者権限がある場合のみ表示される)。

 項目によっては、ダブルクリックすると、該当するツール(レジストリ・エディタやタスク・スケジューラなど)が起動するようになっているものもある。

 個の画面には非常に多くのカテゴリ(タブ)が表示されているが、それらの意味は次の通りである。

カテゴリ名 内容
Logon ログオン時に実行されるプログラムの一覧。「現在のユーザー」と「すべてのユーザー」の「スタートアップ」フォルダに登録されているエントリのほか、レジストリや標準的なアプリケーションの起動用の場所に登録されているプログラム(グループ・ポリシーによる登録なども含む)が表示される
Explorer エクスプローラのシェル拡張機能として登録されているプログラムやヘルパ・オブジェクト、ツール・バー、MIMEフィルタなどが表示される
Internet Explorer Internet Explorerの拡張機能(アドオン)やブラウザ・ヘルパ・オブジェクト、ツール・バー拡張機能などが表示される
Scheduled Tasks タスク・スケジューラに登録されていて、起動時やログオン時に実行されるプログラムが表示される
Services システム起動時に自動起動するように設定されているサービスが表示される
Drivers システムに登録されている、カーネル・モードのドライバが表示される(無効にされているものは表示されない)
Codecs メディア再生時に自動的にロードされるCODECが表示される
Boot Execute Windows OSの起動時に実行されるファイル(セッション・マネージャsmss.exeによって起動されるプログラム)が表示される
Image Hijacks .exeや.cmdなど、実行ファイルのハンドラが標準のもの以外に変更されている場合に、それが表示される
AppInit アプリケーション(USER32 DLL)を初期化するときに自動的にロードされるDLL(AppInit DLL)があれば表示される。これは、アプリケーションの実行時に任意のDLLをロードする機能である(APIフックなどに使用する)。だがマルウェアの温床になるので、Windows Vista以降では禁止されているが、それを検出するのに役立つ
KnownDLLs パフォーマンス向上などのために、Windows OSが自動的にロードするDLLのリストが表示される
Winlogon Winlogon.exeをフックしてログオン・プロセスをカスタマイズするDLLの一覧が表示される
Winsock Providers 登録されているWinsockプロトコル(のプロバイダ)が表示される。Winsockプロバイダとして自分を登録するマルウェアなどを発見するのに役立つ
Printer Monitors プリンタ・スプール・サービスを提供するDLLが表示される。この機能を使うマルウェアなどを発見するのに役立つ
LSA Providers ユーザー認証機能を拡張するLSA(Local Security Authority)パッケージが表示される
Network Providers ネットワーク通信機能を提供するプロバイダの一覧が表示される
Sidebar Gadgets Windows Vistaのサイド・バーやWindows 7のデスクトップ・ガジェットが表示される
Autorunsで表示されるカテゴリ(タブ)

 マルウェアによっては、標準的な自動起動機能をフック(横取り)するのではなく、例えばネットワーク・プロバイダやプリント・スプール・モニタ、ログオン認証機能の拡張機能をフックする形でシステムに潜り込んで動作するものがある。このようなソフトウェアを見つけるためにもAutorunsコマンドは有用である。

デジタル署名の検証

 表示結果のうち、いずれかの行を選択して[Ctrl]+[V]を押すとファイルの発行者のデジタル署名が検証され、正しく検証できれば「(Verified)」、確認できなければ「(Not Vefified)」が「Publisher」の部分に表示される。[Options]−[Filter Options]で[Verify code signature]をオンにしておくと、常にデジタル署名の検証が行われるようになる。

結果データの保存

 [File]メニューの[Save]を使うと、調査した内容をバイナリのデータ・ファイルとして保存しておくことができる(拡張子は.arn)。後でロードして(別のシステムで)解析したり、2つのファイルを比較させたりできる。設定が異なっている部分は緑色で表示される。

コマンドラインでの使用

 Autorunsにはコマンドラインで使用するautorunsc.exeというツールも用意されている。引数なしで起動すると、現在の状態がテキスト形式で出力されるが、オプションを指定するとCSV形式やXML形式でも出力できる(ただし日本語文字は正しく出力できないようだ)。End of Article

C:\>autorunsc -? …ヘルプの表示

Sysinternals Autoruns v11.33 - Autostart program viewer
Copyright (C) 2002-2012 Mark Russinovich and Bryce Cogswell
Sysinternals - www.sysinternals.com

Autorunsc shows programs configured to autostart during boot.

Usage: autorunsc [-x] [[-a] | [-b] [-c] [-d] [-e] [-g] [-h] [-i] [-k] [-l] [-m] [-o] [-p] [-r] [-s] [-v] [-w] [[-z <syst
emroot> <userprofile>] | [user]]]
     -a         Show all entries.
     -b         Boot execute.
     -c         Print output as CSV.
     -d         Appinit DLLs.
     -e         Explorer addons.
     -f         Show file hashes.
     -g         Sidebar gadgets (Vista and higher)
     -h         Image hijacks.
     -i         Internet Explorer addons.
…(以下省略)…

C:\>autorunsc

Sysinternals Autoruns v11.33 - Autostart program viewer
Copyright (C) 2002-2012 Mark Russinovich and Bryce Cogswell
Sysinternals - www.sysinternals.com


HKLM\System\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\StartupPrograms
   rdpclip
     rdpclip
     RDP ???? ???? …日本語部分は化けている
     Microsoft Corporation
     6.1.7601.17514
     c:\windows\system32\rdpclip.exe

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit
   C:\Windows\system32\userinit.exe
     C:\Windows\system32\userinit.exe
     Userinit ???? ????????
     Microsoft Corporation
     6.1.7601.17514
     c:\windows\system32\userinit.exe
…(以下省略)…

「Windows TIPS」

@IT Special

- PR -

TechTargetジャパン

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

イベントカレンダー

PickUpイベント

- PR -

アクセスランキング

もっと見る

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

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間
ソリューションFLASH