![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|||||
|
Расскажите плиз такую вещь. Есть многопользовательская система, юзер ввел пароль и логин и вошел в нее. Когда он вошел в систему, он лазает по страницам как бы внутри ( бэкофис ), страницы генерятся в виде page.php?id=USER_ID. Так вот, а почему не авторизированный юзер не может набрать page.php?id=USER_ID и попасть в систему ( случайно угадать USER_ID или с помощью перебора, или проверить просто напросто, есть ли юзер с таким именем )? Ведь при каждой новой генерации не проверяется пароль, а тоолько ID? Может я что-то недопонимаю?
Растолкуйте, плиз, как это реализуется ( идея ). --- Спасибо!
__________________
suum quique |
|
|||||
|
Ветеран форума
|
очень просто...
все остальные данные о юзвере хранятся в сессии... типа пароль и т.п. а так как сессия находится на сервере то никто не может прочитать что там написано... вот =) |
|
|||||
|
|
|
|||||
|
[+1 23.05.11]
Регистрация: Dec 2001
Сообщений: 4,159
|
Цитата:
Если система писалась руками с радиусом кривизны более метра, то в USER_ID будет хотя бы десяток цифр (лучше -- букв). Замаешься подбирать...
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++ |
|
|||||
|
Цитата:
if ($valid_user && $status==admin) {...} но вот если подать запрос index.php?valid_user=1&status=admin, то ты попадаешь на эту страничку, но я поступил проще ... ПОльзователь авторизируется и регистрируется сесеия например $user = значение, точнее если прошел логин и пароль; session_registered("user"); и потом проверяешь ... if (session_is_registered(user)) {...} идея проста и понятна ... тем более сложна .... попробуй подобрать какая у тебя сесия регится и тд ... и с какими значениями ....
__________________
заходите в гости advocat, это не по професия - это диагноз! Обычно в PHP обитаю ... |
![]() |
Часовой пояс GMT +4, время: 23:43. |
|
|
« Предыдущая тема | Следующая тема » |
|
|