Firma Microsoft odkryła lukę w podpisywaniu makr pakietu Office Visual Basic for Applications (VBA). Ta luka może umożliwić złośliwemu użytkownikowi manipulowanie podpisanym projektem VBA bez unieważniania podpisu cyfrowego. Dlatego zalecamy, aby użytkownicy stosowali aktualizacje zabezpieczeń wymienione w sekcji Microsoft Common Vulnerabilities and Exposures CVE-2020-0760.
Aby zwiększyć bezpieczeństwo podpisywania projektu makra języka VBA pakietu Office, firma Microsoft udostępnia bezpieczniejszą wersję schematu podpisów projektu VBA: podpis V3. Podpis V3 jest dostępny w następujących produktach:
-
Microsoft 365 w wersji 2102 (kompilacja 16.0.13801.20266) i nowszych wersjach bieżącego kanału
-
Wersje pakietu Office 2019 w wersji 1808 (kompilacja 10372.20060) i nowsze wersje licencjonowane zbiorowo
-
Wersje detaliczne wersji szybka instalacja pakietu Office 2016 i pakietu Office 2019 w wersji 2102 (kompilacja 16.0.13801.20266) i nowszych wersji
-
Wersje pakietu Office 2016 oparte na instalatorze Microsoft (.msi) zawierające następujące lub nowsze wersje aktualizacji:
-
1 grudnia 2020 r., aktualizacja dla pakietu Office 2016 (KB4486747)
-
Opis aktualizacji zabezpieczeń dla Excel 2016: 8 grudnia 2020 r. (KB4486754)
-
Opis aktualizacji zabezpieczeń dla PowerPoint 2016: 8 grudnia 2020 r. (KB4484393)
-
1 grudnia 2020 r., aktualizacja dla programu Project 2016 (KB4486749)
-
1 grudnia 2020 r., aktualizacja dla Publisher 2016 (KB4484334)
-
1 grudnia 2020 r. — aktualizacja dla programu Visio 2016 (KB4486709)
-
2 marca 2021 r., aktualizacja dla pakietu Office 2016 (KB4493153)
-
Opis aktualizacji zabezpieczeń dla pakietu Office 2016: 9 marca 2021 r. (KB4493225)
-
Zalecamy stosowanie podpisu v3 do wszystkich makr w celu wyeliminowania ryzyka naruszenia.
Domyślnie w celu zapewnienia zgodności z poprzednimi wersjami pliki VBA, które mają istniejące podpisy, będą nadal działać, a pliki podpisane przy użyciu podpisu V3 mogą być otwierane i uruchamiane we wcześniejszych wersjach pakietu Office lub w nie zaktualizowanych klientach pakietu Office. Zalecamy jednak, aby administratorzy jak najszybciej uaktualnili istniejące podpisy języka VBA do podpisu V3 po uaktualnieniu pakietu Office do wymienionych wersji. Gdy administratorzy zweryfikują brak utraty zgodności z organizacją, mogą wyłączyć stare podpisy języka VBA, włączając ustawienie zasad VBA Tylko zaufane makra języka VBA, które używają zasad podpisów V3. Aby uzyskać więcej informacji na temat tego ustawienia zasad, zobacz sekcję "Włącz ustawienie zasad: Ufaj tylko makrom VBA, które używają podpisów V3".
Uaktualnianie podpisanych plików VBA do podpisu V3
Administratorzy mogą użyć następujących tematów, aby uaktualnić istniejące pliki podpisów VBA do podpisu V3.
Ponowne podpisywanie plików VBA za pomocą Edytora VBA
Jeśli masz prywatne certyfikaty, użyj Edytora Visual Basic for Applications (VBA) udostępnionego w aplikacji pakietu Office, aby ponownie podpisać pliki VBA.
-
Aby ponownie podpisać plik VBA, naciśnij klawisze Alt+F11 z poziomu pliku w celu otwarcia Edytora VBA.
-
Aby zamienić istniejący podpis na podpis v3, wybierz pozycję Narzędzia > Podpis cyfrowy. Zostanie otwarte okno dialogowe Podpis cyfrowy.
Uwaga: Aby podpisać projekt VBA, klucz prywatny musi być zainstalowany poprawnie. Aby uzyskać więcej informacji, zobacz Cyfrowe podpisywanie projektu makra.
-
Wybierz pozycję Wybierz, aby wybrać klucz prywatny certyfikatu do podpisania projektu VBA, a następnie wybierz przycisk OK.
-
Aby wygenerować nowe podpisy, zapisz plik ponownie. Nowe podpisy cyfrowe zastąpią poprzednie podpisy.
Ponowne podpisywanie plików VBA za pomocą narzędzia SignTool
SignTool w Windows 10 SDK może ułatwić ponowne podpisywanie plików VBA za pomocą wiersza polecenia. Aby ponownie podpisywać dane wsadowo z listą zapasów określoną w sekcji "Tworzenie spisu podpisanych plików VBA", możesz zintegrować narzędzie SignTool z własnymi narzędziami administracyjnymi.
Uwaga: Obecnie aplikacja SignTool nie obsługuje programu Microsoft Access.
Aby ponownie podpisać pliki VBA za pomocą narzędzia SignTool, wykonaj następujące czynności:
-
Pobierz i zainstaluj Windows 10 SDK.
-
Pobierz Officesips.exe z pakietu Microsoft Office Subject Interface Packages do cyfrowego podpisywania projektów VBA.
-
Aby podpisać pliki i zweryfikować podpisy w plikach, zarejestruj Msosip.dll i Msosipx.dll, a następnie uruchom Offsign.bat. Szczegółowe kroki są zawarte w pliku Readme.txt w folderze instalacji Officesips.exe.
Uwaga: Użyj x86 wersji SignTool w folderze "C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x86" podczas uruchamiania Offsign.bat.
Włącz ustawienie zasad: "Ufaj tylko makrom VBA, które używają podpisów V3"
Po zakończeniu uaktualniania do podpisów w wersji 3 zalecamy włączenie ustawienia zasad VBA Tylko zaufane makra języka VBA, które używają zasad podpisów W3, aby upewnić się, że zaufane są tylko pliki podpisane podpisem V3.
To ustawienie zasad jest dostępne w zasady grupy lub w usłudze zasad pakietu Office w chmurze. Znajduje się ona w oknie Konfiguracja użytkownika\Zasady\Szablony administracyjne\Microsoft Office 2016\Ustawienia zabezpieczeń\Centrum zaufania. Jeśli to ustawienie jest włączone, podczas sprawdzania poprawności podpisu cyfrowego w plikach tylko podpis v3 zostanie uznany za prawidłowy. Podpisy w starszych formatach w plikach VBA będą ignorowane.