Личный кабинет на готовом движке

Технические вопросы по UTM 5.0
Закрыто
vel
Сообщения: 12
Зарегистрирован: Вс янв 17, 2010 17:43

Сообщение vel »

Я просто высказываю мнение :) Сам я использую стандартный web-интерфейс.
По поводу уязвимостей Joomla, то их навалом и самые примитивные фокусы с ней можно нагуглить.

Kayfolom
Сообщения: 746
Зарегистрирован: Вс фев 12, 2006 17:15

Сообщение Kayfolom »

vel писал(а):Я просто высказываю мнение :) Сам я использую стандартный web-интерфейс.
По поводу уязвимостей Joomla, то их навалом и самые примитивные фокусы с ней можно нагуглить.
Конечно, вот нагуглил для примера:
Уязвимость позволяет удаленному злоумышленнику обойти ограничения безопасности на целевой системе. Уязвимость существует из-за ошибки в проверке входных данных сценариями /components/com_user/controller.php и /components/com_user/models/reset.php. Эксплуатирование уязвимости позволит изменить пароль администратора на целевой системе.
Ну и чем эта уязвимость поможет злоумышленнику? Хоть 30 раз пусть сменит пароль администратора. Родной модуль авторизации все равно отключен и авторизация работает исключительно через билинг.
SQL-инъекции тоже бессмыслены, максимум чего можно добиться, это порушить сайт. В самой базе джумлы не хранится никакой полезной или критичной информации, даже бэкап месячной давности восстановит систему без проблем.

Так что ИМХО дело не в системе, а в руках которые ее эксплуатируют.

P.S. Один из факторов отказа от родного ЛК - как раз беззащитность не только самого ЛК, но и биллинга. Любой юзер а ЛК может завалить билинг в течении минуты. Попробуйте сами послать пару сотен запросов на создания какого либо отчета. В джумле для решения этой проблемы у меня ушло 30сек и пять строчек кода - проверка искуственного таймаута между действиями юзера, в родном решение этой проблемы не возможно (ну или багрепорт, долгое ожидания и килобакс денег и результат с пятью новыми глюками).

Во меня проперло на писанину. Курить бросаю... в очередной раз, так что если что обидное написал, не обращайте внимания.

nicol@s
Сообщения: 114
Зарегистрирован: Ср окт 14, 2009 15:52

Сообщение nicol@s »

Народ, кто-нибудь использует злополучный подарок другу?:( У меня при переводе средств у того, кто переводит средства, удаляются сервисные связки. В исходном коде с http://wiki.flintnet.ru/doku.php?id=jommla_urfaphp изменил только стоимость услуги и все.

dk
Сообщения: 424
Зарегистрирован: Чт авг 10, 2006 08:52

Сообщение dk »

Kayfolom писал(а):максимум чего можно добиться, это порушить сайт
Ваши клиенты будут очень рады увидеть вместо личного кабинета "хакед бай вася" или получить трояна в подарок... Не считайте это мелочью.

Kayfolom
Сообщения: 746
Зарегистрирован: Вс фев 12, 2006 17:15

Сообщение Kayfolom »

nicol@s писал(а):Народ, кто-нибудь использует злополучный подарок другу?:( У меня при переводе средств у того, кто переводит средства, удаляются сервисные связки. В исходном коде с http://wiki.flintnet.ru/doku.php?id=jommla_urfaphp изменил только стоимость услуги и все.
Смотрите логи билинга, в плагине используются только две функции rpcf_add_payment_for_account и rpcf_add_once_service_to_user, проверьте работу каждой из них в отдельном скрипте.
Также в исходном коде не содержится стоимость услуги и изменить ее в нем не возможно. Стоимость разовой услуги изменяется исключительно через админку билинга (если она у вас создана).

nicol@s
Сообщения: 114
Зарегистрирован: Ср окт 14, 2009 15:52

Сообщение nicol@s »

Спасибо. Попробую разобраться.

anschoo
Сообщения: 1
Зарегистрирован: Пт янв 29, 2010 16:36

Сообщение anschoo »

Присоединяюсь к спасибу.

Kayfolom
Сообщения: 746
Зарегистрирован: Вс фев 12, 2006 17:15

Сообщение Kayfolom »

Я не прочь принять скромные благодарности на WM R248130732538 ;) Ибо моральное удовлетворение это хорошо, а пара бутылок чешского пива еще лучше ;)

nicol@s
Сообщения: 114
Зарегистрирован: Ср окт 14, 2009 15:52

Сообщение nicol@s »

А никто не думал/делал услугу "заморозки" счета через личный кабинет?

Аватара пользователя
MegaDEN
Сообщения: 12
Зарегистрирован: Чт июл 09, 2009 17:53

Сообщение MegaDEN »

Всем привет.
Подскажите плз: при отображении информации о пользователе и в смене пароля выскакивает ошибка:

Warning: unpack() [function.unpack]: Type N: not enough input, need 4, have 0 in /usr/local/www/apache22/data/urfa/URFAClient_Packet.php on line 186

Warning: unpack() [function.unpack]: Type N: not enough input, need 4, have 0 in /usr/local/www/apache22/data/urfa/URFAClient_Packet.php on line 186

вот код функции:

Код: Выделить всё

	function bin2long($data)
	{
		$arr = unpack('N2', $data);
		if (PHP_INT_SIZE == 4) {
	    	$hi = $arr[1];
 	    	$lo = $arr[2];
	    	$isNeg = $hi  < 0;
	    	if &#40;$isNeg&#41; &#123;
		        $hi = ~$hi & &#40;int&#41;0xffffffff;
		        $lo = ~$lo & &#40;int&#41;0xffffffff;

		        if &#40;$lo == &#40;int&#41;0xffffffff&#41; &#123;
		          $hi++;
		          $lo = 0;
		        &#125; else &#123;
		          $lo++;
		        &#125;
	      	&#125;

	    	if &#40;$hi & &#40;int&#41;0x80000000&#41; &#123;
		        $hi &= &#40;int&#41;0x7fffffff;
		        $hi += 0x80000000;
	      	&#125;
		    if &#40;$lo & &#40;int&#41;0x80000000&#41; &#123;
		        $lo &= &#40;int&#41;0x7fffffff;
		        $lo += 0x80000000;
		    &#125;

		    $value = bcmul&#40;$hi, 4294967296&#41;;
		    $value = bcadd&#40;$value, $lo&#41;;

		    if &#40;$isNeg&#41; &#123;
	      		$value = bcsub&#40;0, $value&#41;;
	      	&#125;
	    &#125; else &#123;
	    	if &#40;$arr&#91;2&#93; & 0x80000000&#41; &#123;
	    		$arr&#91;2&#93; = $arr&#91;2&#93; & 0xffffffff;
	    	&#125;
	    	if &#40;$arr&#91;1&#93; & 0x80000000&#41; &#123;
		        $arr&#91;1&#93; = $arr&#91;1&#93; & 0xffffffff;
		        $arr&#91;1&#93; = $arr&#91;1&#93; ^ 0xffffffff;
		        $arr&#91;2&#93; = $arr&#91;2&#93; ^ 0xffffffff;
				$arr&#91;2&#93; = $arr&#91;2&#93; - 1;
				//$value = 0 - $arr&#91;1&#93;*4294967296 - $arr&#91;2&#93; - 1;
				$value = bcmul&#40;$arr&#91;1&#93;, 4294967296&#41;;
				$value = bcsub&#40;0, $value&#41;;
				$value = bcsub&#40;$value, $arr&#91;2&#93;&#41;;

			&#125; else &#123;
				//$value = $arr&#91;1&#93;*4294967296 + $arr&#91;2&#93;;
				$value = bcmul&#40;$arr&#91;1&#93;, 4294967296&#41;;
	        	$value = bcadd&#40;$value, $arr&#91;2&#93;&#41;;
	      	&#125;
	    &#125;
	    return $value;
	&#125;
Строка 186:

Код: Выделить всё

$arr = unpack&#40;'N2', $data&#41;;
При этом в смене тарифа все нормально, и проверка urfы - тоже ок.
Буду благодарен за ответ.

Kayfolom
Сообщения: 746
Зарегистрирован: Вс фев 12, 2006 17:15

Сообщение Kayfolom »

А сама информация выводится корректно?
Warning это не ошибка, в переводе с английского это Предупреждение.
Error - вот это ошибка.
Если все работает корректно, регулируйте вывод предупреждений и уведомлений php с помощью
@ini_set("display_errors", "1");
error_reporting(E_ALL);

dk
Сообщения: 424
Зарегистрирован: Чт авг 10, 2006 08:52

Сообщение dk »

Kayfolom писал(а):А сама информация выводится корректно?
Warning это не ошибка, в переводе с английского это Предупреждение.
Error - вот это ошибка.
Если все работает корректно, регулируйте вывод предупреждений и уведомлений php с помощью
@ini_set("display_errors", "1");
error_reporting(E_ALL);
Эти варнинги не всегда проходят бесследно; когда-то встречались, следующие запросы после них могут не проходить. Если помню правильно, проблема была в DataSetLong.

Аватара пользователя
MegaDEN
Сообщения: 12
Зарегистрирован: Чт июл 09, 2009 17:53

Сообщение MegaDEN »

Kayfolom писал(а):А сама информация выводится корректно?
Warning это не ошибка, в переводе с английского это Предупреждение.
Error - вот это ошибка.
Если все работает корректно, регулируйте вывод предупреждений и уведомлений php с помощью
@ini_set("display_errors", "1");
error_reporting(E_ALL);
Да. Я пока ждал ответ нашел, что вывод идет из плагина кассира (extpay). ВОт еслитам выключить отображение ошибок, то ворнинги пропадают и в юзер инфо и в смене пассворда.

А еще интересней, что на странице кассира этих ошибок нет.

nicol@s
Сообщения: 114
Зарегистрирован: Ср окт 14, 2009 15:52

Сообщение nicol@s »

Ребят, а подскажите какую функцию урфы можно использовать, чтобы поменять значение какого-либо поля в базе данных без перезагрузки админки?
Мне надо реализовать услугу "заморозка счета". Надо менять в базе тип блокировки. Я думал использовать функцию, как в плагине "информация о пользователе", rpcf_user5_change_int_status, но так и не смог разобраться как и где указать имя поля, значение которого нужно изменить :(

dk
Сообщения: 424
Зарегистрирован: Чт авг 10, 2006 08:52

Сообщение dk »

nicol@s писал(а):Ребят, а подскажите какую функцию урфы можно использовать, чтобы поменять значение какого-либо поля в базе данных без перезагрузки админки?
Мне надо реализовать услугу "заморозка счета". Надо менять в базе тип блокировки. Я думал использовать функцию, как в плагине "информация о пользователе", rpcf_user5_change_int_status, но так и не смог разобраться как и где указать имя поля, значение которого нужно изменить :(

Код: Выделить всё

$accountinfo = $utm->rpcf_get_accountinfo&#40; $user_id &#41;;
$accountinfo&#91;"is_blocked"&#93; = $block;
$accountinfo&#91;"int_status"&#93; = $status;
$utm->rpcf_save_account&#40; $user_id, $accountinfo, 0, 0, 0 &#41;;

Закрыто