Файлы куки (cookie), что это такое и чем они опасны?
- DesignerMix
- Администратор
- Сообщения: 7052
- Зарегистрирован: 25 апр 2014, 10:51
- Откуда: Белгород
- Контактная информация:
Файлы куки (cookie), что это такое и чем они опасны?
Не так давно мне пришлось делать систему авторизации для дипломного проекта, и именно тогда я столкнулся с куками впервые, нашел пару примеров кода, как передать их пользователю и как обработать то, что вернулось обратно. И изучая все это меня заинтересовала проблема безопасности, а почитав вики и пару статей журнала хакер, я понял что мои опасения небезосновательны.
Немного подумав, я решил сделать видео наглядно показывающее пользователям какие нерешенные проблемы есть в механизме cookie, и спустя неделю работы вот оно (я старался сделать его максимально технически точным, надеюсь что это у меня получилось.):
Так как в данном ролике я только вкратце упомянул о способах защиты, я и решил написать этот пост, в котором хочу подробнее разобраться, в том числе и самому, с тем, как можно хоть немного обезопасить свое пребывание в интернете.
Начну по пунктам из видео:
1) Использование протокола HTTPS
Здесь вариантов, на сколько я понимаю, не особенно много, и нужно просто использовать поддерживающие HTTPS ресурсы на которых вы работаете с важными данными (деньги, персональная переписка и пр.). Другой вариант, хотя я в нем не до конца уверен, использовать прокси с включенным HTTPS, либо воспользоваться проектом TOR или-же настроить VPN. И если в случае с прокси, ваши данные может использовать сам владелец прокси, то с тором и VPN ситуация выглядит лучше.
2) Проверять cookie на стороне сервера
Этот пункт относиться уже не к пользователям, а к создателям сайтов. И заключается он в том, что-бы проверить значение важных переменных в куках полученных от пользователя и если там не то, что ожидает скрипт, то просто изменить это значение. Например — Set-Cookie: CUSTOMER=WILE_E_COYOTE; path=/; expires=Wednesday, 09-Nov-99 23:12:40 GMT Если пользователь изменит здесь значение expiries, то изменится время жизни куков. Для проверки этого параметра достаточно внести например в БД оригинальную дату, и проверять изменен-ли этот параметр, и если да, то менять его на оригинал при передаче пользователю.
3) Включить функцию Do Not Track
Читайте про нее здесь и здесь
PS: Ролик сделан в стиле типографики при помощи программы Adobe After Effects.
Немного подумав, я решил сделать видео наглядно показывающее пользователям какие нерешенные проблемы есть в механизме cookie, и спустя неделю работы вот оно (я старался сделать его максимально технически точным, надеюсь что это у меня получилось.):
Так как в данном ролике я только вкратце упомянул о способах защиты, я и решил написать этот пост, в котором хочу подробнее разобраться, в том числе и самому, с тем, как можно хоть немного обезопасить свое пребывание в интернете.
Начну по пунктам из видео:
1) Использование протокола HTTPS
Здесь вариантов, на сколько я понимаю, не особенно много, и нужно просто использовать поддерживающие HTTPS ресурсы на которых вы работаете с важными данными (деньги, персональная переписка и пр.). Другой вариант, хотя я в нем не до конца уверен, использовать прокси с включенным HTTPS, либо воспользоваться проектом TOR или-же настроить VPN. И если в случае с прокси, ваши данные может использовать сам владелец прокси, то с тором и VPN ситуация выглядит лучше.
2) Проверять cookie на стороне сервера
Этот пункт относиться уже не к пользователям, а к создателям сайтов. И заключается он в том, что-бы проверить значение важных переменных в куках полученных от пользователя и если там не то, что ожидает скрипт, то просто изменить это значение. Например — Set-Cookie: CUSTOMER=WILE_E_COYOTE; path=/; expires=Wednesday, 09-Nov-99 23:12:40 GMT Если пользователь изменит здесь значение expiries, то изменится время жизни куков. Для проверки этого параметра достаточно внести например в БД оригинальную дату, и проверять изменен-ли этот параметр, и если да, то менять его на оригинал при передаче пользователю.
3) Включить функцию Do Not Track
Читайте про нее здесь и здесь
PS: Ролик сделан в стиле типографики при помощи программы Adobe After Effects.
- Lukas_Bertoni
- Интересующийся
- Сообщения: 54
- Зарегистрирован: 10 ноя 2014, 01:25
- Контактная информация:
Re: Файлы куки (cookie), что это такое и чем они опасны?
Вопрос,возможно глупый и не совсем по теме,такой:
Существует ли возможность заинжектит код JavaScript у себя на странице в ВК?
Существует ли возможность заинжектит код JavaScript у себя на странице в ВК?
- Lukas_Bertoni
- Интересующийся
- Сообщения: 54
- Зарегистрирован: 10 ноя 2014, 01:25
- Контактная информация:
Файлы куки (cookie), что это такое и чем они опасны?
С чем может быть связана причина того что куки с другой сети ( другого WAN IP ) не работают?
- DesignerMix
- Администратор
- Сообщения: 7052
- Зарегистрирован: 25 апр 2014, 10:51
- Откуда: Белгород
- Контактная информация:
Файлы куки (cookie), что это такое и чем они опасны?
Вероятнее всего на сайте есть проверка по IP. На этом форуме кстати такая проверка есть.Lukas_Bertoni писал(а):С чем может быть связана причина того что куки с другой сети ( другого WAN IP ) не работают?
Отправлено спустя 3 минуты 53 секунды:
Кстати возможно что проверяется еще и браузер включая его версию. На самом деле можно сделать довольно много разных проверок...
- Lukas_Bertoni
- Интересующийся
- Сообщения: 54
- Зарегистрирован: 10 ноя 2014, 01:25
- Контактная информация:
Файлы куки (cookie), что это такое и чем они опасны?
Это проверка только со стороны сервера? Если я физически к примеру папку браузера скопирую себе и заменю ее?Вероятнее всего на сайте есть проверка по IP. На этом форуме кстати такая проверка есть.
Еще назревает вопрос почему если я с планшета в разных местах захожу в ВК или на другие ресурсы то у меня сесия не пропадает?
Если можно то опишите пожалуста по подробнее процес проверки куки на сервере или дайте ссылку
- DesignerMix
- Администратор
- Сообщения: 7052
- Зарегистрирован: 25 апр 2014, 10:51
- Откуда: Белгород
- Контактная информация:
Файлы куки (cookie), что это такое и чем они опасны?
Конечно. Например я могу задать на маску вроде A.B.C.D по которой буду проверять адрес с которого заходят пользователи. Например если вы заходили на сайт с сессией сохраненной в фалах cookie с адреса в котором группы A и B совпадают а C и D не совпадают с тем адресом с которого вы начали сессию, то она будет действительна, а если группа A совпадает а B, C и D нет, то она будет недействительна.
Не совсем понял вопрос... Имеется ввиду что будет если вы скопируете профиль браузера со всей сохраненной историей и файлами cookie? Если да, то часть сессий будет сохранена а часть скорее всего разорвется т.к. разные сайты проверяют разные параметры... Тут нужно говорить конкретно по каждому сайту, а я к сожалению не могу знать что например проверяет вконтакте или одноклассники.
Опять таки вопрос сложный и конкретно на него ответить не смогу, но предполагаю что помимо файлов cookie с сессией есть какие-то другие пути проверки. Например я недавно узнал что в HTML 5 есть локальные хранилища в которые сайт может поместить файлы cookie и они будут оттуда восстановлены даже в случае очистки кеша и удаления файлов cookie... век живи век учись

- Lukas_Bertoni
- Интересующийся
- Сообщения: 54
- Зарегистрирован: 10 ноя 2014, 01:25
- Контактная информация:
Файлы куки (cookie), что это такое и чем они опасны?
Оно а ссылку можно?Например я недавно узнал что в HTML 5 есть локальные хранилища в которые сайт может поместить файлы cookie и они будут оттуда восстановлены даже в случае очистки кеша и удаления файлов cookie... век живи век учись
- DesignerMix
- Администратор
- Сообщения: 7052
- Зарегистрирован: 25 апр 2014, 10:51
- Откуда: Белгород
- Контактная информация:
Файлы куки (cookie), что это такое и чем они опасны?
Lukas_Bertoni, ссылка на рабочем компьютере, если не забуду в понедельник скину.
Файлы куки (cookie), что это такое и чем они опасны?
DesignerMix, каким образом можно использовать куки мобильных приложений?