A Microsoft detetou uma vulnerabilidade na assinatura de projetos de macros do Office Visual Basic for Applications (VBA). Esta vulnerabilidade pode permitir a um utilizador malicioso adulterar um projeto VBA assinado sem invalidar a assinatura digital. Por conseguinte, recomendamos que os utilizadores apliquem as atualizações de segurança listadas no CVE-2020-0760 da Microsoft Common Vulnerabilities and Exposures.
Para melhorar a segurança da assinatura do projeto de macro do VBA do Office, a Microsoft fornece uma versão mais segura do esquema de assinatura do projeto VBA: assinatura V3. A assinatura V3 está disponível nos seguintes produtos:
-
Microsoft 365 versão 2102 (compilação 16.0.13801.20266) e versões posteriores do canal atual
-
Versões licenciadas em volume do Office 2019, versão 1808 (compilação 10372.20060) e versões posteriores
-
Versões de revenda das edições Clique-e-Use do Office 2016 e do Office 2019 versão 2102 (compilação 16.0.13801.20266) e versões posteriores
-
Edições baseadas no Microsoft Installer (.msi) do Office 2016 que têm as seguintes atualizações ou versões posteriores de atualizações:
-
1 de dezembro de 2020, atualização para o Office 2016 (KB4486747)
-
Descrição da atualização de segurança para Excel 2016: 8 de dezembro de 2020 (KB4486754)
-
Descrição da atualização de segurança para PowerPoint 2016: 8 de dezembro de 2020 (KB4484393)
-
1 de dezembro de 2020, atualização para o Project 2016 (KB4486749)
-
1 de dezembro de 2020, atualização para Publisher 2016 (KB4484334)
-
1 de dezembro de 2020, atualização para o Visio 2016 (KB4486709)
-
1 de dezembro de 2020, atualização para Word 2016 (KB4486756)
-
2 de março de 2021, atualização para Access 2016 (KB4493188)
-
2 de março de 2021, atualização para o Office 2016 (KB4493153)
-
Descrição da atualização de segurança do Office 2016: 9 de março de 2021 (KB4493225)
-
Recomendamos que as organizações apliquem a assinatura V3 a todas as macros para eliminar o risco de adulteração.
Por predefinição, para garantir a retrocompatibilidade, os ficheiros VBA com assinaturas existentes continuarão a funcionar e os ficheiros assinados com a assinatura V3 podem ser abertos e executados em versões anteriores do Office ou em clientes do Office não atualizados. No entanto, recomendamos que os administradores atualizem as assinaturas VBA existentes para a assinatura V3 o mais rapidamente possível depois de atualizarem o Office para as versões listadas. Depois de os administradores verificarem que não existe nenhuma perda de compatibilidade para a organização, podem desativar as assinaturas VBA antigas ao ativar a definição de política Confiar apenas em macros VBA que utilizam assinaturas V3. Para obter mais informações sobre esta definição de política, consulte a secção "Ativar definição de política: Confiar apenas em macros VBA que utilizam assinaturas V3".
Atualizar ficheiros VBA assinados para a assinatura V3
Os administradores podem utilizar os seguintes tópicos para atualizar ficheiros de assinaturas VBA existentes para a assinatura V3.
Utilizar o Editor VBA para voltar a assinar ficheiros VBA
Se tiver certificados privados, utilize o Editor de Visual Basic for Applications (VBA) fornecido numa aplicação do Office para voltar a assinar os ficheiros VBA.
-
Para voltar a assinar um ficheiro VBA, prima Alt+F11 a partir do ficheiro para abrir o Editor VBA.
-
Para substituir uma assinatura existente pela assinatura V3, selecione Ferramentas > Assinatura Digital. É aberta a caixa de diálogo Assinatura Digital.
Nota: Para assinar um projeto VBA, a chave privada tem de estar corretamente instalada. Para obter mais informações, veja Assinar digitalmente o seu projeto de macro.
-
Selecione Escolher para escolher a chave privada do certificado a utilizar para assinar o projeto VBA e, em seguida, selecione OK.
-
Para gerar as novas assinaturas, guarde novamente o ficheiro. As novas assinaturas digitais irão substituir as assinaturas anteriores.
Utilizar o SignTool para voltar a assinar ficheiros VBA
O SignTool no SDK do Windows 10 pode ajudá-lo a voltar a assinar os ficheiros VBA através de uma linha de comandos. Para criar o lote do trabalho de reassinação na lista de inventário identificada na secção "Criar um inventário de ficheiros VBA assinados", pode integrar o SignTool nas suas próprias ferramentas de administração.
Nota: Atualmente, o SignTool não suporta o Microsoft Access.
Para voltar a assinar ficheiros VBA com o SignTool, siga estes passos:
-
Transfira e instale o SDK Windows 10.
-
Transfira Officesips.exe a partir de Pacotes de Interface de Assunto do Microsoft Office para Projetos VBA de Assinatura Digital.
-
Para assinar ficheiros e verificar as assinaturas nos ficheiros, registe Msosip.dll e Msosipx.dll e, em seguida, execute Offsign.bat. Os passos detalhados estão incluídos no ficheiro Readme.txt na pasta de instalação do Officesips.exe.
Nota: Utilize a versão x86 do SignTool na pasta "C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x86" quando executar Offsign.bat.
Ativar definição de política: "Confiar apenas em macros VBA que utilizam assinaturas V3"
Depois de concluir a atualização para as assinaturas V3, recomendamos que ative a definição Apenas as macros VBA fidedignas que utilizam assinaturas V3 para garantir que apenas os ficheiros assinados com assinatura V3 são fidedignos.
Esta definição de política está disponível no Política de Grupo ou no Serviço de Política de Nuvem do Office. Está localizado em Configuração do Utilizador\Políticas\Modelos Administrativos\Microsoft Office 2016\Security Settings\Trust Center. Se esta definição estiver ativada, apenas a assinatura V3 será considerada válida quando o Office validar a assinatura digital nos ficheiros. As assinaturas de formato anterior nos ficheiros VBA serão ignoradas.