Защита и проверка помните Me Cookie/Token от одного и того же человека/среды после того, как пользователь вошел на веб -Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Защита и проверка помните Me Cookie/Token от одного и того же человека/среды после того, как пользователь вошел на веб -

Сообщение Anonymous »

tldr - Как я могу быть уверен, что токен входа в систему пользователей, отправляемый на мой сайт, на самом деле является законным и происходит от исходного пользователя? В случае, если после того, как он вошел в систему, был украден авторизатор, а злоумышленник посылал это с помощью запроса, как я могу убедиться, что отправляемый файл cookie соответствует первоначальному пользователю, чтобы предотвратить и заблокировать вредоносные намерения с сторонней стороны? В основном проверяя след или что -то в этом роде, чтобы убедиться, что его тот же человек был законным, отправляя запросы и перемещаясь после того, как они вошли в систему. Но этот действительно заставил меня почесать голову, и я хотел некоторых ввода/предложений. После того, как они вошли в систему, впоследствии отправляется обратно, что сайт будет использовать для отслеживания, чтобы увидеть, какой пользователь в настоящее время аутентифицирует. Что -то из хорошей длины, которое нельзя догадаться случайным образом. Я даю, чтобы мой сайт по сути проверил таблицу активных сессий базы данных и посмотрю, соответствует ли кто -либо из них при поиске содержимого токена. Я хочу, по сути, проверить и убедиться, что человек, отправляющий файлы cookie с запросами, является тем же человеком, который в первую очередь инициировал вход в систему - и я знаю, что это очень сложно, если полагаться на IP -адрес, или пользовательские агенты, например, я мог измениться или естественно меняться. site strict origins, httponly cookies, etc.
I also found some guides that were suggesting to use a selector and validator approach, such as this website here - https://paragonie.com/blog/2015/04/secu ... ersistence - however, I'm still not 100% уверен, как это работает или принесет пользу моей ситуации конкретно. Я запутался, читая его , потому что, если кто -то снова придет, просто украсть cookie - у них были бы достоверные данные, которые веб -сайт увидит как аутентифицированный пользователь. Читайте об этом тоже, но это то, о чем я ничего не знаю, так что вся эта идея полностью смутила меня. В < /li>
[*] Пароль проверяется с помощью хэш -метода с использованием соли и перца, Bcrypt < /li>
Новый сеанс добавляется в таблице баз данных с новым случайным токеном (стрип из 100 случайных символов), временная метка и некоторые базовые детали, которые являются хэш -сведением (пользовательский агент, Browser, IP, и т. Д. Auth Token) с помощью этой новой случайной строки для сеанса, которая была сделана в базе данных < /li>
Переменные PHP сеанса затем генерируются в доме пользователя, которая используется и ссылается в коде с другими вещами позже на < /li>
< /ul>
Сейчас, когда пользователь посещает, или выполняет все, что выступает в любом случае, и выполняет действие, и выполняет все, что выступает в любом случае, и выполняет все, что выступает в любом случае, и выполняет действие, и выполняет все, что выступает в любом случае, и выполняет действие, и выполняет действие. Рандомизирован снова после каждого успешного посещения страницы или действия. Effectively rendering the previous token value useless for added security.
That flow/validation looks like this:[/b]

User visits site, clicks button, tries to edit something on account, whatever
[*]Request is sent with the auth token in the cookies, that contains that random string
> Hashed Comparisons being - IP Address, ISP, User Agent, Browser, Browser Version, City, State, Platform (desktop/mobile), and Browser Headers
If IP Address Doesn't match (either user is on mobile switching between Wi-Fi and network, or at home with a dynamic IP that changed), check some comparisons with the other provided details that get sent with the request (ignoring ISP on Мобильный). IP и пользовательские агенты /версии браузера изменяются *** - я только что добавил эти примеры ради этого поста)
Каждый день выполняется развертка, а сеансы, которые на 30 дней или старше удаляются из этой таблицы баз данных, заставляя пользователей войти в систему через 30 дней. Когда они первоначально вошли в систему. Таким образом, я могу убедиться, что токен Auth действительно является законным и подтвержденным, что он исходит от одного и того же человека, а не украден и не похищен.
Любые предложения или идеи? Но ничего не видел или много или проверял, что печенье отправляется от того же человека, который первоначально вошел в систему.

Подробнее здесь: https://stackoverflow.com/questions/796 ... environmen
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»