Проверка цифровой подписи программно - PullRequest
6 голосов
/ 15 июля 2009

У меня есть exe для проекта, над которым я работаю, подписанный цифровой подписью, что означает, что когда он запрашивает права администратора, он показывает название компании. Это работает очень хорошо, но если вы измените исполняемый файл, он все равно будет работать и покажет там неизвестное.

Есть ли способ проверить цифровую подпись, чтобы убедиться, что она действительна при запуске exe, чтобы избежать запуска измененных версий?

Визуальная студия 2008 Windows 7

Ответы [ 2 ]

8 голосов
/ 15 июля 2009

Здесь - это пример программы (она использует функцию WinVerifyTrust), которая проверяет подпись, но я не уверен, что она будет работать под Windows 7. Вы должны попробовать .

0 голосов
/ 15 июля 2009

Учитывая, что у вас уже есть потребность в контроле учетных записей, не будет ли достаточно установить параметр объекта групповой политики «Поднять только исполняемые файлы, которые подписаны и проверены» в «Конфигурация компьютера \ Параметры Windows \ Локальные политики \ Параметры безопасности»? Также может быть полезен параметр «Использовать правила сертификатов в исполняемых файлах Windows для политик ограниченного использования программ» .

Эти настройки лучше, чем пытаться проверить из собственного приложения, потому что суть в том, что вы больше не можете доверять себе, когда ваш бинарный файл модифицирован.

...