Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Вставляю скопированный пароль...

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
armancho7777777 Супермодератор
Отправлено: 22 Апреля, 2011 - 03:39:05
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




Здравствуйте все!
Почему, когда я вставлял скопированный пароль и удаляю один-два символа с конца, авторизация всеравно проходит удачно? Вот часть кода:

PHP:
скопировать код в буфер обмена
  1.  
  2.          
  3.        $res2 = mysql_query("SELECT `id`, `time`, `dat` FROM `admin_pass`
  4.                                    WHERE `password2`='".md5(trim($password))."'");
  5.  
  6.                   if ($row2 = mysql_fetch_assoc($res2))
  7.                  
  8.                   { ....... }
  9.  

(Отредактировано автором: 22 Апреля, 2011 - 04:01:30)

 
 Top
GYS_Yu
Отправлено: 22 Апреля, 2011 - 07:29:30
Post Id



Новичок


Покинул форум
Сообщений всего: 24
Дата рег-ции: Февр. 2011  


Помог: 0 раз(а)




Патамушта гладиолус (с)

Может быть как-то попытаться понятнее и развернутее вопрос задать?
 
 Top
armancho7777777 Супермодератор
Отправлено: 22 Апреля, 2011 - 07:47:38
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




Выделяю пароль, который пришёл мне e-mail? капирую его, вставляю в поле для ввода пароля, удаляю последний символ, и даже 2, жму "вход" и все равно авторизируюсь. Хотя если тот же пароль ввожу в ручную, с клавы, и так же не дописываю последний символ, то как и должно быть, выдаёт ошибку.
 
 Top
EuGen Администратор
Отправлено: 22 Апреля, 2011 - 07:49:20
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Сделайте вывод md5- хешей того,что скопировали, того, что набрали и того, что правильно.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
armancho7777777 Супермодератор
Отправлено: 22 Апреля, 2011 - 07:50:39
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




EuGen пишет:
Сделайте вывод md5- хешей того,что скопировали, того, что набрали и того, что правильно.


Ну вывел, все так же. При вставке скопированного пароля выдаёт правильный хеш даже, если удалить последние 2 символа.
(Добавление)
Аномалия какая-та...

(Отредактировано автором: 22 Апреля, 2011 - 08:04:20)

 
 Top
Uchkuma
Отправлено: 22 Апреля, 2011 - 08:33:17
Post Id



Участник


Покинул форум
Сообщений всего: 1539
Дата рег-ции: Март 2010  
Откуда: Киров


Помог: 6 раз(а)




Смотрите код выше. Наверняка там стоит что-нибудь типа
$password = substr($password, 0, 10);
 
 Top
armancho7777777 Супермодератор
Отправлено: 22 Апреля, 2011 - 08:40:19
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




Uchkuma пишет:
Смотрите код выше. Наверняка там стоит что-нибудь типа
$password = substr($password, 0, 10);

Нет, в самом файле такого кода нет. Но этот пароль генерируется сначала в другом файле,заносится в бд вторым паролем после первой авторизации, и отсылаетя на почту. Этот второй пароль одноразовый. Двойная авторизация.
Да и не вижу связи. Второй пароль заносится в бд прежде, чем присходит редирект на следующую страницу с полем для этого второго пароля.

Этот код находится в файле с которого происходит редирект:

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3.  
  4. function generate($length = 7){
  5.         $chars = 'q1w2e3r4t5y6u7i8o9p1a2s3d4f5g6h7j8k9l1z2x3c4v5b6n7m8Q1W2E3R4T5Y6U7I8O9P1A2S3D4F5G6H7J8K9L1Z2X3C4V5B6N7M8';
  6.         $numChars = strlen($chars);
  7.         $string = '';
  8.         for ($i = 0; $i < $length; $i++) {
  9.         $string .= substr($chars, mt_rand(1, $numChars) - 1, 1);
  10.     }
  11.   return $string;
  12. }
  13.  
  14. $psw = generate();
  15.  
  16. $result = mysql_query ("UPDATE `avtorizet` SET `pass2`='".md5(trim($psw))."' WHERE `id`='".filter_var($_SESSION['id'], FILTER_SANITIZE_NUMBER_INT)."'");
  17.  
  18.  
  19.  
  20.  

(Отредактировано автором: 22 Апреля, 2011 - 08:47:00)

 
 Top
armancho7777777 Супермодератор
Отправлено: 23 Апреля, 2011 - 08:14:11
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




Неужели никто не знает в чём дело? Огорчение
 
 Top
vsll
Отправлено: 23 Апреля, 2011 - 10:32:41
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 530
Дата рег-ции: Февр. 2011  


Помог: 10 раз(а)




armancho7777777 пишет:
то как и должно быть, выдаёт ошибку.
в смысле ошибку? неверный логин и пароль или warning какой-нибудь?
а если удалить 3 символа или вообще все, то после получения письма, авторизация тоже проходит удачно?
 
 Top
armancho7777777 Супермодератор
Отправлено: 23 Апреля, 2011 - 10:37:06
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




Vasiliya пишет:
armancho7777777 пишет:
то как и должно быть, выдаёт ошибку.
в смысле ошибку? неверный логин и пароль или warning какой-нибудь?
а если удалить 3 символа или вообще все, то после получения письма, авторизация тоже проходит удачно?

в смысле ошибка: неверный логин и пароль. Если удалить больше 2х символов, то авторизация не проходит.

(Отредактировано автором: 23 Апреля, 2011 - 10:38:41)

 
 Top
EuGen Администратор
Отправлено: 23 Апреля, 2011 - 10:39:16
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Вы не показываете полный цикл формирования пароля. Вы не показываете полную логику проверок. Разумно предположить, что помочь Вам чем-то, кроме
http://phpfaq[dot]ru/debug
весьма затруднительно.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
armancho7777777 Супермодератор
Отправлено: 23 Апреля, 2011 - 10:43:08
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




Выше показана проверка. Чуть ниже формирование пароля.
(Добавление)
Понимаете, суть в том, что такое поведение только при вставке скапированного пароля. Если вводить его с клавиатуры, и не дописать хотя бы один символ, то всё происходит так, как и должно: ошибка, не верный пароль.

(Отредактировано автором: 23 Апреля, 2011 - 10:46:07)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


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



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB