kaliostro_den 2 Опубликовано: 6 ноября 2009 Рассказать Опубликовано: 6 ноября 2009 Вообщем проблема в том что пользователи использующие в своём пароле спец символы типа <> и другие, которые потом преобразуются в HTML сущности, не могут войти на сайт с таким паролем. Объясняю как это происходит, когда пользователь менят пароль в своём акаунте на пароль со спец символами его пароль следующие стадии обработки $password1 = $db->safesql( $parse->process( $_POST['password1'] ) ); и потом $password1 = md5( md5( $password1 ) ); на первом этапе все спец символы в пароле заменяются на HTML сущности, функцией парсинга, если писать конкретнее то $source = str_replace( "<>", "<>", str_replace( ">>", ">>", str_replace( "<<", "<<", $source ) ) ); Также там фильтруются и другие теги. и в этоге мы на выходе получаем уже не тот пароль который водил пользователь. при следующей авторизации на сайте его просто не пустит с новым паролем, так как файл логина не проделывает таких операций с водимыми данными. Прошу ответить мне каким способом вы будете решать эту проблему в след версиях ДЛЕ. Я бы лучше убрал байду обработки пароля при изменении пароля в профиле, даже в функции $db->safesql для пароля нет никого смысла. Ссылка на сообщение Поделиться на других сайтах
celsoft 6242 Опубликовано: 6 ноября 2009 Рассказать Опубликовано: 6 ноября 2009 Принято. Будет убрано в 8.3 Ссылка на сообщение Поделиться на других сайтах
ks95 2 Опубликовано: 7 ноября 2009 Рассказать Опубликовано: 7 ноября 2009 kaliostro, эвон, как оно всё хитро оказалось! Большое Вам спасибо, что вникли в суть проблемы и помогли мне исправить её на моей площадке. Без такого хорошего знания матчасти, как у Вас, тут явно не разберёшься. Ещё раз спасибо (Вы понимаете, о чём я). Из ответа разработчика становится понятным, что такая же проблема, возникшая у меня, является хотя и не характерной для любого заурядного пользователя движком, но при определённых условиях (а именно - при назначении пароля со спецсимволами) может вызвать просто взрыв мозга. Я чуть было не убился с этим, спасибо kaliostro что выручил! Хорошо ещё, что как раз по случаю на сайте оказалось два админских аккаунта, а иначе как бы проблему исправлять?.. (может быть только через функцию восстановления пароля?) celsoft, kaliostro, спасибо вам, уважаю ваш профессионализм! Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Архивировано
Эта тема находится в архиве и закрыта для публикации сообщений.