From 1f43ec4d66ec5e431b570fcfd2b7812ba171c03c Mon Sep 17 00:00:00 2001 From: Przemyslaw Klys Date: Thu, 8 Oct 2020 20:16:30 +0200 Subject: [PATCH] Updated Get-GPOZaurrFiles for lack of access --- Public/Get-GPOZaurrFiles.ps1 | 37 ++++++++++++++++++++++++++---------- 1 file changed, 27 insertions(+), 10 deletions(-) diff --git a/Public/Get-GPOZaurrFiles.ps1 b/Public/Get-GPOZaurrFiles.ps1 index 54ec864..a36bf82 100644 --- a/Public/Get-GPOZaurrFiles.ps1 +++ b/Public/Get-GPOZaurrFiles.ps1 @@ -284,16 +284,33 @@ $MetaData = Get-FileMetaData -File $_ -AsHashTable } if ($Signature) { - $DigitalSignature = Get-AuthenticodeSignature -FilePath $_.Fullname - $MetaData['SignatureStatus'] = $DigitalSignature.Status - $MetaData['IsOSBinary'] = $DigitalSignature.IsOSBinary - $MetaData['SignatureCertificateSubject'] = $DigitalSignature.SignerCertificate.Subject - if ($Extended) { - $MetaData['SignatureCertificateIssuer'] = $DigitalSignature.SignerCertificate.Issuer - $MetaData['SignatureCertificateSerialNumber'] = $DigitalSignature.SignerCertificate.SerialNumber - $MetaData['SignatureCertificateNotBefore'] = $DigitalSignature.SignerCertificate.NotBefore - $MetaData['SignatureCertificateNotAfter'] = $DigitalSignature.SignerCertificate.NotAfter - $MetaData['SignatureCertificateThumbprint'] = $DigitalSignature.SignerCertificate.Thumbprint + try { + $DigitalSignature = Get-AuthenticodeSignature -FilePath $_.Fullname -ErrorAction Stop + } catch { + Write-Warning "Get-GPOZaurrFiles - Error when reading signature: $($_.Exception.Message)" + } + if ($DigitalSignature) { + $MetaData['SignatureStatus'] = $DigitalSignature.Status + $MetaData['IsOSBinary'] = $DigitalSignature.IsOSBinary + $MetaData['SignatureCertificateSubject'] = $DigitalSignature.SignerCertificate.Subject + if ($Extended) { + $MetaData['SignatureCertificateIssuer'] = $DigitalSignature.SignerCertificate.Issuer + $MetaData['SignatureCertificateSerialNumber'] = $DigitalSignature.SignerCertificate.SerialNumber + $MetaData['SignatureCertificateNotBefore'] = $DigitalSignature.SignerCertificate.NotBefore + $MetaData['SignatureCertificateNotAfter'] = $DigitalSignature.SignerCertificate.NotAfter + $MetaData['SignatureCertificateThumbprint'] = $DigitalSignature.SignerCertificate.Thumbprint + } + } else { + $MetaData['SignatureStatus'] = 'Not available' + $MetaData['IsOSBinary'] = $null + $MetaData['SignatureCertificateSubject'] = $null + if ($Extended) { + $MetaData['SignatureCertificateIssuer'] = $null + $MetaData['SignatureCertificateSerialNumber'] = $null + $MetaData['SignatureCertificateNotBefore'] = $null + $MetaData['SignatureCertificateNotAfter'] = $null + $MetaData['SignatureCertificateThumbprint'] = $null + } } } if ($HashAlgorithm -ne 'None') {