Implantar arquivos de catálogo para dar suporte ao Windows Defender Application Control

Observação

Alguns recursos do Windows Defender Application Control só estão disponíveis em versões específicas do Windows. Para obter mais informações, consulte Windows Defender disponibilidade de recursos do Controle de Aplicativo.

Arquivos de catálogo podem ser importantes na implantação de Windows Defender WDAC (Controle de Aplicativo) se você tiver aplicativos LOB (linha de negócios) não assinados para os quais o processo de assinatura é difícil. Você também pode usar arquivos de catálogo para adicionar sua própria assinatura aos aplicativos obtidos por fornecedores de software independentes (ISV) quando não quiser confiar em todos os códigos assinados por esse ISV. Dessa forma, os arquivos de catálogo fornecem uma maneira conveniente para você "abençoar" aplicativos para uso em seu ambiente gerenciado pelo WDAC. E, você pode criar arquivos de catálogo para aplicativos existentes sem exigir acesso ao código-fonte original ou precisar de qualquer reembalagem cara.

Você precisa obter um certificado de assinatura de código para seu próprio uso e usá-lo para assinar o arquivo de catálogo. Em seguida, distribua o arquivo de catálogo assinado usando seu mecanismo de implantação de conteúdo preferencial.

Por fim, adicione uma regra de signatário à sua política WDAC para seu certificado de assinatura. Em seguida, todos os aplicativos cobertos por seus arquivos de catálogo assinados podem ser executados, mesmo que os aplicativos não tenham sido assinados anteriormente. Com essa base, você pode criar mais facilmente uma política WDAC que bloqueia todos os códigos não assinados, porque a maioria dos malwares não está assinada.

Criar arquivos de catálogo usando o Inspetor de Pacotes

Para criar um arquivo de catálogo para um aplicativo existente, você pode usar uma ferramenta chamada Inspetor de Pacotes que vem com o Windows.

  1. Aplique uma política no modo de auditoria ao computador em que você executa o Inspetor de Pacotes. O Inspetor de Pacotes usa eventos de auditoria para incluir hashes no arquivo de catálogo para quaisquer arquivos de instalação temporários adicionados e removidos do computador durante o processo de instalação. A política de modo de auditoria não deve permitir binários do aplicativo ou você pode perder alguns arquivos críticos necessários no arquivo de catálogo.

    Observação

    Você não poderá concluir esse processo se ele for feito em um sistema com uma política imposta, a menos que a política imposta já permita que o aplicativo seja executado.

    Você pode usar este exemplo do PowerShell para fazer uma cópia do modelo de DefaultWindows_Audit.xml:

    Copy-Item -Path $env:windir\schemas\CodeIntegrity\ExamplePolicies\DefaultWindows_Audit.xml -Destination $env:USERPROFILE\Desktop\
    $PolicyId = Set-CIPolicyIdInfo -FilePath $env:USERPROFILE\Desktop\DefaultWindows_Audit.xml -PolicyName "Package Inspector Audit Policy" -ResetPolicyID
    $PolicyBinary = $env:USERPROFILE+"\Desktop\"+$PolicyId.substring(11)+".cip"
    

    Em seguida, aplique a política conforme descrito em Implantar Windows Defender políticas de Controle de Aplicativo com script.

  2. Inicie o Inspetor de Pacotes para monitorar a criação de arquivos em uma unidade local em que você instala o aplicativo, por exemplo, unidade C:

    PackageInspector.exe Start C:
    

    Importante

    Todos os arquivos gravados na unidade que você está assistindo com o Inspetor de Pacotes serão incluídos no catálogo criado. Esteja ciente de qualquer outro processo que possa estar executando e criando arquivos na unidade.

  3. Copie a mídia de instalação para a unidade que você está assistindo com o Inspetor de Pacotes, para que o instalador real seja incluído no arquivo de catálogo final. Se você ignorar essa etapa, poderá permitir que o aplicativo seja executado, mas não seja realmente capaz de instalá-lo.

  4. Instale o aplicativo.

  5. Inicie o aplicativo para garantir que os arquivos criados na inicialização inicial sejam incluídos no arquivo de catálogo.

  6. Use o aplicativo como faria normalmente, para que os arquivos criados durante o uso normal sejam incluídos no arquivo de catálogo. Por exemplo, alguns aplicativos podem baixar mais arquivos no primeiro uso de um recurso dentro do aplicativo. Certifique-se de também marcar para atualizações de aplicativo se o aplicativo tiver essa funcionalidade.

  7. Feche e reabra o aplicativo para garantir que a verificação tenha capturado todos os binários.

  8. Conforme apropriado, com o Inspetor de Pacotes ainda em execução, repita as etapas anteriores para quaisquer outros aplicativos que você deseja incluir no catálogo.

  9. Quando você confirmar que as etapas anteriores estão concluídas, use os comandos a seguir para parar o Inspetor de Pacotes. Ele cria um arquivo de catálogo e um arquivo de definição de catálogo no local especificado. Use uma convenção de nomenclatura para seus arquivos de catálogo para facilitar o gerenciamento dos arquivos de catálogo implantados ao longo do tempo. Os nomes de arquivo usados neste exemplo são LOBApp-Contoso.cat (arquivo de catálogo) e LOBApp.cdf (arquivo de definição).

    Para o último comando, que interrompe o Inspetor de Pacotes, especifique a mesma unidade local que você tem assistido com o Inspetor de Pacotes, por exemplo, C:.

    $ExamplePath=$env:userprofile+"\Desktop"
    $CatFileName=$ExamplePath+"\LOBApp-Contoso.cat"
    $CatDefName=$ExamplePath+"\LOBApp.cdf"
    PackageInspector.exe Stop C: -Name $CatFileName -cdfpath $CatDefName
    

Observação

O Inspetor de Pacotes cataloga os valores de hash de cada arquivo descoberto. Se os aplicativos que foram verificados forem atualizados, conclua esse processo novamente para confiar nos valores de hash dos novos binários.

Quando concluída, a ferramenta salva os arquivos em sua área de trabalho. Você pode exibir o *.cdf arquivo com um editor de texto e ver quais arquivos o Inspetor de Pacotes incluiu. Você também pode clicar duas vezes no *.cat arquivo para ver seu conteúdo e marcar para um hash de arquivo específico.

Assinar seu arquivo de catálogo

Agora que você criou um arquivo de catálogo para seu aplicativo, está pronto para assiná-lo. Recomendamos usar o serviço Assinatura Confiável da Microsoft para assinatura de catálogo. Opcionalmente, você pode assinar manualmente o catálogo usando o Signtool usando as instruções a seguir.

Assinatura do catálogo com SignTool.exe

Se você comprou um certificado de assinatura de código ou emitiu um de sua própria PKI (infraestrutura de chave pública), poderá usar SignTool.exe para assinar seus arquivos de catálogo.

Você precisa:

  • SignTool.exe, encontrado no SDK (kit de desenvolvimento de software) do Windows.
  • O arquivo de catálogo que você criou anteriormente.
  • Um certificado de assinatura de código emitido de uma autoridade de certificado interna (AC) ou de um certificado de assinatura de código comprado.

Para o certificado de assinatura de código que você usa para assinar o arquivo de catálogo, importe-o para o repositório pessoal do usuário de assinatura. Em seguida, assine o arquivo de catálogo existente copiando cada um dos comandos a seguir em uma sessão de Windows PowerShell elevada.

  1. Inicialize as variáveis a serem usadas. Substitua as $ExamplePath variáveis e $CatFileName conforme necessário:

     $ExamplePath=$env:userprofile+"\Desktop"
     $CatFileName=$ExamplePath+"\LOBApp-Contoso.cat"
    
  2. Assine o arquivo de catálogo usando Signtool.exe:

     <path to signtool.exe> sign /n "ContosoSigningCert" /fd sha256 /v $CatFileName
    

    Observação

    A <Path to signtool.exe> variável deve ser o caminho completo para o utilitário Signtool.exe. ContosoSigningCert representa o nome do assunto do certificado que você usa para assinar o arquivo de catálogo. Esse certificado deve ser importado para o repositório de certificados pessoais no computador no qual você está tentando assinar o arquivo de catálogo.

    Para obter mais informações sobre Signtool.exe e todos os comutadores adicionais, consulte Ferramenta de Sinal.

  3. Verifique a assinatura digital do arquivo de catálogo. Clique com o botão direito do mouse no arquivo de catálogo e selecione Propriedades. Na guia Assinaturas Digitais, verifique se o certificado de assinatura existe usando um algoritmo sha256, conforme mostrado na Figura 1.

    Lista de assinaturas digitais em propriedades de arquivo.

    Figura 1. Verifique se o certificado de assinatura existe.

Implantar o arquivo de catálogo em seus pontos de extremidade gerenciados

Os arquivos de catálogo no Windows são armazenados em %windir%\System32\catroot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}.

Para fins de teste, você pode copiar manualmente arquivos de catálogo assinados para esta pasta. Para implantação em larga escala de arquivos de catálogo assinados, use preferências de arquivo de política de grupo ou um produto de gerenciamento de sistemas empresariais, como Microsoft Configuration Manager.

Implantar arquivos de catálogo com política de grupo

Para simplificar o gerenciamento de arquivos de catálogo, você pode usar preferências de política de grupo para implantar arquivos de catálogo nos computadores apropriados em sua organização.

O processo a seguir orienta você sobre a implantação de um arquivo de catálogo assinado chamado LOBApp-Contoso.cat para uma OU de teste chamada PCs habilitados para WDAC com um GPO chamado Teste de GPO de Arquivo de Catálogo contoso.

  1. De um controlador de domínio ou de um computador cliente que tenha Ferramentas de Administração do Servidor Remoto instalado, abra o Console de Gerenciamento de Política de Grupo executando GPMC.MSC ou procurando Política de Grupo Gerenciamento.

  2. Crie um novo GPO: clique com o botão direito do mouse em uma OU, por exemplo, nos PCs habilitados para WDAC OU e selecione Criar um GPO neste domínio e Vincule-o aqui, conforme mostrado na Figura 2.

    Observação

    Você pode usar qualquer nome da U. Além disso, a filtragem de grupo de segurança é uma opção quando você considera diferentes maneiras de combinar políticas WDAC.

    Política de Grupo Management, crie um GPO.

    Figura 2. Crie um novo GPO.

  3. Dê um nome ao novo GPO, por exemplo, Teste de GPO de Arquivo de Catálogo da Contoso ou qualquer nome que você preferir.

  4. Abra o Editor de Gerenciamento de Política de Grupo: clique com o botão direito do mouse no novo GPO e selecione Editar.

  5. No GPO selecionado, navegue até Configuração do Computador\Preferências\Configurações do Windows\Arquivos. Clique com o botão direito do mouse em Arquivos, aponte para Novo e selecione Arquivo, conforme mostrado na Figura 3.

    Política de Grupo Management Editor, Novo Arquivo.

    Figura 3. Crie um novo arquivo.

  6. Configure o compartilhamento de arquivos de catálogo.

    Para usar essa configuração a fim de oferecer uma implantação consistente de seu arquivo de catálogo (neste exemplo, LOBApp-Contoso.cat), o arquivo de origem deve estar em um compartilhamento que seja acessível para a conta de computador de todos os computadores implantados. Este exemplo usa um compartilhamento em um computador que executa Windows 10 chamado \\Contoso-Win10\Share. O arquivo de catálogo que está sendo implantado é copiado nesse compartilhamento.

  7. Para manter as versões consistentes, na caixa de diálogo Novas Propriedades de Arquivo , conforme mostrado na Figura 4, selecione Substituir na lista Ação para que a versão mais recente seja sempre usada.

    Propriedades do arquivo, opção Substituir.

    Figura 4. Defina as novas propriedades do arquivo.

  8. Na caixa Arquivo de origem , digite o nome do compartilhamento acessível, com o nome do arquivo de catálogo incluído. Por exemplo, \\Contoso-Win10\share\LOBApp-Contoso.cat.

  9. Na caixa Arquivo de Destino, digite um nome de arquivo e caminho, por exemplo:

    C:\Windows\System32\catroot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}\LOBApp-Contoso.cat

    Para o nome do arquivo de catálogo, use o nome do catálogo que você está implantando.

  10. Na guia Comum da caixa de diálogo Novas Propriedades de Arquivo, selecione a opção Remover este item quando ele não for mais aplicado. Habilitar essa opção garante que o arquivo de catálogo seja removido de todos os sistemas, caso você precise parar de confiar nesse aplicativo.

  11. Selecione OK para concluir a criação de arquivo.

  12. Feche o Editor de Gerenciamento de Política de Grupo e atualize a política no computador de teste em execução Windows 10 ou Windows 11, executando GPUpdate.exe. Quando a política tiver sido atualizada, verifique se o arquivo de catálogo existe no computador em C:\Windows\System32\catroot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE} execução Windows 10.

Implantar arquivos de catálogo com Microsoft Configuration Manager

Como alternativa à política de grupo, você pode usar Configuration Manager para implantar arquivos de catálogo nos computadores gerenciados em seu ambiente. Essa abordagem pode simplificar a implantação e o gerenciamento de vários arquivos de catálogo e fornecer relatórios sobre qual catálogo cada cliente ou coleção implantou. Além da implantação desses arquivos, Configuration Manager também podem ser usados para inventário dos arquivos de catálogo atualmente implantados para fins de relatório e conformidade.

Conclua as seguintes etapas para criar um novo pacote de implantação para arquivos de catálogo:

Observação

O exemplo a seguir usa um compartilhamento de rede chamado \\Shares\CatalogShare como fonte para os arquivos de catálogo. Se você tiver arquivos de catálogo específicos da coleção ou preferir implantá-los individualmente, use qualquer estrutura de pasta que funcione melhor para sua organização.

  1. Abra o console do Configuration Manager e selecione o espaço de trabalho da Biblioteca de Software.

  2. Navegue até Visão Geral\Gerenciamento de Aplicativos, clique com o botão direito do mouse em Pacotes e selecione Criar Pacote.

  3. Nomeie o pacote, defina a organização como o fabricante e selecione um número de versão apropriado.

    Criar Assistente de Pacote e Programa.

    Figura 5. Especifique informações sobre o novo pacote.

  4. Selecione Avançar e selecione Programa Padrão como o tipo de programa.

  5. Na página Programa Padrão , selecione um nome e defina a propriedade Linha de Comando como o seguinte comando:

    XCopy \\Shares\CatalogShare C:\Windows\System32\catroot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE} /H /K /E /Y
    
  6. Na página Programa Padrão , selecione as seguintes opções, conforme mostrado na Figura 6:

    • Em Nome, digite um nome, como Contoso Catalog File Copy Program.
    • Em Linha de comando, navegue até o local do programa.
    • Na pasta Inicialização, digiteC:\Windows\System32 .
    • Na lista Executar, selecione Oculto.
    • Na lista O programa pode ser executado, selecione Se um usuário tiver ou não efetuado logon.
    • Na lista Modo de unidade, selecione Executa com nome UNC.

    Página de programa padrão do assistente.

    Figura 6. Especifique informações sobre o programa padrão.

  7. Aceite os padrões para o restante do assistente e feche o assistente.

Depois de criar o pacote de implantação, implante-o em uma coleção de maneira que os clientes recebam os arquivos de catálogo. Neste exemplo, você implanta o pacote criado em uma coleção de testes:

  1. No workspace biblioteca de software, navegue até Visão geral\Gerenciamento de Aplicativos\Pacotes, clique com o botão direito do mouse no pacote de arquivos de catálogo e selecione Implantar.

  2. Na página Geral , selecione a coleção de testes e selecione Avançar.

  3. Na página Conteúdo , selecione Adicionar para selecionar o ponto de distribuição para servir conteúdo à coleção selecionada e selecione Avançar.

  4. Na página Configurações da Implantação , selecione Obrigatório na caixa Finalidade .

  5. Na página Agendamento , selecione Novo.

  6. Na caixa de diálogo Agendamento de Atribuição , selecione Atribuir imediatamente após esse evento, defina o valor como o mais rápido possível e selecione OK.

  7. Na página Agendamento , selecione Avançar.

  8. Na página Experiência do Usuário , conforme mostrado na Figura 7, defina as seguintes opções e selecione Avançar:

    • Marque a caixa de seleção Instalação de software.

    • Marque a caixa de seleção Confirmar as alterações no prazo ou durante uma janela de manutenção (requer reinicializações).

    Implantar o Assistente de Software, página Experiência do Usuário.

    Figura 7. Especifique a experiência do usuário.

  9. Na página Pontos de Distribuição , na caixa Opções de implantação , selecione Executar programa no ponto de distribuição e selecione Avançar.

  10. Na página Resumo , examine as seleções e selecione Avançar.

  11. Feche o assistente.

Arquivos do catálogo de inventário com Microsoft Configuration Manager

Quando os arquivos de catálogo tiverem sido implantados nos computadores em seu ambiente, seja usando a política de grupo ou Configuration Manager, você pode inventariá-los com o recurso de inventário de software de Configuration Manager.

Você pode configurar o inventário de software para encontrar arquivos de catálogo em seus sistemas gerenciados criando e implantando uma nova política de configurações de cliente.

Observação

Uma convenção de nomenclatura padrão para seus arquivos de catálogo simplificará significativamente o processo de inventário de software de arquivo de catálogo. Neste exemplo, -Contoso foi adicionado a todos os nomes de arquivo de catálogo.

  1. Abra o console do Configuration Manager e selecione o espaço de trabalho Administração.

  2. Navegue até Visão geral\Configurações do cliente, clique com o botão direito do mouse em Configurações do Cliente e selecione Criar Configurações personalizadas do dispositivo cliente.

  3. Nomeie a nova política e em Selecionar e configurar as configurações personalizadas para dispositivos cliente, marque a caixa de seleção Inventário de Software, conforme mostrado na Figura 8.

    Criar configurações personalizadas do dispositivo cliente.

    Figura 8. Selecione configurações personalizadas.

  4. No painel de navegação, selecione Inventário de Software e selecione Definir Tipos, conforme mostrado na Figura 9.

    Configurações de Inventário de Software para dispositivos.

    Figura 9. Defina o inventário de software.

  5. Na caixa de diálogo Configurar Configuração do Cliente, selecione o botão Iniciar para abrir a caixa de diálogo Propriedades do Arquivo de Inventários .

  6. Na caixa Nome , digite um nome como *Contoso.cat, e selecione Definir.

    Observação

    Ao digitar o nome, siga sua convenção de nomenclatura para arquivos de catálogo.

  7. Na caixa de diálogo Propriedades do Caminho , selecione Variável ou nome do caminho e digite C:\Windows\System32\catroot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE} na caixa, conforme mostrado na Figura 10.

    Propriedades do caminho, especificando um caminho.

    Figura 10. Defina as propriedades do caminho.

  8. Clique em OK.

  9. Agora que você criou a política de configurações do cliente, clique com o botão direito do mouse na nova política, selecione Implantar e escolha a coleção na qual deseja fazer o inventário dos arquivos de catálogo.

No momento do próximo ciclo de inventário de software, quando os clientes direcionados receberem a nova política de configurações de cliente, você poderá exibir os arquivos inventariados nos relatórios internos Configuration Manager ou Explorer de recursos. Para exibir os arquivos inventariados em um cliente dentro do Gerenciador de Recursos, conclua as seguintes etapas:

  1. Abra o console do Gerenciador de Recursos e selecione o espaço de trabalho Ativos e Conformidade.

  2. Navegue até Visão Geral\Dispositivos e pesquise o dispositivo no qual você deseja exibir os arquivos inventariados.

  3. Clique com o botão direito do mouse no computador, aponte para Iniciar e selecione Recurso Explorer.

  4. No Resource Explorer, navegue até Software\Detalhes do Arquivo para exibir os arquivos de catálogo inventariados.

Observação

Se nada for exibido nesse modo de exibição, navegue até Software\Última Verificação de Software no Explorer de Recursos para verificar se o cliente concluiu recentemente uma verificação de inventário de software.

Permitir aplicativos assinados pelo certificado de assinatura de catálogo na política do WDAC

Agora que você tem seu arquivo de catálogo assinado, você pode adicionar uma regra de signatário à sua política que permite qualquer coisa assinada com esse certificado. Se você ainda não criou uma política WDAC, consulte o guia de design Windows Defender Controle de Aplicativo.

Em um computador em que o arquivo de catálogo assinado foi implantado, você pode usar New-CiPolicyRule para criar uma regra de signatário de qualquer arquivo incluído nesse catálogo. Em seguida, use Merge-CiPolicy para adicionar a regra ao XML da política. Substitua os valores de caminho no exemplo a seguir:

$Rules = New-CIPolicyRule -DriverFilePath <path to the file covered by the signed catalog> -Level Publisher
Merge-CIPolicy -OutputFilePath <path to your policy XML> -PolicyPaths <path to your policy XML> -Rules $Rules

Como alternativa, você pode usar Add-SignerRule para adicionar uma regra de signatário à sua política a partir do arquivo de certificado (.cer). Você pode salvar facilmente o arquivo .cer do arquivo de catálogo assinado.

  1. Clique com o botão direito do mouse no arquivo de catálogo e selecione Propriedades.
  2. Na guia Assinaturas Digitais , selecione a assinatura na lista e selecione Detalhes.
  3. Selecione Exibir Certificado para exibir as propriedades do certificado folha.
  4. Selecione a guia Detalhes e selecione Copiar para Arquivo. Essa ação executa o Assistente de Exportação de Certificados.
  5. Conclua o assistente usando a opção padrão para Exportar Formato de Arquivo e especificando um local e um nome de arquivo para salvar o arquivo .cer.

Observação

Essas etapas selecionam o nível mais baixo da cadeia de certificados, também chamado de certificado "folha". Em vez disso, você pode optar por usar o certificado emissor intermediário ou raiz do certificado. Para usar um certificado diferente na cadeia, alterne para a guia Caminho da Certificação após a etapa 3 acima e selecione o nível de certificado que você deseja usar e selecione Exibir Certificado. Em seguida, conclua as etapas restantes.

O exemplo a seguir usa o arquivo .cer para adicionar uma regra de sinalização aos cenários de assinatura do modo de usuário e kernel. Substitua os valores de caminho no exemplo a seguir:

Add-SignerRule -FilePath <path to your policy XML> -CertificatePath <path to your certificate .cer file> -User -Kernel

Problemas conhecidos usando o Inspetor de Pacotes

Alguns dos problemas conhecidos usando o Inspetor de Pacotes para criar um arquivo de catálogo são:

  • O tamanho da revista USN é muito pequeno para rastrear todos os arquivos criados pelo instalador

    • Para diagnosticar se o tamanho da revista USN é o problema, depois de executar o Inspetor de Pacotes:
      • Obtenha o valor da chave de reg em HKEY_CURRENT_USER/PackageInspectorRegistryKey/c: (este USN foi o mais recente quando você executou PackageInspector start). Em seguida, use fsutil.exe para ler esse local inicial. Substitua "RegKeyValue" no seguinte comando pelo valor da chave reg:
        fsutil usn readjournal C: startusn=RegKeyValue > inspectedusn.txt
      • O comando acima deve retornar um erro se os USNs mais antigos não existirem mais devido ao estouro
      • Você pode expandir o tamanho Diário USN usando: fsutil usn createjournal com um novo tamanho e delta de alocação. Fsutil usn queryjournal mostra o tamanho atual e o delta de alocação, portanto, usar um múltiplo disso pode ajudar.
  • CodeIntegrity – O log de eventos operacional é muito pequeno para rastrear todos os arquivos criados pelo instalador

    • Para diagnosticar se o tamanho do Eventlog é o problema, depois de executar o Inspetor de Pacotes:
      • Abra Visualizador de Eventos e expanda o Aplicativo e Serviços//Microsoft//Windows//CodeIntegrity//Operational. Verifique se há um evento de bloco de auditoria 3076 para o lançamento inicial do instalador.
      • Para aumentar o tamanho do log de eventos, em Visualizador de Eventos clique com o botão direito do mouse no log operacional, selecione Propriedades e defina novos valores.
  • Instalador ou arquivos de aplicativo que alteram hash sempre que o aplicativo é instalado ou executado

    • Alguns aplicativos geram arquivos em tempo de execução cujo valor de hash é diferente a cada vez. Você pode diagnosticar esse problema examinando os valores de hash nos eventos do bloco de auditoria 3076 (ou 3077 eventos de imposição) gerados. Se cada vez que você tentar executar o arquivo observar um novo evento de bloco com um hash diferente, o pacote não funcionará com o Inspetor de Pacotes.
  • Arquivos com um blob de assinatura inválido ou arquivos "unhashable"

    • Esse problema surge quando um arquivo assinado foi modificado de uma forma que invalida o cabeçalho pe do arquivo. Um arquivo modificado dessa forma não pode ser hashizado de acordo com a especificação Authenticode.
    • Embora esses arquivos "unhashable" não possam ser incluídos no arquivo de catálogo criado pelo PackageInspector, você deve ser capaz de permitir isso adicionando uma regra ALLOW de hash à sua política que usa o hash de arquivo simples do arquivo.
    • Esse problema afeta algumas versões de pacotes InstallShield que usam arquivos DLL assinados em ações personalizadas. InstallShield adiciona marcadores de rastreamento ao arquivo (editando-o após a assinatura) que deixa o arquivo neste estado "unhashable".