Microsoft откри уязвимост при подписването на проекти с макроси на Office Visual Basic for Applications (VBA). Тази уязвимост може да позволи на злонамерен потребител да промени злонамерено подписан VBA проект без анулиране на цифровия му подпис. Затова препоръчваме на потребителите да приложат актуализациите на защитата, които са изброени в Често срещани уязвимости на Microsoft и Експозиции CVE-2020-0760.
За да подобри защитата при подписването на проекти с макроси на Office VBA, Microsoft предоставя по-защитена версия на схемата за подпис на VBA проект: V3 подпис. Подписът V3 е наличен в следните продукти:
-
Microsoft 365 версия 2102 (компилация 16.0.13801.20266) и по-нови версии на текущия канал
-
Корпоративно лицензирани версии на версия 1808 на Office 2019 (компилация 10372.20060) и по-нови версии
-
Версии за продажба на дребно на изданията "Кликни и стартирай" на Office 2016 и версия 2102 на Office 2019 (компилация 16.0.13801.20266) и по-нови версии
-
Базирани на Microsoft Installer (.msi) издания на Office 2016, които имат следните актуализации или по-нови версии на актуализации:
-
Описание на актуализацията на защитата за Excel 2016: 8 декември 2020 г. (KB4486754)
-
Описание на актуализацията на защитата за PowerPoint 2016: 8 декември 2020 г. (KB4484393)
-
1 декември 2020 г., актуализация за Project 2016 (KB4486749)
-
1 декември 2020 г. актуализация за Publisher 2016 (KB4484334)
-
Описание на актуализацията на защитата за Office 2016: 9 март 2021 г. (KB4493225)
Препоръчваме на организациите да приложат подписа V3 към всички макроси, за да елиминират риска от фалшифициране.
По подразбиране, за да се осигури обратна съвместимост, VBA файловете, които имат съществуващи подписи, ще продължат да работят, а файловете, подписани с помощта на подписа V3, могат да бъдат отваряни и изпълнявани в по-стари версии на Office или в неактуални клиенти на Office. Препоръчваме обаче администраторите да надстроят съществуващите VBA подписи до подписа на V3 възможно най-скоро, след като надстроят Office до изброените версии. След като администраторите се уверят, че няма загуба на съвместимост за организацията, те могат да забранят старите VBA подписи, като активират настройката на правилата само за доверяване на VBA макроси, които използват V3 подписи. За повече информация относно тази настройка на правила вижте раздела "Разрешаване на настройка на правила: доверяване само на VBA макроси, които използват подписи V3".
Надстройване на подписани VBA файлове до подписа на V3
Администраторите могат да използват следните теми, за да надстроят съществуващите ФАЙЛОВЕ за подписи на VBA до подписа на V3.
Използване на редактора на VBA за повторно подписване на VBA файлове
Ако имате лични сертификати, използвайте редактора на Visual Basic for Applications (VBA), който е предоставен в приложение на Office, за да подпишете отново VBA файловете.
-
За да подпишете повторно VBA файл, натиснете Alt+F11 от файла, за да отворите редактора на VBA.
-
За да заместите съществуващ подпис с V3 подпис, изберете Инструменти > цифров подпис. Отваря се диалоговият прозорец Цифров подпис.
Забележка: За да подпишете проект на VBA, личният ключ трябва да е инсталиран правилно. За повече информация вижте Цифрово подписване на вашия проект с макроси.
-
Изберете Избор, за да изберете личния ключ за сертификат, който да се използва за подписване на проекта на VBA, и след това изберете OK.
-
За да генерирате новите подписи, запишете файла отново. Новите цифрови подписи ще заместят предишните подписи.
Използване на SignTool за повторно подписване на VBA файлове
SignTool в Windows 10 SDK може да ви помогне да подпишете повторно VBA файловете от командния ред. За да пакетирате повторното подписване в списъка с наличности, който е посочен в раздела "Създаване на опис на подписани VBA файлове", можете да интегрирате SignTool в собствените си инструменти за администриране.
Забележка: В момента SignTool не поддържа Microsoft Access.
За да подпишете повторно VBA файлове с помощта на SignTool, изпълнете следните стъпки:
-
Изтеглете и инсталирайте Windows 10 SDK.
-
Изтеглете Officesips.exe от Microsoft Office Subject Interface Packages за Цифрово подписване на VBA проекти.
-
За да подпишете файлове и да проверите подписите във файловете, регистрирайте Msosip.dll и Msosipx.dll, след което изпълнете Offsign.bat. Подробните стъпки са включени във файла на Readme.txt в инсталационната папка на Officesips.exe.
Забележка: Използвайте x86 версията на SignTool в папката "C:\Програмни файлове (x86)\Windows Kits\10\bin\10.0.18362.0\x86", когато стартирате Offsign.bat.
Разрешаване на настройка на правила: "Доверявайте се само на VBA макроси, които използват подписи V3"
След като завършите надстройването до подписите на V3, ви препоръчваме да разрешите настройката на правилата Само за надеждни VBA макроси, които използват V3 подписи, за да се уверите, че само файловете, подписани с подписи на V3, са надеждни.
Тази настройка на правила е налична в групови правила или услугата за правила за облака на Office. Намира се в Потребителска конфигурация\Правила\Административни шаблони\Microsoft Office 2016\Настройки за защита\Център за сигурност. Ако тази настройка е разрешена, само подписът V3 ще се счита за валиден, когато Office проверява цифровия подпис във файлове. Подписите във VBA файловете в по-стар формат ще бъдат игнорирани.