Powershell, wie eine Liste der laufenden Prozesse abgerufen und durch den MD5-Algorithmus ausgeführt wird

744
rogermoore

Hallo, ich muss in der Lage sein, eine Liste aller auf meinem Windows 10 ausgeführten Prozesse abzurufen und sie durch den MD5-Algorithmus auszuführen. Gibt es eine Möglichkeit, dies automatisch in Powershell durchzuführen?

Jede Hilfe wird sehr geschätzt

1
Diese Frage macht nicht viel Sinn, wie sie ist. Was genau willst du damit erreichen? Keltari vor 6 Jahren 0
Hallo Entschuldigung, ich werde versuchen, es klarer zu machen. Ich versuche, auf meinem Computer einen Prozess zu finden, der mit einem MD5-Hash übereinstimmt, den ich bereits kenne. Ich hatte gehofft, dass ich dies mit Powershell automatisieren könnte, aber leider hat Google noch nichts aufgedeckt. Ich möchte die Liste der Prozesse, die derzeit auf meinem Computer ausgeführt werden, durch den MD5-Algorithmus verarbeiten und sie verarbeiten (nicht sicher, ob der korrekte Begriff "Entschuldigung"), und sehen, ob ich einen finden kann, der mit dem MD5-Hash übereinstimmt, den ich bereits kenne. rogermoore vor 6 Jahren 0
Wofür versuchst du den MD5-Hash von? Die Prozessnamen oder der Inhalt der `.exe'-Dateien, die ausgeführt werden? duskwuff vor 6 Jahren 2
Ich bin neugierig, warum Sie den Hash des Prozessnamens verwenden möchten, anstatt nur den Prozessnamen zu verwenden. Welche Vorteile bietet der Vergleich des Hashes für einen String, der so kurz ist wie Prozessnamen? EBGreen vor 6 Jahren 0

2 Antworten auf die Frage

0
Keltari

Das ist nicht so einfach, wie es sein sollte. PowerShell kann MD5- Dateien nativ häkeln (using Get-FileHash), jedoch keine Zeichenfolge.

Glücklicherweise bietet MS hier eine Lösung .

#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 aufgerufene Funktion Get-StringHashwird für diese PowerShell-Sitzung gespeichert.

Testen Sie das MD5-Hashing "test", 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 Get-Processden Prozessnamen und MD5 der Namen wie folgt verwenden:

get-process | ForEach-Object 
0
Clayton

Das ist ein Dienstprogramm von Microsoft mit dem Namen Sysmon, das normalerweise zum Sammeln von Systeminformationen auf niedriger Ebene zum Zwecke der Malware-Verfolgung gedacht ist. Es wird als Dienst installiert und kann so konfiguriert werden, dass es den Dateihash jedes Prozesses aufzeichnet, der im Ereignisprotokoll gestartet wird. Sie können konfigurieren, welche Hashtypen (MD5, SHA1, SHA2 usw.) durch eine Konfigurationsdatei aufgezeichnet werden sollen. Wenn dies helfen würde, Ihr Ziel zu erreichen, können Sie hier mehr darüber erfahren .

Ereignisprotokoll