プロセスモニタについて
今日のGeek Schoolでは、Process Monitorユーティリティを使用して内部でのぞき見をしたり、お気に入りのアプリケーションが実際に何をしているのか、アクセスしているファイル、レジストリキーについて説明します。使うなど.
学校のナビゲーション- SysInternalsツールとは何ですか??
- プロセスエクスプローラについて
- Process Explorerを使用したトラブルシューティングと診断
- プロセスモニタについて
- Process Monitorを使用したトラブルシューティングとレジストリハッキングの発見
- 自動実行を使用して起動プロセスとマルウェアを処理する
- BgInfoを使ってデスクトップにシステム情報を表示する
- PsToolsを使用してコマンドラインから他のPCを制御する
- ファイル、フォルダ、ドライブの分析と管理
- ツールをまとめて使用する
数日かけて行ったProcess Explorerユーティリティとは異なり、Process Monitorはコンピュータ上で発生するすべてのものを受動的に表示することを目的としており、プロセスを強制終了したりハンドルを閉じるためのアクティブなツールではありません。これは、Windows PCで発生したすべてのイベントについて、グローバルログファイルを覗いてみるのと同じです。.
お気に入りのアプリケーションが実際にどのレジストリキーに設定を保存しているのかを知りたいですか。サービスがどのファイルにどの程度の頻度でアクセスしているかを把握したいですか。アプリケーションがいつネットワークに接続しているのか、または新しいプロセスを開いているのかを確認したいですか。救助するのはProcess Monitorです.
レジストリハッキングに関する記事はこれ以上作成していませんが、最初に起動したときにはProcess Monitorを使用してどのレジストリキーにアクセスしていたのかを確認し、そのレジストリキーを微調整してどうなるかを確認しました。誰もがこれまでに誰も見たことがないレジストリハックをどのように見つけ出したのか不思議に思ったことがあるのであれば、それはおそらくProcess Monitorによるものです。.
Process Monitorユーティリティは、FilemonとRegmonという2つの異なる旧式のユーティリティを組み合わせて作成されました。これらは、名前が示すとおりファイルとレジストリの動作を監視するために使用されていました。これらのユーティリティはまだ入手可能であり、また特定のニーズには適しているかもしれませんが、Process Monitorは大量のイベントをより適切に処理できるように設計されているため、Process Monitorを使用するほうがはるかに適しています。.
Process Monitorは、それらすべてのイベントをキャプチャするために内部にカーネルドライバをロードするため、常に管理者モードを必要とすることも注目に値します。 Windows Vista以降では、UACダイアログが表示されますが、XPまたは2003では、使用するアカウントに管理者権限があることを確認する必要があります。.
プロセスモニタがキャプチャするイベント
Process Monitorは大量のデータをキャプチャしますが、PC上で発生するすべてのものをキャプチャするわけではありません。たとえば、Process Monitorは、マウスを動かしても構いませんし、ドライバが最適に動作しているかどうかもわかりません。どのプロセスが開いていてコンピュータのCPUを無駄にしているかを追跡するのではありません。結局のところ、それがProcess Explorerの仕事です。.
それがすることはそれらがファイルシステム、レジストリ、あるいはネットワークを通して起こるかどうか、特定のタイプのI / O(Input / Output)オペレーションを捕獲することです。それはさらに限られた方法で少数の他の出来事を追跡するでしょう。このリストはそれがキャプチャするイベントをカバーします:
- レジストリ - これは、キーの作成、それらの読み取り、それらの削除、またはそれらへの問い合わせです。あなたはこれがどれほど頻繁に起こるかに驚くでしょう.
- ファイルシステム - これはファイルの作成、書き込み、削除などである可能性があり、ローカルハードドライブとネットワークドライブの両方で発生する可能性があります。.
- ネットワーク - これはTCP / UDPトラフィックの送信元と送信先を表示しますが、残念ながらデータは表示されないため、やや使いにくくなります。.
- プロセス - これらは、プロセスが開始された、スレッドが開始または終了した、プロセスおよびスレッドのイベントです。これは特定のインスタンスでは有用な情報ですが、代わりにProcess Explorerで確認したいことがよくあります。.
- プロファイリング - これらのイベントはProcess Monitorによって取得され、各プロセスで使用されているプロセッサ時間とメモリ使用量を確認します。繰り返しますが、おそらくこれらのことを追跡するためにProcess Explorerを使用することをお勧めしますが、必要な場合はここで役立ちます。.
そのため、Process Monitorは、レジストリ、ファイルシステム、ネットワークのいずれを介して行われる場合でも、あらゆる種類のI / O操作をキャプチャできます。実際に書き込まれるデータはキャプチャされません。プロセスがこれらのストリームの1つに書き込んでいるという事実を見ているだけなので、後で何が起こっているのかを詳しく知ることができます。.
プロセスモニタインタフェース
Process Monitorインターフェースを初めて起動すると、膨大な数のデータ行が表示され、さらに多くのデータがすぐに飛び交います。重要なことは、少なくとも、あなたが何を見ているのか、そして何を探しているのかについて、何らかのアイデアを持つことです。これは、あなたがリラックスした一日をブラウズするのに費やすタイプのツールではありません。ごく短時間のうちに、何百万もの行を見ることになるからです。.
最初にしたいことは、表示したいデータの非常に小さいサブセットまで、これらの数百万行をフィルター処理することです。フィルターの作成方法と、検索したいものに集中する方法を説明します。 。しかし、最初に、あなたはインターフェースと、どんなデータが実際に利用可能であるかを理解するべきです.
デフォルトの列を見る
デフォルトの列には大量の有用な情報が表示されますが、それぞれのデータに実際にどのようなデータが含まれているのかを理解するためのコンテキストが必要です。フード。これが、デフォルトの各列の用途です。
- 時間 - この列は一目瞭然で、イベントが発生した正確な時刻を示しています.
- プロセス名 - イベントを生成したプロセスの名前デフォルトではファイルへのフルパスは表示されませんが、フィールドの上にマウスを置くと、それがどのプロセスであるかを正確に確認できます。.
- PID - イベントを生成したプロセスのプロセスIDあなたがどのsvchost.exeプロセスがイベントを生成したか理解しようとしているならば、これは非常に役に立ちます。プロセスが自分自身を再起動しないことを前提として、それは監視のために単一のプロセスを分離するための素晴らしい方法でもあります。.
- 操作 - これはログに記録されている操作の名前であり、イベントタイプ(レジストリ、ファイル、ネットワーク、プロセス)のいずれかと一致するアイコンがあります。 RegQueryKeyやWriteFileのように、これらは少し混乱を招く可能性がありますが、混乱を避けるためにお手伝いします。.
- パス - これはプロセスのパスではなく、このイベントによって処理されていたものすべてへのパスです。たとえば、WriteFileイベントが発生した場合、このフィールドにはタッチされているファイルまたはフォルダの名前が表示されます。これがレジストリイベントの場合は、アクセスされている完全キーが表示されます。.
- 結果 - これは、SUCCESSまたはACCESS DENIEDのようにコード化されている操作の結果を示しています。 BUFFER TOO SMALLは本当に悪いことが起こったことを意味すると自動的に想定するように誘惑されるかもしれませんが、実際にはほとんどの場合そうではありません.
- 細部 - 通常のオタクトラブルシューティングの世界には変換されないことが多い追加情報.
[オプション] - > [列の選択]を選択して、デフォルトの表示に列を追加することもできます。これは、テストを開始するときの最初の段階ではお勧めできませんが、列について説明しているので、既に言及する価値があります。.
表示に列を追加する理由の1つは、データに圧倒されることなく、これらのイベントで非常に迅速にフィルター処理できるようにすることです。ここで私たちが使用するいくつかの追加の列がありますが、状況によってはリスト内の他のいくつかのために使用を見つけるかもしれません.
- コマンドライン - 各イベントをダブルクリックして各イベントを生成したプロセスのコマンドライン引数を見ることができますが、すべてのオプションを一目で確認するのに役立ちます。.
- 会社名 - このコラムが役立つ主な理由は、すべてのMicrosoftイベントをすばやく除外して、Windowsの一部ではない他のすべてのイベントに監視を絞り込むことができるためです。 (マルウェアが隠されている可能性があるので、Process Explorerを使用して、奇妙なrundll32.exeプロセスが実行されていないことを確認する必要があります)。.
- 親PID - これは、Webブラウザや別のプロセスとして大ざっぱなものを起動し続けるアプリケーションなど、多数の子プロセスを含むプロセスのトラブルシューティングを行う場合に非常に役立ちます。その後、親PIDでフィルタリングして、確実にすべてをキャプチャします。.
列が表示されていなくても列データでフィルタリングできることは注目に値しますが、手動で行うよりも右クリックしてフィルタリングする方がはるかに簡単です。はい、まだ説明していませんが、フィルタについて再度言及しました。.
単一のイベントを調べる
リストで物を見ることは一度にたくさんの異なるデータポイントを素早く見るための素晴らしい方法ですが、それは確かに単一のデータを調べる最も簡単な方法ではありません、そしてあなたが見ることができる非常に多くの情報だけがありますリスト。ありがたいことにあなたは追加情報の宝庫にアクセスするために任意のイベントをダブルクリックすることができます.
デフォルトの[イベント]タブには、リストに表示されているものとほぼ同じ情報が表示されますが、パーティーにもう少し情報が追加されます。ファイルシステムイベントを見ると、属性、ファイル作成時間、書き込み操作中に試行されたアクセス、書き込まれたバイト数、期間などの特定の情報を見ることができます。.
[プロセス]タブに切り替えると、イベントを生成したプロセスに関する多くの優れた情報が得られます。通常、Process Explorerを使用してプロセスを処理することをお勧めしますが、特定のイベントを生成した特定のプロセスに関する多くの情報があると非常に役立ちます。プロセスリストこのようにしてデータがキャプチャされます.
Stackタブは時々非常に役立つでしょうが、時には全く役に立ちません。スタックを調べたい理由は、Module列を調べて、正しく表示されないものを調べてトラブルシューティングできるようにするためです。.
例として、プロセスが絶えず存在しないファイルを照会またはアクセスしようとしていたと想像してみてください。しかし、その理由はわかりませんでした。 Stackタブを調べて、正しく表示されないモジュールがあるかどうかを確認してから、それらを調べてください。古くなっているコンポーネント、あるいはマルウェアでさえ問題を引き起こしているのかもしれません。.
または、ここでは役に立ちませんが、それも問題ありません。他にも調べるべきデータがたくさんあります.
バッファオーバーフローに関する注意
さらに先に進む前に、私たちはあなたがリストの中でたくさん目にすることを始めようとしている結果コードに注目したいと思うでしょう、そして今までのあなたのすべてのオタク知識に基づいて、あなたは少し気を悪くするかもしれませんあなたがリストにBUFFER OVERFLOWを見始めたら、誰かがあなたのコンピュータをハッキングしようとしていると仮定しないでください。.
次のページ:Process Monitorがキャプチャするデータのフィルタリング