Powershell 실행중인 프로세스 목록을 가져 와서 MD5 알고리즘을 통해 실행하는 방법 실행되는 모든 프로세스 목록을

안녕하세요, 내 Windows 10에서 실행되는 모든 프로세스 목록을 가져 와서 MD5 알고리즘을 통해 실행할 수 있어야합니다. powershell에서 자동으로 수행하는 방법이 있습니까?

어떤 도움이라도 대단히 감사합니다



답변

이것은 쉬운 일이 아닙니다. 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 세션에 저장됩니다.

다음을 입력하여 “test”라는 단어를 해싱하여 MD5를 테스트하십시오.

Get-StringHash “테스트” “MD5”

그리고 아래 MD5 해시를 가져와야합니다.

098f6bcd4621d373cade4e832627b4f6

완료되면 해당 함수와 함께 Get-Process프로세스 이름과 이름의 MD5를 아래와 같이 얻을 수 있습니다.

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

답변

Sysmon이라는 Microsoft의 유틸리티는 일반적으로 맬웨어 추적을 목적으로 낮은 수준의 시스템 정보를 수집하기위한 것입니다. 서비스로 설치되며 이벤트 로그에서 시작된 각 프로세스의 파일 해시를 기록하도록 구성 할 수 있습니다. 구성 파일을 통해 기록 할 해시 유형 (md5, sha1, sha2 등)을 구성 할 수 있습니다. 이것이 목표 달성에 도움이된다면 여기에서 자세한 내용을 읽어보십시오 .