PowerShell, wie eine Liste der ausgeführten Prozesse abgerufen und über den MD5-Algorithmus ausgeführt wird [closed]


1

Hallo, ich muss in der Lage sein, eine Liste aller unter Windows 10 ausgeführten Prozesse abzurufen und diese über den MD5-Algorithmus auszuführen. Gibt es eine Möglichkeit, dies automatisch in Powershell zu tun?

Jede Hilfe wird sehr geschätzt


Diese Frage macht nicht viel Sinn, wie es ist. Was genau versuchst du es zu erreichen
Keltari

Hi sorry ich werde versuchen es klarer zu machen. Ich versuche, einen Prozess zu finden, der auf meinem Computer ausgeführt wird und mit einem MD5-Hash übereinstimmt, den ich bereits kenne. Ich hatte gehofft, ich könnte dies mit Powershell automatisieren, aber leider hat Google nichts aufgedreht. Ich möchte die Liste der aktuell auf meinem Computer ausgeführten Prozesse abrufen und sie mithilfe des md5-Algorithmus verarbeiten (nicht sicher, ob der richtige Begriff verwendet wird).
rogermoore

2
Wovon versuchst du den MD5-Hash zu bekommen? Die Prozessnamen oder der Inhalt der .exe Dateien, die ausgeführt werden?
duskwuff

Ich bin neugierig, warum Sie den Hash des Prozessnamens wollen, anstatt nur den Prozessnamen zu verwenden. Welchen Vorteil hat der Vergleich des Hashs für eine Zeichenfolge, die so kurz wie Prozessnamen ist?
EBGreen

Antworten:


0

Das ist nicht so einfach, wie es sein sollte. PowerShell kann MD5-Hash a Datei nativ (mit Get-FileHash ), aber keine Zeichenfolge.

Zum Glück bietet MS eine Lösung Hier .

#http://jongurgul.com/blog/get-stringhash-get-filehash/ 
Function Get-StringHash([String] $String,$HashName = "MD5") 
{ 
$StringBuilder = New-Object System.Text.StringBuilder 
[System.Security.Cryptography.HashAlgorithm]::Create($HashName).ComputeHash([System.Text.Encoding]::UTF8.GetBytes($String))|%{ 
[Void]$StringBuilder.Append($_.ToString("x2")) 
} 
$StringBuilder.ToString() 
}

Kopieren Sie diese Funktion und fügen Sie sie in eine PowerShell-Eingabeaufforderung ein. Diese Funktion wurde aufgerufen Get-StringHash wird für diese PowerShell-Sitzung gespeichert.

Testen Sie, ob MD5 das Wort "test" enthält, indem Sie Folgendes eingeben:

Get-StringHash "test" "MD5"

Und Sie sollten den MD5-Hash unten erhalten:

098f6bcd4621d373cade4e832627b4f6

Sobald dies erledigt ist, können Sie diese Funktion zusammen mit verwenden Get-Process um die Prozessnamen und MD5 der Namen wie folgt zu erhalten:

get-process | ForEach-Object {write-host $_.Name ; Get-Stringhash "$_.Name" "MD5"}

0

Hierbei handelt es sich um ein Dienstprogramm von Microsoft mit dem Namen Sysmon, das normalerweise zum Sammeln von Systeminformationen auf niedriger Ebene zum Zweck der Verfolgung von Malware vorgesehen ist. Es wird als Dienst installiert und kann so konfiguriert werden, dass der Datei-Hash jedes Prozesses, der im Ereignisprotokoll gestartet wird, aufgezeichnet wird. Sie können konfigurieren, welche Hash-Typen (md5, sha1, sha2 usw.) über eine Konfigurationsdatei aufgezeichnet werden sollen. Wenn dies dazu beitragen würde, Ihr Ziel zu erreichen, können Sie mehr darüber lesen Hier .

eventlog

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.