куки, созданные в WordPress (последние) - PullRequest
1 голос
/ 13 марта 2009

Я только что установил WordPress (последний) и я пытаюсь изучить WordPress, чтобы сделать мои творения безопасными, как WordPress или до его уровня.

Я заметил при входе в WordPress, он создал 3 куки.

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

что я обычно делаю, когда аутентифицирую пользователя при регистрации, у меня будет столбец в таблице, скажем, tbl_users, называемый hash, и значение, которое будет указано в этом столбце, будет преобразованием имени пользователя sha1 (пользователь создал при регистрации). и после входа в систему на странице входа в систему и после аутентификации пользователя, проверяя, существует ли он в БД и так далее. Я бы создал cookie для этого пользователя. в cookie я вставляю хеш, который существует в БД, и сохраняю его в cookie. Вот как я отслеживал пользователя по страницам. Кто-нибудь знает, как это делает WordPress? или, может быть, я делаю это неправильно? я не знаю ..

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 13 марта 2009

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

Я думаю, что он объединяет хеш пользователя с уникальным ключом, который вы пишете в одну из переменных в wp_config.php. После этого у вас есть уникальный ключ, созданный из чего-то общедоступного, такого как хэш имени пользователя или что-то еще, и из чего-то доступного только в скрипте, т.е. не общедоступно. Это та комбинация, которая затем соответствует тому, что находится в БД, и аутентифицирует пользователя.

Надеюсь, это имеет смысл. Некоторые другие люди могут дать вам лучший совет по безопасности PHP, поэтому вы можете сделать свой вопрос более общим.

0 голосов
/ 24 мая 2009

Я бы посмотрел на шифрование MD5 и просто попытался проверить это в вашей базе данных WordPress, используя это. Я не пробовал это, но я хочу сделать то же самое.

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

Я проверяю своих пользователей с помощью самого wordPress. Вы можете вызывать функции, которые существуют в Wordpress, чтобы проверить, кто вошел в систему и использует ваше приложение. Вы можете воспользоваться всеми преимуществами WordPress. Мне нравится иметь PHPMyAdmin прямо в админ панели WordPress. Это сделало мою жизнь невероятно легкой в ​​последнее время, и мне не нужно беспокоиться о том, что я не знаю о безопасности. Если вы разрабатываете без эксперта по безопасности, это может быть отличным вариантом для вас. Дайте мне знать, если вы хотите узнать больше о том, как я его настраиваю.

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