Подтвердить что ты не робот

Безопасность HTML-кода HTML5

Я ищу решение для автономного веб-приложения с использованием HTML5. Функциональность - это все, что мне нужно, но сохраненные данные могут быть напрямую запрошены прямо в браузере и, следовательно, совершенно незащищены!

Нужно ли вообще шифровать/скрывать, чтобы данные были безопасными?

Спасибо, Д.

4b9b3361

Ответ 1

Есть две проблемы для локального хранилища в HTML5 -

  • Один веб-сайт, читающий автономные данные, которые другой веб-сайт хранит в браузере пользователей.
  • Конечный пользователь напрямую запрашивает автономные данные ваших веб-сайтов.

Для 1 браузеры применяют ограничения для локального хранилища (или поддержку базы данных sqlite, поддерживаемые этим сафари), поэтому другие веб-сайты не будут иметь доступ к хранящимся данным. Однако помните, что если ваш сайт имеет уязвимости XSS, можно было бы украсть данные.

Для 2 вы не можете предотвратить это. Его так же, как cookie - пользователь может выбрать просмотр/удаление/изменение.

Возможно шифрование данных (см. http://farfarfar.com/scripts/encrypt/), но бессмысленно. У вас не может быть одного глобального ключа/пароля, потому что злоумышленник может легко определить ключ из кода javascript. Использование пароля, введенного пользователем для шифрования/дешифрования, возможно, но клиентские библиотеки шифрования не являются зрелыми или достаточно хорошо протестированы. Вероятно, есть тонны пути его разлома.

Итак, на данный момент, по крайней мере, не храните конфиденциальные данные в localStorage.

Ответ 2

Вы также можете просмотреть статью об этой проблеме автором статьи SecureSore Porposal HTML5

Ответ 3

Если вы сохраняете данные на компьютере пользователя, пользователь всегда может его прочитать, независимо от того, сколько вы его зашифруете [при условии, что вы не используете хэш...]

Чувствительные данные всегда идут на серверной стороне.