0 Пользователей и 1 Гость просматривают эту тему.
  • 21 Ответов
  • 1172 Просмотров
*

shurakana

  • Завсегдатай
  • 793
  • 43
Всем привет!

Необходимо получить доступ к данным пользователя из другого приложения, но, я никак не пойму криптование пароля, по какой схеме происходит его создание?

UPD - В классе JUser посмотрел методы создания пароля, схема понятна вроде.

Но не нашел где происходит воссоздание пароля для сравнения, т.к. для создания вроде как используется рандом..
« Последнее редактирование: 10.08.2015, 14:40:54 от shurakana »
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

icom

  • Живу я здесь
  • 804
  • 182
Re: Схема создания пароля в Joomla 3
« Ответ #1 : 10.08.2015, 14:50:29 »
"воссоздание пароля" не происходит, в базе по логину находится запись, дальше сравнивается пароль
примерно
if (md5('пароль_что_ввел_юзер_в_форму') == зашифрованный_пароль_из_базы)

к данным пользователя из другого приложения можно добраться через базу и без пароля
*

shurakana

  • Завсегдатай
  • 793
  • 43
Re: Схема создания пароля в Joomla 3
« Ответ #2 : 10.08.2015, 15:02:14 »
Все верно, но, в MySQL лежит такая запись = $2y$10$ZoNiLjxb.MRKZc1HJ.Z06OpaaybDCl7u9jNzanywre3MHtWnWXWjC

пароль "12345", в md5 = 827ccb0eea8a706c4c34a16891f84e7b

так вот, мне в приложении нужно воссоздать строку которая лежит в MySQL, для сравнения, чтобы в запросе посылать уже зашифрованный пароль..
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

robert

  • Профи
  • 4078
  • 376
Re: Схема создания пароля в Joomla 3
« Ответ #3 : 10.08.2015, 15:16:07 »
Прочитайте /libraries/joomla/user/ и /libraries/phpass.
  • Не будь паразитом, сделай что-нибудь самостоятельно!
  • В личке и по Skype не даю советов.
*

shurakana

  • Завсегдатай
  • 793
  • 43
Re: Схема создания пароля в Joomla 3
« Ответ #4 : 10.08.2015, 17:54:52 »
Используется Bcrypt.. установил библиотеку JBcrypt, вроде все генерирует, но, каждый раз генерируется разный ключ с паролем
"12345", как и в Joomla так и в java, плюс разные префиксы в Joomla - $2y$, в java-$2a$

Мой мозг отказывается понимать как так может быть.. Как сравнивать то..
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

zomby6888

  • Живу я здесь
  • 1484
  • 167
Re: Схема создания пароля в Joomla 3
« Ответ #5 : 10.08.2015, 19:11:02 »
используется PHP метод password_hash
интернет-блог: http://websiteprog.ru
*

icom

  • Живу я здесь
  • 804
  • 182
Re: Схема создания пароля в Joomla 3
« Ответ #6 : 10.08.2015, 19:16:08 »
include('/libraries/phpass/PasswordHash.php');

$pass = '1111'; //пароль который ввел юзер
$hash = '$P$DXgd3syv8G6L9ee3.x8IOhTcJOxOjD.'; //хеш из поля password

$phpass = new PasswordHash(10, true);
$match = $phpass->CheckPassword($pass, $hash);

if ($match === true) {
   echo 'ok';
} else {
   echo 'error';
}
*

zomby6888

  • Живу я здесь
  • 1484
  • 167
Re: Схема создания пароля в Joomla 3
« Ответ #7 : 10.08.2015, 19:30:05 »
Код: php
$hash = JUserHelper::hashPassword(1111);
echo JUserHelper::verifyPassword(1111, $hash)? 'ok' : 'wrong password';
интернет-блог: http://websiteprog.ru
*

icom

  • Живу я здесь
  • 804
  • 182
Re: Схема создания пароля в Joomla 3
« Ответ #8 : 10.08.2015, 19:33:18 »
Код: php
$hash = JUserHelper::hashPassword(1111);
echo JUserHelper::verifyPassword(1111, $hash)? 'ok' : 'wrong password';
Цитировать
Необходимо получить доступ к данным пользователя из другого приложения
*

zomby6888

  • Живу я здесь
  • 1484
  • 167
Re: Схема создания пароля в Joomla 3
« Ответ #9 : 10.08.2015, 19:43:34 »
В таком случае инклудится класс juserhelper и passwordHash возможно и выполняется то же самое или подключается фреймворк. Все остальное костыли, которые перестанут работать в какой нибудь из версий
интернет-блог: http://websiteprog.ru
*

shurakana

  • Завсегдатай
  • 793
  • 43
Re: Схема создания пароля в Joomla 3
« Ответ #10 : 10.08.2015, 20:15:07 »
Т.е. получается что и в CheckPassword и в verifyPassword нет необходимости знать "соль" которая использовалась при хешировании? Просто дал хеш на проверку и все?

я просто сравниваю c md5, поэтому трудно понять что бывает по другому..
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

zomby6888

  • Живу я здесь
  • 1484
  • 167
Re: Схема создания пароля в Joomla 3
« Ответ #11 : 10.08.2015, 20:52:43 »
у метода password_hash соль по умолчанию генерируется рандомно, читайте описание функции
интернет-блог: http://websiteprog.ru
*

Fedor Vlasenko

  • Профи
  • 3806
  • 698
  • Все начинается с Value
Re: Схема создания пароля в Joomla 3
« Ответ #12 : 10.08.2015, 21:26:54 »
Необходимо получить доступ к данным пользователя из другого приложения, но, я никак не пойму криптование пароля, по какой схеме происходит его создание?
Все данные лежат в базе зачем вам данные пользователя?
Стучитесь в базу там все есть. Пароль нельзя дешифровать
*

shurakana

  • Завсегдатай
  • 793
  • 43
Re: Схема создания пароля в Joomla 3
« Ответ #13 : 10.08.2015, 23:05:31 »
у метода password_hash соль по умолчанию генерируется рандомно, читайте описание функции

В том то и дело все прочел, по мне так если не знать "соль" которая использовалась при хешировании то пароль не возможно повторить..


Все данные лежат в базе зачем вам данные пользователя?
Стучитесь в базу там все есть. Пароль нельзя дешифровать

Мне не нужно дешифровывать его, мне нужно безопасно отправить кроссдоменный запрос с логином и паролем, так вот, я думал схема такая же как и md5.


UPD - Все, вроде разобрался с хешированием, проверку пароль проходит через password_verify, осталось только понять что с модификаторами $2a$ и $2y$, не могу понять где их задавать.. и что такое вообще blowjob и пр..)
« Последнее редактирование: 10.08.2015, 23:51:28 от shurakana »
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

Fedor Vlasenko

  • Профи
  • 3806
  • 698
  • Все начинается с Value
Re: Схема создания пароля в Joomla 3
« Ответ #14 : 10.08.2015, 23:51:20 »
Зачем запросом передавать логин и пароль? Какая здесь логика? Для идентификации пользователя достаточно его $user_id
Код: php
JFactory::getUser()->load($user_id);
сделает пользователя авторизованным
*

shurakana

  • Завсегдатай
  • 793
  • 43
Re: Схема создания пароля в Joomla 3
« Ответ #15 : 11.08.2015, 00:03:55 »
Fedor, я запутался, либо мы про разное, либо хз..)

Грубо говоря, есть два разных сайта, с общей базой, первый сайт на том же сервере что и MySQL, второй на другом, так вот, я хочу посмотреть состояние своей корзины на втором сайте, мне же все равно придется вводить свой логин и пароль, чтобы получить данные из бд.. так?

Так вот, я вижу два варианта, либо отправлять как то "безопасно" - 12345, или сразу создавать хеш, и отправлять уже его. Я выбрал второй вариант. Но теперь при генерации отличаются модификаторы $2a$ и $2y$..
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

Fedor Vlasenko

  • Профи
  • 3806
  • 698
  • Все начинается с Value
Re: Схема создания пароля в Joomla 3
« Ответ #16 : 11.08.2015, 00:33:53 »
если база данных общая так в ней и берите все.
отправлять надо только код запроса.
если базы разные? то на одном создаете точку входа и в нем идентификацию по (придуманному паролю и логину, ключу) для получения данных. для пущей предосторожности прописываете разрешимый IP
шлете запросы, получаете ответы
*

zomby6888

  • Живу я здесь
  • 1484
  • 167
Re: Схема создания пароля в Joomla 3
« Ответ #17 : 11.08.2015, 00:37:52 »
Цитировать
проверку пароль проходит через password_verify

Все правильно шифруйте пароль с помощью password_hash, сверяйте с помощью password_verify. Есть только одно но.. Они поддерживаются версией php 5.5 и выше. Но есть библиотека: https://github.com/ircmaxell/password_compat/blob/master/lib/password.php (которая кстатии включена в последнии версии Joomla)
интернет-блог: http://websiteprog.ru
*

shurakana

  • Завсегдатай
  • 793
  • 43
Re: Схема создания пароля в Joomla 3
« Ответ #18 : 11.08.2015, 00:57:49 »
Все правильно шифруйте пароль с помощью password_hash, сверяйте с помощью password_verify. Есть только одно но.. Они поддерживаются версией php 5.5 и выше. Но есть библиотека: https://github.com/ircmaxell/password_compat/blob/master/lib/password.php (которая кстатии включена в последнии версии Joomla)

Да, я уж видел, думал даже что причина в недоделке этой библиотеки, т.к. на сервере стоит 5.3..

если база данных общая так в ней и берите все.
отправлять надо только код запроса.
если базы разные? то на одном создаете точку входа и в нем идентификацию по (придуманному паролю и логину, ключу) для получения данных. для пущей предосторожности прописываете разрешимый IP
шлете запросы, получаете ответы

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

В итоге, я просто заменил все буквы "a" на "y" в методах JBcrypt, и все заработало, хеш созданный в приложении возвращает true при проверке в php..

Удивительно, но факт..)

Всем спасибо!

Всякой ерунды начитался, думал что так везде md5 и используется.. Вот например..
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

zomby6888

  • Живу я здесь
  • 1484
  • 167
Re: Схема создания пароля в Joomla 3
« Ответ #19 : 11.08.2015, 01:03:22 »
md5 вообще 128 битный алгоритм  и его начали ломать уже лет 10 как назад. Все правильно, ни в коем случае нельзя передавать пароли в чистом виде по сети.
интернет-блог: http://websiteprog.ru
*

voland

  • Профи
  • 9511
  • 422
  • Эта строка съедает место на вашем мониторе
Re: Схема создания пароля в Joomla 3
« Ответ #20 : 11.08.2015, 01:13:16 »
md5 вообще 128 битный алгоритм  и его начали ломать уже лет 10 как назад.
Ломать или брутфорсить\проверять по словарю?
Это вроде немного разные вещи.
*

zomby6888

  • Живу я здесь
  • 1484
  • 167
Re: Схема создания пароля в Joomla 3
« Ответ #21 : 11.08.2015, 01:24:00 »
Да уже способов взлома md5 дофига и больше. Погуглите, если интересно. Вот к примеру с того же хакер.ru https://xakep.ru/2013/10/13/md5-hack/
Так же там куча сатей о том как взломать md5 за 8 часов :)
интернет-блог: http://websiteprog.ru
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Справочник по классам API Joomla 3 и Joomla 2

Автор AlexeyGal

Ответов: 41
Просмотров: 1102
Последний ответ 20.09.2017, 00:50:17
от AlexeyGal
Переделать запросы к БД под Joomla

Автор Glog

Ответов: 3
Просмотров: 160
Последний ответ 03.07.2017, 17:53:28
от Glog
Поддержка Joomla в PhpStorm

Автор b2z

Ответов: 51
Просмотров: 5475
Последний ответ 28.12.2016, 23:31:39
от b2z
Joomla search tools

Автор jitendra

Ответов: 2
Просмотров: 202
Последний ответ 15.12.2016, 17:13:15
от jitendra
Как при помощи функций Joomla узнать номер страницы в пагинации?

Автор tora312

Ответов: 51
Просмотров: 1106
Последний ответ 06.12.2016, 08:25:43
от tora312