web-dev-qa-db-ja.com

ウイルス対策プログラムは実行中のプロセスをスキャンしますか?

悪意のあるソフトウェアを実行していて、それをタスクマネージャーで確認できる場合、AVプログラムは実行中のプロセスをスキャンし、ウイルス/マルウェアであるかどうかをテストする必要がありますか?

または、AVは次のことを行う必要がありますか?

  1. それがウイルスであるかどうかを確認するために起動時にプログラムを検出します。つまり、プログラムは休止していて実行されておらず、AVによるディスクスキャンは行われていません。プログラムがAVを開始し、それを検出します。

  2. ディスク上でスキャンします。

  3. (元の質問)AVは現在実行中のプロセスをスキャンして、ウイルスを検出できますか?メモリのスキャンと同じですか?

たとえば、コンピュータ上のソフトウェアが「悪い」サイトにリクエストを送信していて、TCPViewのようなものでそれを見ることができる場合、ディスク全体をスキャンしてそれを見つけることなくAVがそれを見る必要がありますか?

2
johnny

AVは高価な操作であるため、実行中のプロセスを継続的にスキャンしません。プロセス起動通知にはWMIを使用することをお勧めします。

インメモリ検出に関する限り、AVは通常、ほとんどのシステムAPIをフックして、悪意がある場合にフラグを立てるプロセス動作を決定します。検出中sending out requests to bad sitesは心配です、それはあなたのAVに依存します、それが悪意のあるURLとしてそれを識別した場合、それはリクエストをブロックしますが、プロセスを強制終了しません(その既知の悪意のあるプロセスでない限り、それは事前に検出されます)。

例:ファイルが別のファイルを一時ディレクトリにダウンロードして実行した場合、そのファイルは悪意があると見なされます(フラグが立てられます)。 (PuTTY.exeをダウンロードしてtempから実行し、Virustotalにアップロードするexeを作成できます)。 AVがそれを分析しているとき、ダウンロード(WinHttpReadData)および起動プロセス(CreateProcess)のためのAPI呼び出しを見つけます。 AVはapiチェーンを作成して、ダウンロードされたファイルが実行中のファイルであるかどうか、およびプロセスがTempディレクトリから起動されたかどうかを判断します。

基本的に、メモリ内の悪意のある動作を検出するには多くの方法があります。

5
Ashutosh Raina

これはすべてAVの実装に依存します。広くアンチウイルスの傘下にあるいくつかのソフトウェアは、アクティブメモリをスキャンします。一部のAVでは、この機能はオプションであり、構成で設定されます。さらに、一部のAVは、ネットワークトラフィックの特定のプロパティをチェックして、悪意のあるアクティビティがないかどうかを確認できます。これらの機能は、「次世代AV」であると主張するソフトウェアにとってはかなり標準的ですが、従来のAVには当てはまります。特定のソフトウェアの詳細については、ベンダーにお問い合わせください。

2
DarkMatter