Удаление данных localStorage - PullRequest
11 голосов
/ 18 августа 2011

С какими уязвимостями я сталкиваюсь, когда кодирую веб-приложение, использующее localStorage, пользователя, непреднамеренно или намеренно удаляющего данные localStorage?

Я рад поставить кнопку «Удалить мои данные», этопод моим контролем, но есть ли какие-то способы вне моего контроля, что данные localStorage могут быть удалены?Или не используется (т.е. режим инкогнито / режим приватного просмотра)?

Спасибо

Ответы [ 3 ]

10 голосов
/ 18 августа 2011

Любой человек может в любое время позвонить на localStorage.clear() с консоли или с панели адреса. Можно использовать букмарклет, чтобы сделать то же самое.

Относитесь к localStorage с той же волатильностью, что и к cookie. Предположим, что он может исчезнуть в любое время. Лучше всего использовать для пользовательских настроек и временных данных. Если пользователь очистит его, будьте готовы использовать запасные варианты по умолчанию или начать процесс заново.

8 голосов
/ 18 августа 2011

localStorage доступно для редактирования пользователем, похоже на куки.

Пользователь может удалить / отредактировать его, если он хочет, поэтому вы должны сделать свои тесты на стороне сервера ...

вот пример того, как злые птицы были взломаны ...

http://thenextweb.com/apps/2011/05/11/angry-birds-for-chrome-already-hacked-unlocking-all-levels/

     var i = 0; 
     while (i<=69) { 
       localStorage.setItem('level_star_'+i,'3'); 
       i++; 
      }
     window.location.reload();
2 голосов
/ 24 октября 2011

Вот что мы обнаружили, что пользователь может делать на iPhone IOS4 и iPad IOS4.

Убить Safari Дважды нажмите «кнопку действия», нажмите и удерживайте кнопку сафари, которая отображается внизу.Когда появится кружок с крестиком в середине, щелкните значок x.

Очистить кэш Safari Настройки |Сафари |Очистить кэш

Запустить резервное копирование Safari

Плохие новости - очищается локальное хранилище всех сайтов, а не только ваше!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...