2010-08-25 3 views
1

У меня есть приложение (exe), которое использует некоторые сильно названные dll. Если я правильно понимаю, никто не может заменить dll своими собственными подготовленными версиями, потому что они не будут подписаны. Никто не может заменить exe тоже, потому что он защищен подписанием манифеста.Безопасность приложения ClickOnce

Но что, если кто-то готовит свой собственный exe и изменяет подпись в файле манифеста?

ответ

2

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

Помните, что единственным человеком, способным к sign the manifest as you, должен быть именно вы. Если кто-то еще имеет доступ к вашему закрытому ключу, тогда они могут легко это сделать. Ваши пользователи должны знать, что они должны знать, что они должны читать любую информацию, отображаемую на экране, которая сообщает . приложение, в котором они работают, и Кто подписал его. Безопасность настолько же хороша, как и самое слабое звено в цепочке, к сожалению, это обычно пользователь.

Вы думаете о том, что приложение ClickOnce загружается из источника каждый раз, когда оно запускается, а не кэшируется на ПК пользователей. Это будет, по крайней мере, частичное смягчение последствий?

+0

Информация, подписавшая заявку, находится только в начале, перед установкой. После этого при запуске приложения, уже установленного с помощью ClickOnce, об этом нет никакой информации. Даже если бы это было возможно, оно могло быть уже подготовлено человеком, который изменил манифест и файл exe. Я прав? Как пользователь может проверить, что перед запуском уже установленного приложения? – prostynick

+1

Невозможно проверить, что я знаю - я полагаю, у вас может быть чек, который запускается в вашем коде, но как только кто-то заменяет '.exe', все ставки отключены. Я боюсь. – Rob

+0

@prostynick, спасибо за принятый ответ, извините, если это был не тот ответ, за которым вы были после, хотя! =) Задумывались ли вы о ClickOnce, когда приложение загружается из источника * каждый раз, когда он запускается, а не кэшируется на ПК пользователей. Это было бы, по крайней мере, частичное смягчение =) – Rob

Смежные вопросы