Microsoft a descoperit o vulnerabilitate în semnarea unui proiect de Office Visual Basic pentru aplicații (VBA). Această vulnerabilitate poate permite unui utilizator rău intenționat să intervină într-un proiect VBA semnat fără a-i anula semnătura digitală. Prin urmare, recomandăm utilizatorilor să aplice actualizările de securitate listate în Vulnerabilitățile și expunerile Microsoft VCE-2020-0760.
Pentru a îmbunătăți securitatea semnării Office de macrocomenzi VBA, Microsoft furnizează o versiune mai sigură a schemei de semnături de proiect VBA: Semnătură V3. Semnătura V3 este disponibilă în următoarele produse:
-
Microsoft 365 versiunea 2102 (compilarea 16.0.13801.20266) și versiunile mai recente ale canalului curent
-
Versiunile licențiate în volum de Office 2019, versiunea 1808 (compilarea 10372.20060) și versiunile mai recente
-
Versiuni comerciale ale edițiilor Office 2016 Clic și Rulare și Office 2019, versiunea 2102 (compilarea 16.0.13801.20266) și versiunile mai recente
-
Edițiile de .msi Office 2016 bazate pe Microsoft Installer (Office 2016 care au următoarele actualizări sau versiuni mai recente de actualizări:
-
1 decembrie 2020, actualizare pentru Office 2016 (KB4486747)
-
Descrierea actualizării de securitate pentru Excel 2016: 8 decembrie 2020 (KB4486754)
-
Descrierea actualizării de securitate pentru PowerPoint 2016: 8 decembrie 2020 (KB4484393)
-
1 decembrie 2020, actualizare pentru Project 2016 (KB4486749)
-
1 decembrie 2020, actualizare pentru Publisher 2016 (KB4484334)
-
Descrierea actualizării de securitate pentru Office 2016: 9 martie 2021 (KB4493225)
-
Recomandăm organizațiilor să aplice semnătura V3 la toate macrocomenzile, pentru a elimina riscul de alterare.
În mod implicit, pentru a asigura compatibilitatea inversă, fișierele VBA care au semnături existente vor continua să ruleze, iar fișierele semnate utilizând semnătura V3 pot fi deschise și rulate în versiunile anterioare de Office sau în clienții Office ne actualizează. Totuși, recomandăm administratorilor să facă upgrade semnăturilor VBA existente la semnătura V3 cât mai curând posibil, după ce Office la versiunile listate. După ce administratorii verifică dacă nu se pierde compatibilitatea pentru organizație, aceștia pot dezactiva semnăturile VBA vechi, activând setarea politicii Încredere numai în macrocomenzile VBA care utilizează semnături V3. Pentru mai multe informații despre această setare de politică, consultați secțiunea "Activarea setării politicii: Aveți încredere doar în macrocomenzile VBA care utilizează semnături V3".
Upgrade-ul fișierelor VBA semnate la semnătura V3
Administratorii pot utiliza următoarele subiecte pentru a face upgrade fișierelor de semnături VBA existente la semnătura V3.
Crearea unui inventar de fișiere VBA semnate
Dacă aveți deja un inventar cu toate fișierele VBA semnate existente, puteți omite această secțiune. Dacă nu, utilizați kitul de instrumente de pregătire pentru Office și VBA pentru a crea un inventar al fișierelor VBA semnate existente care trebuie să fie actualizate. Instrumentul va genera un raport care listează fișierele pentru care trebuie să fie actualizate împreună cu locațiile lor de fișiere. Pentru mai multe informații despre kitul de instrumente de pregătire, consultați Utilizarea kitului de instrumente de pregătire pentru a evalua compatibilitatea aplicațiilor pentru Aplicații Microsoft 365.
-
Descărcați kitul de instrumente de pregătire Office programele de completare și VBA.
-
Rulați PowerShell sau deschideți o fereastră Linie de comandă ca administrator, apoi navigați la folderul de instalare set de instrumente de pregătire:
C:\Program Files (x86)\Microsoft Readiness Toolkit for Office -
Rulați următoarea comandă pentru a scana un folder în care se află fișierele VBA (de exemplu, C:\Test_ToolKit):
ReadinessReportCreator.exe -sigscan -p C:\Test_ToolKit -r -output C:\outputDupă scanare, un fișier rezultat JSON este creat în folderul C:\output.
-
Din folderul de instalare Set de instrumente de pregătire, rulați fișierul ReadinessReportCreator.exe pentru a deschide fișierul cu rezultate.
În fișierul cu rezultate, găsiți toate fișierele de macrocomenzi nesigure pentru care trebuie să faceți upgrade la semnătura V3.
Utilizarea Editorului VBA pentru a semna din noi fișiere VBA
Dacă aveți certificate private, utilizați editorul Visual Basic for Applications (VBA) furnizat într-o aplicație Office pentru a semna din Office fișierele VBA.
-
Pentru a semna din nou un fișier VBA, apăsați Alt+F11 din cadrul fișierului pentru a deschide Editorul VBA.
-
Pentru a înlocui o semnătură existentă cu semnătura V3, selectați> semnătură digitală. Se deschide caseta de dialog Digital Signature.
Notă: Pentru a semna un proiect VBA, cheia privată trebuie să fie instalată corect. Pentru mai multe informații, consultați Semnarea digitală a proiectului de macrocomenzi.
-
Selectați Alegeți pentru a alege cheia privată a certificatului de utilizat pentru a semna proiectul VBA, apoi selectați OK.
-
Pentru a genera semnături noi, salvați din nou fișierul. Noile semnături digitale vor înlocui semnăturile anterioare.
Utilizați SignTool pentru a semna din noi fișiere VBA
SignTool in the Windows 10 SDK can help you re-sign the VBA files through a command line. Pentru a grupa munca de semnare din nou în lista de inventar identificată în secțiunea "Creați un inventar de fișiere VBA semnate", puteți integra SignTool în propriile instrumente de administrare.
Notă: În prezent, SignTool nu acceptă Microsoft Access.
Pentru a semna din noi fișiere VBA utilizând SignTool, urmați acești pași:
-
Descărcați și instalați Windows 10 SDK.
-
Descărcați Officesips.exe de Microsoft Office de interfață subiect pentru semnarea digitală a proiectelor VBA.
-
Pentru a semna fișiere și a verifica semnăturile din fișiere, Msosip.dll și Msosipx.dll, apoi rulați Offsign.bat. Pașii detaliați sunt Readme.txt fișierul nou din folderul de instalare Officesips.exe.
Notă: Utilizați versiunea x86 de SignTool în folderul "C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x86" atunci când rulați Offsign.bat.
Activarea setării politicii: "Se pot baza doar macrocomenzi VBA care utilizează semnături V3"
După ce terminați upgrade-ul la semnăturile V3, vă recomandăm să activați setarea politicii V3 pentru macrocomenzile VBA care utilizează politica de semnături V3, pentru a vă asigura că sunt de încredere doar fișierele semnate cu semnătură V3.
Această setare de politică este disponibilă în Politica de grup sau în Office politică în cloud. Acesta se află în User Configuration\Policies\Administrative Templates\Microsoft Office 2016\Security Setări\Trust Center. Dacă această setare este activată, doar semnătura V3 va fi considerată validă atunci când Office validează semnătura digitală în fișiere. Semnăturile în format anterior din fișierele VBA vor fi ignorate.