
다운로드했거나 시스템에 있는 파일이 Microsoft에서 제공한 파일이고 변조되지 않았는지 확인할 수 있는 방법이 있습니까? 그렇다면 PowerShell 방식이 있나요?
커맨드렛 을 사용하려고 하는데 Get-AuthenticodeSignature
올바른 방향으로 가고 있는지 잘 모르겠습니다.
누구든지 이것에 대해 나를 도와줄 수 있습니까?
다음은 파일에 대해 얻은 출력입니다.
PS C:> Get-AuthenticodeSignature -FilePath .\sts2016-kb3141486-fullfile-x64-glb.exe | 플로리다
서명자 인증서: [제목] CN=Microsoft Corporation, OU=MOPR, O=Microsoft Corporation, L=Redmond, S=워싱턴, C=US
[Issuer] CN=Microsoft Code Signing PCA, O=Microsoft Corporation, L=Redmond, S=Washington, C=US [Serial Number] 330000014096A9EE7056FECC07000100000140 [Not Before] 8/18/2016 8:17:17 PM [Not After] 11/2/2017 8:17:17 PM [Thumbprint] 98ED99A67886D020C564923B7DF25E9AC019DF26
타임스탬퍼인증서:
상태 : 유효
StatusMessage : 서명이 확인되었습니다.
경로 : C:\sts2016-kb3141486-fullfile-x64-glb.exe
서명 유형: 인증코드
IsOSBinary : 거짓
그렇다면 파일을 확인하고 발급자가 동일하고 서명이 확인되면 해당 파일이 안전하다고 간주할 수 있습니까?
감사해요!
답변1
체크섬을 사용하거나 Microsoft가 다운로드 페이지에서 패키지 해시라고 부르는 방식을 사용할 수 있습니다. 이는 파일에서 생성할 수 있는 해시입니다. 정보페이지에서소프트웨어제공하신 내용 중 아래쪽에는 파일 해시 정보가 있는 섹션이 있습니다.
이 정보를 사용하여 올바른 소프트웨어를 다운로드했는지 확인할 수 있습니다. PowerShell에는 파일에서 실행하는 Get-FileHash라는 cmdlet이 있습니다. 기본적으로 SHA256을 사용합니다. -Algorithm 매개변수를 사용하면 다른 알고리즘을 사용할 수 있습니다. 아래 예에서는 위 스크린샷과 일치하는 SHA1을 사용했습니다. -Algorithm SHA256을 사용하면 스크린샷의 'Package hash SHA 2'와 일치합니다.
Get-FileHash C:\sts2016-kb3141486-fullfile-x64-glb.exe -Algorithm SHA1
Algorithm Hash Path
--------- ---- ----
SHA1 1B30B50FEB5FB3F8D764C6C0D6523DBA5BE05C1E C:\sts2016-kb3141486-fullfile-x64-glb.exe
해시가 일치하면 다운로드에 확신을 가질 수 있습니다.
고마워요, 팀.