Имеет ли доступ к приложению, которое реализует шифрование и дешифрование, облегчение взлома?
Скажем, у меня есть приложение для чтения и записи файлов, которые защищены с помощью хэша (для обнаружения взлома и повреждения) и, возможно, шифрования с помощью ключа пользователя. Приложение обязательно будет включать скомпилированный код для хеширования, шифрования и дешифрования данных.
Предполагая, что мы используем строгие алгоритмы, такие как соленые и растянутые AES-256 и SHA-256, тот факт, что пользователь имеет приложение в скомпилированном виде (и с некоторыми усилиями может предположительно работать с используемыми алгоритмами), делает его проще для них взломать шифрование или сгенерировать фальшивый хеш?
Если это на самом деле серьезная уязвимость, какие меры кто-нибудь предложит для смягчения этой уязвимости?
1 ответ
Единственный случай, когда наличие источника приложения - это уязвимость, это когда, например, само приложение имеет серьезный недостаток.
- Использует безопасность через технику безвестности,
- Встраивает секрет в тело программы,
- Допускает ошибку при реализации известного алгоритма, который открывает реализацию для атаки.
По сути, ваш продукт становится более уязвимым, когда у злоумышленника есть источник, потому что злоумышленнику легче обнаружить ваши ошибки в коде. Однако именно ошибки кодирования делают ваше приложение взломанным, а не тот факт, что у злоумышленника есть ваш исходный код.