#visual-studio #security #code-signing #sn
#visual-studio #Безопасность #подписание кода #sn
Вопрос:
Я играл с подписью кода моего приложения в Visual Studio (строгое имя файла ключа pfx с паролем). Насколько я понимаю, после подписания сборку нельзя будет повторно собрать с отредактированным кодом.
Я проверил это. Я разобрал dll на il, изменил некоторое строковое значение и затем смог успешно собрать с помощью ilasm. Я не думал, что это будет возможно.
Это потому, что код самоподписан?
Комментарии:
1. Вы проверяли подпись после повторной сборки?
2. Да, я это сделал. В нем говорится, что «.dll является сборкой, подписанной с задержкой или тестовой подписью», тогда как в оригинале указано «.dll действителен». Но я думал, что повторная сборка не удастся?
3. Цифровая подпись просто проверяет целостность подписанного фрагмента или его отсутствие. Это не предотвращает (и, возможно, не может) само по себе вмешательство.
4. Я думал, что целью подписи кода была не только проверка автора, но и предотвращение подделки сборки. Я могу изменять код, собирать заново, заменять библиотеки DLL, а затем запускать приложение. Конечно, это не должно быть возможно? Я пытаюсь понять причину этого? Если это из-за самоподписанного сертификата или потому, что все это находится на одном компьютере разработчика / пользователя?
5. Ни то, ни другое. Подписание двоичного файла подтверждает его целостность, и это та часть, которую вы выполняете. Проверка и / или обеспечение действительности цифровых подписей на другом конце — это вопрос политики, который вы не можете контролировать.