Вопрос

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

Как работает часть "запомнить этот компьютер"?Я знаю, что это не могут быть файлы cookie, потому что функция все еще работает, несмотря на то, что я удаляю все свои файлы cookie.Я думал, что это может быть по IP-адресу, но мой друг с динамическим IP утверждает, что у него это тоже работает (но, возможно, он ошибается).Он думал, что это MAC-адрес или что-то в этом роде, но я сильно в этом сомневаюсь!Итак, существует ли концепция файлов cookie только для https, которую я не очищаю?

Наконец, программная часть вопроса:как я могу сам сделать что-то подобное, скажем, на PHP?

Это было полезно?

Решение

На самом деле они, скорее всего, используют файлы cookie.Альтернативой для них было бы использование "флэш-файлы cookie" (официально называется "Локальные Общие объекты").Они похожи на файлы cookie в том смысле, что привязаны к веб-сайту и имеют верхний предел размера, но поддерживаются flash player, поэтому невидимы для любых инструментов браузера.

Чтобы прояснить их (и проверить эту теорию), вы можете использовать инструкции, предоставленные компанией Adobe.Другой замечательной (или, возможно, вызывающей беспокойство, в зависимости от вашей точки зрения) особенностью является то, что хранилище LSO является общим для всех браузеров, поэтому с помощью LSO вы можете идентифицировать пользователей даже если они сменили браузер (при условии, что они вошли в систему под именем одного и того же пользователя).

Другие советы

Конкретный банк, который меня заинтересовал, - это Bank of America.

Я подтвердил, что если я только удалю свои файлы cookie или LSO, сайт не потребует от меня повторного ввода информации.Если, однако, я удалю оба, мне пришлось бы пройти дополнительную аутентификацию.Таким образом, это, по-видимому, и есть ответ в моем конкретном случае!

Но спасибо вам всем за информацию о других банках и таких возможностях, как включение строки User-Agent.

Такого рода отслеживание сеансов, скорее всего, будет осуществляться с использованием комбинации файла cookie с уникальным идентификатором, идентифицирующим ваш текущий сеанс, и веб-сайта, сопоставляющего этот идентификатор с последним IP-адресом, который вы использовали для подключения к их серверу.Таким образом, если IP меняется, но у вас по-прежнему есть файл cookie, вы идентифицируетесь и входите в систему, а если файл cookie отсутствует, но у вас тот же IP-адрес, что и у сохраненного на сервере, то они присваивают вашему файлу cookie идентификатор, связанный с этим IP.

На самом деле, именно эту вторую возможность сложно реализовать правильно.Если файл cookie отсутствует, и у вас есть только ваш IP-адрес для идентификации, входить в систему кого-либо только на основании этого довольно небезопасно.Таким образом, серверы, вероятно, хранят дополнительную информацию о вас, LSO кажется хорошим выбором, geo IP тоже, но User Agent, не столько потому, что они на самом деле ничего не говорят о вас, у каждого пользователя, использующего ту же версию того же браузера, что и у вас, она одинаковая.

В качестве отступления, выше упоминалось, что он может работать с MAC-адресами. Я категорически не согласен! Ваш MAC-адрес никогда не попадет на сервер вашего банка, поскольку он используется только для идентификации сторон Ethernet-соединения, а для подключения к вашему банку вы выполняете несколько Ethernet-подключений:с вашего компьютера на ваш домашний маршрутизатор или к вашему провайдеру, затем оттуда на первый интернет-маршрутизатор, через который вы проходите, затем на второй и т.д...и каждый раз, когда устанавливается новое соединение, каждая машина с каждой стороны предоставляет свои собственные MAC-адреса.Таким образом, ваш MAC-адрес может быть известен только машинам, напрямую подключенным к вам через коммутатор или концентратор, потому что все остальное, что маршрутизирует ваши пакеты, заменит ваш MAC на их собственный.Только IP-адрес остается неизменным на протяжении всего пути.Если бы MAC-адреса действительно были доступны до конца, это было бы кошмаром для конфиденциальности, поскольку все MAC-адреса уникальны для одного устройства, следовательно, для одного человека.

Это немного упрощенное объяснение, потому что это не суть вопроса, но мне показалось полезным прояснить то, что выглядело как недоразумение.

Флэш-файлы могут хранить небольшой объем данных на вашем компьютере.Также возможно, что банк использует такой подход, чтобы "запомнить" ваш компьютер, но рискованно полагаться на пользователей, имеющих (и не отключивших) flash.

Сайт моего банка заставляет меня проходить повторную аутентификацию каждый раз, когда выходит новая версия Firefox, поэтому в некоторых из них определенно есть строковый компонент user-agent.

Это может быть комбинация файлов cookie и регистрации ip-адресов.

Редактировать:Я только что проверил свой банк и очистил файлы cookie.Теперь я должен повторно ввести всю свою информацию.

Я думаю, это зависит от банка.Мой банк действительно использует файл cookie, так как я теряю его, когда стираю файлы cookie.

Вы пользуетесь ноутбуком?Запоминает ли он вас после удаления файлов cookie, если вы пользуетесь другой сетью Wi-Fi?Если это так, то сопоставление IP / физического местоположения крайне маловероятно.

Основываясь на всех этих сообщениях, я прихожу к следующим выводам: (1) это зависит от банка и (2) вероятно, задействовано более одной части данных, но смотрите (1).

Возможен MAC-адрес.

Также возможно сопоставление IP-адреса с физическим местоположением.

Пользовательские агенты и другие HTTP-заголовки также уникальны для каждой из машин.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top