Как получить список запущенных процессов и запустить их с помощью алгоритма MD5

699
rogermoore

Привет мне нужно, чтобы иметь возможность получить список всех процессов, запущенных на моем Windows 10 и запустить их через алгоритм MD5. Есть ли способ сделать это автоматически в powershell?

Любая помощь очень ценится

1
Этот вопрос не имеет большого смысла, как он есть. Что, черт возьми, *** ты пытаешься достичь? Keltari 6 лет назад 0
Привет, извините, я постараюсь прояснить ситуацию. Я пытаюсь найти процесс, запущенный на моем компьютере, который соответствует хешу MD5, который я уже знаю. Я надеялся, что смогу автоматизировать это с помощью powershell, но, к сожалению, с помощью Google ничего не получилось. Я хочу получить список процессов, запущенных в настоящее время на моем компьютере, и обработать их (не уверен, если правильный термин извините) с помощью алгоритма md5 и посмотреть, смогу ли я найти тот, который соответствует хешу md5, который я уже знаю. rogermoore 6 лет назад 0
Что вы пытаетесь получить MD5 хэш? Имена процессов или содержимое запущенных файлов `.exe`? duskwuff 6 лет назад 2
Мне любопытно, почему вы хотите использовать хэш имени процесса, а не просто использовать имя процесса. Какой совет дает сравнение хеша для строки, столь же короткой, как и имена процессов? EBGreen 6 лет назад 0

2 ответа на вопрос

0
Keltari

Это не так просто, как должно быть. PowerShell может MD5 хэшировать файл изначально (используя Get-FileHash), но не строку.

К счастью, MS предлагает решение здесь .

#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()  } 

Скопируйте эту функцию и вставьте ее в приглашение PowerShell. Эта вызванная функция Get-StringHashбудет сохранена для этого сеанса PowerShell.

Проверьте MD5 хэшированием слова «test», набрав:

Get-StringHash "test" "MD5"

И вы должны получить хеш MD5 ниже:

098f6bcd4621d373cade4e832627b4f6

Как только это будет сделано, вы можете использовать эту функцию вместе с Get-Processполучением имен процессов и MD5 имен, как показано ниже:

get-process | ForEach-Object 
0
Clayton

Это утилита от Microsoft под названием Sysmon, которая обычно предназначена для сбора системной информации низкого уровня с целью отслеживания вредоносного ПО. Он устанавливается как служба и может быть настроен на запись хэша файла каждого процесса, который запускается в журнале событий. Вы можете настроить, какие типы хэшей (md5, sha1, sha2 и т. Д.) Записывать через файл конфигурации. Если это поможет достичь вашей цели, вы можете прочитать об этом здесь .

Журнал событий