- [System.Collections.ArrayList]$arr = @('"文件名","证书","序列号","颁发者","使用者","有效期"');
-
- forEach( $file In (dir 'C:\Windows\System32\drivers\*.sys') ){
- $sig = Get-AuthenticodeSignature $file.FullName;
- if( $sig.Status -eq 'Valid' ){
- $str = '"' + $file.Name + '",'; #文件名
- $str += '"' + $sig.SignerCertificate.Thumbprint + '",'; #证书
- $str += '"' + $sig.SignerCertificate.SerialNumber + '",'; #序列号
- $str += '"' + $sig.SignerCertificate.IssuerName.Name.split('=,')[1] + '",'; #颁发者
- $str += '"' + $sig.SignerCertificate.SubjectName.Name.split('=,')[1] + '",'; #使用者
- $str += '"' + $sig.SignerCertificate.NotBefore.ToString('yyyy/MM/dd HH:mm:ss'); #有效期
- $str += ' 至 ';
- $str += $sig.SignerCertificate.NotAfter.ToString('yyyy/MM/dd HH:mm:ss') + '"';
- $null = $arr.Add($str);
- }
- }
- sc 'D:\result.csv' $arr
复制代码
|