Публиковать подписанные файлы?

Я встроил функцию автоматического обновления в свою программу. Он опрашивает xml в каком-то URL-адресе http, и в случае появления новой версии уведомляет пользователя и загружает новые файлы.

Я хочу разрешить распространение этих обновлений в закрытых сетях без подключения к Интернету. Администраторы могут загружать все файлы обновлений и размещать их на каком-либо HTTP-сервере в сети.

Проблема в том, что URL-адрес xml не будет таким же, поэтому я хочу разрешить изменение этого URL-адреса в файле конфигурации программы. Это открывает двери для издателей вредоносных программ: они могут распространять мою программу с другим URL-адресом в файле конфигурации, а затем распространять какую-либо форму вредоносного ПО через систему автоматического обновления моей программы, тогда люди будут говорить, что моя программа — это вирус.

Я хочу заблокировать возможность изменить исходный XML-файл автообновления, чтобы заблокировать такое распространение вредоносных программ. Как мне это сделать?


person DxCK    schedule 22.10.2010    source источник


Ответы (1)


Кажется, я понял вашу проблему. Но эта проблема не для вас. Пользователи должны загружать ваше приложение только из надежного источника. Вы не можете запретить пользователю загружать вредоносное ПО, если он это сделает, это его проблема. Кроме того, именно пользователи будут добавлять/изменять URL-адрес в файле конфигурации, и вы не можете запретить им добавлять вредоносный URL-адрес в файл конфигурации. И даже если у вас есть исходный URL-адрес обновления, жестко запрограммированный в вашем приложении, пользователю со злым умыслом не составит труда изменить его, перекомпилировать ваше приложение и распространить его. Или же вы можете использовать криптографию, чтобы убедиться, что исходный URL-адрес не изменился.

person Ranhiru Jude Cooray    schedule 22.10.2010