Как проверить цифровую подпись для распространяемой установки Visual C++
Недавно я установил программу с цифровой подписью, и установщик запустил распространяемый изнутри Microsoft Visual C++ распространяемый установщик.
Я отсканировал программу и проверил ее цифровую подпись перед запуском и предоставил ей права администратора (стандартная процедура на моих компьютерах - сканирование всех программ и установщиков, права администратора требуют действительной цифровой подписи из надежного источника).
Основная проблема: цифровая подпись была для установщика, нет никакой конкретной проверки каких-либо внутренних пакетов. Я проверил распространяемые пакеты в Панели управления -> Программы и компоненты, и щелкнули правой кнопкой мыши пункты "Удалить и изменить".
При нажатии на кнопку "Изменить" открывается окно с кнопками "Восстановить / Удалить / Закрыть".
Есть ли удобный способ проверить цифровую подпись распространяемой установки Visual C++? (в частности, убедитесь, что распространяемый пакет является подлинным и не был подделан?)
Установщик имеет только цифровую подпись для своего издателя.
1 ответ
Есть два способа, о которых я могу думать:
Ваш установщик должен распаковать распространяемые пакеты Visual C++ где-то перед установкой. Обычно это ставится где-то под
%temp%
, Вы можете либо очистить эту папку перед установкой, либо запустить установщик в Sandboxie, а затем просмотреть файлы песочницы, чтобы найти ее и проверить ее цифровую подпись.Установите программное обеспечение HIPS (Host Intrusion Prevention), установите его правильно, и вам будет предложено установить каждый пакет отдельно.
Если вы хотите проверить распространяемые библиотеки VC++, уже установленные в вашей системе, перейдите к %windir%\System32
и проверить msvcpX.dll
файлы (где X - номер версии (то есть msvcp140.dll для VC++ версии 14.0.23918).
И благодарность за сохранение хорошей практики проверки цифровых подписей перед предоставлением полных прав.