Hello, we are fossBytes.

fossBytesに4月30日(米国時間)に掲載された記事「How To Find And Kill A Remote Connecting Malware On Windows 10」が、Windows 10でコマンドを使用してマルウェアと疑わしきプロセスを特定して削除する方法を伝えた。紹介されている方法ですべてのマルウェアを削除できるわけではないが、マルウェア対策として知っておいて損はない。

マルウェアの多くは外部のサーバと通信することで情報の窃取やほかのマルウェアのダウンロードやインストール、バックドアとしての動作などを行う仕組みになっている。記事ではこのように外部のホストと通信しているソフトウェアを調べることで、マルウェアとして疑わしきソフトウェアを突き止め、システムから削除する方法を説明している。

記事では通信を調べるコマンドとしてnetstatを取り上げている。コマンドプロンプトを管理者権限で起動してから「netstat -b -o 5」のようにオプションを指定してnetstatコマンドを実行。繰り返しネットワークの接続状況を表示させ、この中から覚えのないソフトウェアが外部と通信しているかどうかを調べている。

netstat -b -o 5の実行サンプル

netstat -b -o 5の実行サンプル

タスクマネージャを起動

「ファイルの場所を開く」と「タスクの終了」がここでポイントとなる操作

netstatに-bと-oを指定することでバイナリ名とプロセスIDも表示されるようになっているので、タスクマネージャを起動してからバイナリ名やプロセスIDを頼りに目的とするソフトウェアを特定。「ファイルの場所を開く」を選択してバイナリファイルの実態をファイルエクスプローラで表示させ、疑わしきファイルである場合には削除などを実施すると説明している。「ファイルの場所を開く」を選択する前に「タスクの終了」を選択してしまうとファイルの実態がわからなくなってしまうため、「タスクの終了」は「ファイルの場所を開く」を選択してファイルを開いて、場合によっては削除を実施してからということになる。

紹介されている方法ですべてのマルウェアを特定できるわけではないし、システムに必要なファイルを削除しかねない危険もある。しかし、netstatコマンドを使うなどしてネットワークの接続状況を調べることには意味がある。システムの中身をブラックボックスとして扱わず、内部でどういったプロセスが動作しているかを知ることは問題が発生した時の原因追及などにおいて役立つことがある。