Windows クライアントの
トラブルシューティングあれ
これ
トラブルのときはまず落ち着いて
Microsoft MVP for Windows and Devices for IT
Murachi Akira aka hebikuzure ( 村地 彰 )
About me
• Murachi Akira aka hebikuzure ( 村地 彰 )
• 株式会社エクシードワン 技術フェロー
• 株式会社シーピーエス 技術教育スペシャリスト
• トレノケート株式会社パートナー講師
• Microsoft MVP (Most Valuable Professional)
• Since Apr. 2011 ( 10 Years! )
• Award Category: Windows and Device for IT
• Expertise
• Windows client / user management and security
• Microsoft 365, Active Directory, Microsoft Endpoint Manager
27 Nov. 2021 ©Murachi Akira aka hebikuzure 2
トラブルシュートの基本
1. 現象を確認する
2. 再現手順を確認する
3. 切り分け/最小化を行う
4. 情報採取と解析を行う
5. 回避策を検討する
27 Nov. 2021 ©Murachi Akira aka hebikuzure 3
現象を確認する
何が起きているのか
27 Nov. 2021 ©Murachi Akira aka hebikuzure 4
何が起きているのか確認する
• エラーなのか
• ハングアップ(不動)なのか
• 操作に対する意図しない結果なのか
• エラー メッセージの内容は何か
27 Nov. 2021 ©Murachi Akira aka hebikuzure 5
再現手順を確認する
何をやったらこうなったのか
27 Nov. 2021 ©Murachi Akira aka hebikuzure 6
再現性の確認と再現手順の確認
• 現象に再現性があるか
• 再現性が低い場合、再現性を高める手順はないか
• 再現する操作手順はどのようなものか
27 Nov. 2021 ©Murachi Akira aka hebikuzure 7
切り分け/最小化を行う
発生原因のナロー ダウン
27 Nov. 2021 ©Murachi Akira aka hebikuzure 8
切り分け
• 特定のアプリケーションに依存するか
• 別のアプリケーションでも発生するか確認
• 特定のコンピューターに依存するか
• 別のコンピューターでも発生するか確認
• 特定のユーザーに依存するか
• 別のユーザーでも発生するか確認
• 特定のサービス/ドライバーに依存するか
• サービス/ドライバーを無効にして確認
27 Nov. 2021 ©Murachi Akira aka hebikuzure 9
切り分けの手法
• Windows をクリーンブートする
• クリーンブート トラブルシューティング
• サービスやスタートアップを無効にして起動
• サードパーティー製のセキュリティ ソリュー
ションはアンインストールする
• セキュリティ ソリューションでインストールされる
フィルター ドライバーはクリーンブートで無効化で
きない
• 新規ユーザーアカウントを作成してサインインす
27 Nov. 2021 ©Murachi Akira aka hebikuzure 10
切り分けの手法(2)
• セーフモード
• セーフモードとネットワーク
• セーフモードとコマンド プロンプト
27 Nov. 2021 ©Murachi Akira aka hebikuzure 11
クリーンブート トラブルシューティング
• Windows でクリーン ブートを実行する方法
• https://support.microsoft.com/en-us/topic/how-to-perform-a-clean-boot-
in-windows-da2f9573-6eec-00ad-2f8a-a97a1807f3dd
• クリーン ブートの実行後に問題の原因を特定する方
法
• 問題の原因となっているスタートアップ アプリケーショ
ンまたはサービスを体系的にオンまたはオフにし、コン
ピューターを再起動することで特定できます。
• 最も効率的な方法は、一度に半分をテストし、コン
ピューターを再起動するごとに、アイテムの半分を潜在
的な原因として排除する方法です。
27 Nov. 2021 ©Murachi Akira aka hebikuzure 12
さらに切り分ける
• バックグラウンド プロセスの停止
• クリーンブートで停止できないバックグラウンド プ
ロセスの停止には Autoruns が便利
• フィルター ドライバーの停止
• アンインストールできない場合など
• シェル拡張の無効化
• Explorer 周りの挙動がおかしい時の対処
• Autoruns で可能、ShellExView も便利
27 Nov. 2021 ©Murachi Akira aka hebikuzure 13
Autoruns
27 Nov. 2021 ©Murachi Akira aka hebikuzure 14
https://docs.microsoft.com/en-us/sysinternals/downloads/autoruns
Autoruns で設定できる自動起動エント
リ
• Logon Startup folder, Run Registry keys, and standard application launch locations.
• Explorer Explorer shell extensions, browser helper objects, explorer toolbars, active setup executions, shell
execute hooks.
• Internet Explorer Browser Helper Objects (BHO's), Internet Explorer toolbars and extensions.
• Services All Windows services configured to start automatically when the system boots.
• Drivers All kernel-mode drivers registered on the system except those that are disabled.
• Scheduled Tasks Task scheduler tasks configured to start at boot or logon.
• AppInit DLLs DLLs registered as application initialization DLLs.
• Boot Execute Native images (as opposed to Windows images) that run early during the boot process.
• Image Hijacks Image file execution options and command prompt autostarts.
• Known DLLs Reports the location of DLLs that Windows loads into applications that reference them.
• Winlogon Notifications Register for Winlogon notification of logon events.
• Winsock Providers Registered Winsock protocols, including Winsock service providers.
• LSA Providers Registered Local Security Authority (LSA) authentication, notification and security packages.
• Printer Monitor Drivers DLLs that load into the print spooling service.
• Sidebar Displays Windows Sidebar gadgets.
27 Nov. 2021 ©Murachi Akira aka hebikuzure 15
フィルター ドライバーの無効化
• How to temporarily deactivate the kernel
mode filter driver in Windows
• https://docs.microsoft.com/en-us/troubleshoot/windows-
server/performance/deactivate-kernel-mode-filter-driver
• HKLMSYSTEMCurrentControlSetServices
配下の対応するキーを見つけて、Start 値を
0x04 にして再起動
27 Nov. 2021 ©Murachi Akira aka hebikuzure 16
シェル拡張の確認と無効化
• ShellExView
• https://www.nirsoft.net/utils/shexview.html
27 Nov. 2021 ©Murachi Akira aka hebikuzure 17
最小化(コードの問題の場合)
• 現象が発生するコードを整理、エラーが発生する
最小限の動作だけ行うコードにする
• 他の環境での再現確認がしやすくなる
• デバッグしやすくなる
27 Nov. 2021 ©Murachi Akira aka hebikuzure 18
情報採取と解析
ログ、ダンプ、トレース
27 Nov. 2021 ©Murachi Akira aka hebikuzure 19
イベント ログ
• eventvwr.msc
27 Nov. 2021 ©Murachi Akira aka hebikuzure 20
ログの種類
• Windows ログ
• アプリケーション
• セキュリティ
• セットアップ
• システム
• アプリケーションとサービス ログ
• 各種
• サードパーティ製品のログもある
27 Nov. 2021 ©Murachi Akira aka hebikuzure 21
アプリケーションとサービス ログ
27 Nov. 2021 ©Murachi Akira aka hebikuzure 22
システム ログよりさらに詳細な情報
27 Nov. 2021 ©Murachi Akira aka hebikuzure 23
タスク マネージャー
• taskmgr.exe
27 Nov. 2021 ©Murachi Akira aka hebikuzure 24
Process Explorer
• 高級・高機能版タスク マネージャー
• https://docs.microsoft.com/en-us/sysinternals/downloads/process-explorer
27 Nov. 2021 ©Murachi Akira aka hebikuzure 25
Process Explorer – DLL の表示
27 Nov. 2021 ©Murachi Akira aka hebikuzure 26
Process Explorer – プロセス詳細情報
27 Nov. 2021 ©Murachi Akira aka hebikuzure 27
Process Monitor
• 強力ログ採取ツール
• https://docs.microsoft.com/en-us/sysinternals/downloads/procmon
27 Nov. 2021 ©Murachi Akira aka hebikuzure 28
Process Monitor のログ
• レジストリ
• ファイル
• ネットワーク
• プロセス
• プロファイリング
27 Nov. 2021 ©Murachi Akira aka hebikuzure 29
Process Monitor – イベント情報
27 Nov. 2021 ©Murachi Akira aka hebikuzure 30
ダンプ採取
• カーネル ダンプまたは完全なクラッシュ ダンプ
を生成する
• https://docs.microsoft.com/ja-jp/windows/client-management/generate-
kernel-or-complete-crash-dump
• プロセス ダンプ
• タスクマネージャーの [詳細] タブでプロセスを右ク
リック⇒[ダンプ ファイルの作成]
27 Nov. 2021 ©Murachi Akira aka hebikuzure 31
ダンプ解析 - WinDbg
• Windows デバッガー
• https://docs.microsoft.com/ja-jp/windows-hardware/drivers/debugger/
• Debugging Tools for Windows のダウンロー
ド
• https://docs.microsoft.com/ja-jp/windows-
hardware/drivers/debugger/debugger-download-tools
27 Nov. 2021 ©Murachi Akira aka hebikuzure 32
ネットワーク トレース
• netsh trace start capture=yes
• netsh trace stop
• etl ファイルの pcapng への変換
• etl2pcapng
https://github.com/microsoft/etl2pcapng
• Wireshark で解析
27 Nov. 2021 ©Murachi Akira aka hebikuzure 33
ネットワーク トレースの参考情報
• Netsh を使用したトレースの管理
• https://docs.microsoft.com/ja-jp/windows/win32/ndf/using-netsh-to-
manage-traces
• Wireshark · Go Deep.
• https://www.wireshark.org/
27 Nov. 2021 ©Murachi Akira aka hebikuzure 34
Wireshark
27 Nov. 2021 ©Murachi Akira aka hebikuzure 35
Fiddler
• Web デバッグ Proxy
• https://www.telerik.com/download/fiddler
• HTTP/HTTPS トラフィックのキャプチャと解析
27 Nov. 2021 ©Murachi Akira aka hebikuzure 36
HTTP ヘッダー/エンティティの解析
27 Nov. 2021 ©Murachi Akira aka hebikuzure 37
Fiddler その他の機能
• サーバー応答の偽装(Auto Responder)
• 任意のリクエスト送信(Composer)
• スクリプトによる自動実行(Fiddler Script)
27 Nov. 2021 ©Murachi Akira aka hebikuzure 38
開発者ツール
• F12
27 Nov. 2021 ©Murachi Akira aka hebikuzure 39
回避策の検討
どうするか、それが重要だ
27 Nov. 2021 ©Murachi Akira aka hebikuzure 40
検討のポイント
• 技術的要素
• 技術的可能性
• 難易度、工数
• サイド エフェクト
• 利用者的要素
• 利便性の変化
• 運用難易度、工数
• 金銭的コスト
27 Nov. 2021 ©Murachi Akira aka hebikuzure 41
27 Nov. 2021 ©Murachi Akira aka hebikuzure 42
Any question?
Thank you!

Windows クライアントのトラブルシューティングあれこれ