Как проверить цифровую подпись для распространяемой установки Visual C++

Недавно я установил программу с цифровой подписью, и установщик запустил распространяемый изнутри Microsoft Visual C++ распространяемый установщик.

Я отсканировал программу и проверил ее цифровую подпись перед запуском и предоставил ей права администратора (стандартная процедура на моих компьютерах - сканирование всех программ и установщиков, права администратора требуют действительной цифровой подписи из надежного источника).

Основная проблема: цифровая подпись была для установщика, нет никакой конкретной проверки каких-либо внутренних пакетов. Я проверил распространяемые пакеты в Панели управления -> Программы и компоненты, и щелкнули правой кнопкой мыши пункты "Удалить и изменить".

При нажатии на кнопку "Изменить" открывается окно с кнопками "Восстановить / Удалить / Закрыть".

Есть ли удобный способ проверить цифровую подпись распространяемой установки Visual C++? (в частности, убедитесь, что распространяемый пакет является подлинным и не был подделан?)

Установщик имеет только цифровую подпись для своего издателя.

1 ответ

Решение

Есть два способа, о которых я могу думать:

  1. Ваш установщик должен распаковать распространяемые пакеты Visual C++ где-то перед установкой. Обычно это ставится где-то под %temp%, Вы можете либо очистить эту папку перед установкой, либо запустить установщик в Sandboxie, а затем просмотреть файлы песочницы, чтобы найти ее и проверить ее цифровую подпись.

  2. Установите программное обеспечение HIPS (Host Intrusion Prevention), установите его правильно, и вам будет предложено установить каждый пакет отдельно.

Если вы хотите проверить распространяемые библиотеки VC++, уже установленные в вашей системе, перейдите к %windir%\System32 и проверить msvcpX.dll файлы (где X - номер версии (то есть msvcp140.dll для VC++ версии 14.0.23918).

И благодарность за сохранение хорошей практики проверки цифровых подписей перед предоставлением полных прав.

Другие вопросы по тегам