Пополнение/вывод ooopay

  • Автор темы Андрей
  • Дата начала
Vlad8999
Участник
Сообщения
179
Реакции
47
  • #21
Rubrika написал(а):
27 строка:
if($db->NumRows() == 0){ echo htmlspecialchars($order_id)."|error"; exit;}

30 строка:
if($ooopay_row["status"] > 0){ echo htmlspecialchars($order_id)."|success"; exit;}

71 строка:
echo htmlspecialchars($order_id)."|success";

Это конечно не все, но тоже неплохо)
В их нем модуле 5 штук XSS!
1./_insert_ooopay.php - <input type="hidden" name="description" value="<?=$description; ?>">
2./ooopay_merchant.php - if($db->NumRows() == 0){ echo $order_id."|error"; exit;}
3./ooopay_merchant.php - if($ooopay_row["status"] > 0){ echo $order_id."|success"; exit;}
4./ooopay_merchant.php - echo $order_id."|success";
5./ooopay_merchant.php - echo $order_id."|error";
 
Rubrika
Участник
Сообщения
342
Реакции
43
  • #22
Vlad8999 написал(а):
В их нем модуле 5 штук XSS!
1./_insert_ooopay.php - <input type="hidden" name="description" value="<?=$description; ?>">
2./ooopay_merchant.php - if($db->NumRows() == 0){ echo $order_id."|error"; exit;}
3./ooopay_merchant.php - if($ooopay_row["status"] > 0){ echo $order_id."|success"; exit;}
4./ooopay_merchant.php - echo $order_id."|success";
5./ooopay_merchant.php - echo $order_id."|error";

прочитай последнюю строчку моего того сообщения )
 
MegaGoblin
PHP, JS, AJAX, CSS, HTML
Участник
Сообщения
322
Реакции
72
  • #23
Vlad8999 написал(а):
В их нем модуле 5 штук XSS!
1./_insert_ooopay.php - <input type="hidden" name="description" value="<?=$description; ?>">
2./ooopay_merchant.php - if($db->NumRows() == 0){ echo $order_id."|error"; exit;}
3./ooopay_merchant.php - if($ooopay_row["status"] > 0){ echo $order_id."|success"; exit;}
4./ooopay_merchant.php - echo $order_id."|success";
5./ooopay_merchant.php - echo $order_id."|error";

Вы серьезно? Какая фильтрация? Эти данные формирует скрипт, а не вводит пользователь.
1. <input type="hidden" name="description" value="<?=$description; ?>">
>> Выше строка $description = iconv('windows-1251', 'utf-8', "Пополнение пользователя '{$usname}' с проекта '".$_SERVER["HTTP_HOST"]."'");

Что тут фильтровать???

2-5 пункты - Тут вывод на экран, а не сохранение в БД! Какая тут дыра?!
 
Vlad8999
Участник
Сообщения
179
Реакции
47
  • #24
MegaGoblin написал(а):
Вы серьезно? Какая фильтрация? Эти данные формирует скрипт, а не вводит пользователь.
1. <input type="hidden" name="description" value="<?=$description; ?>">
>> Выше строка $description = iconv('windows-1251', 'utf-8', "Пополнение пользователя '{$usname}' с проекта '".$_SERVER["HTTP_HOST"]."'");

Что тут фильтровать???

2-5 пункты - Тут вывод на экран, а не сохранение в БД! Какая тут дыра?!
1. Разве не так? - echo $order_id."|success"; - должно быть echo htmlspecialchars($order_id)."|success"; , тут echo $order_id."|error"; это echo htmlspecialchars($order_id)."|error"; там <input type="hidden" name="description" value="<?=$description; ?>"> так <input type="hidden" name="description" value="<? echo htmlspecialchars($description); ?>"> , а тут if($db->NumRows() == 0){ echo $order_id."|error"; exit;} это if($db->NumRows() == 0){ echo htmlspecialchars($order_id)."|error"; exit;}
 
GLookin
Участник
Сообщения
296
Реакции
62
  • #25
Аналогичные "дыры" (xss) есть во всех модулях ввода и вывода Payeer и Free Kassa.
Подавляющее большинство админов их не закрывает, потому что не знает об их существовании.
 
MegaGoblin
PHP, JS, AJAX, CSS, HTML
Участник
Сообщения
322
Реакции
72
  • #26
Vlad8999 написал(а):
1. Разве не так? - echo $order_id."|success"; - должно быть echo htmlspecialchars($order_id)."|success"; , тут echo $order_id."|error"; это echo htmlspecialchars($order_id)."|error"; там <input type="hidden" name="description" value="<?=$description; ?>"> так <input type="hidden" name="description" value="<? echo htmlspecialchars($description); ?>"> , а тут if($db->NumRows() == 0){ echo $order_id."|error"; exit;} это if($db->NumRows() == 0){ echo htmlspecialchars($order_id)."|error"; exit;}
Нет не так, тут нет никаих дыр.


GLookin написал(а):
Аналогичные "дыры" (xss) есть во всех модулях ввода и вывода Payeer и Free Kassa.
Подавляющее большинство админов их не закрывает, потому что не знает об их существовании.
Да потому что это никакие не дыры. Не надо ничего выдумывать.

У вас в подписи стоит "PHP, HTML, CSS", должно быть вы знаете что-то из php.

Код:
$str = 'Hello World';

// Я думаю вы вывод строки делаете так
echo $str;
// Но не так
echo htmlspecialchars($str);
 
GLookin
Участник
Сообщения
296
Реакции
62
  • #27
MegaGoblin написал(а):
Нет не так, тут нет никаих дыр.



Да потому что это никакие не дыры. Не надо ничего выдумывать.

У вас в подписи стоит "PHP, HTML, CSS", должно быть вы знаете что-то из php.

Код:
$str = 'Hello World';

// Я думаю вы вывод строки делаете так
echo $str;
// Но не так
echo htmlspecialchars($str);
Я поэтому взял слово "дыры" в кавычки, потому что скептически к этому отнёсся)
Я знаю, что это не дыра. Но, есть у некоторых людей паранойя, что нужно всё, что выводится преобразовывать через htmlspecialchars :)
 
Vlad8999
Участник
Сообщения
179
Реакции
47
  • #28
GLookin написал(а):
Я поэтому взял слово "дыры" в кавычки, потому что скептически к этому отнёсся)
Я знаю, что это не дыра. Но, есть у некоторых людей паранойя, что нужно всё, что выводится преобразовывать через htmlspecialchars :)
mysql_real_escape_string() - практически всегда нужна
 
MegaGoblin
PHP, JS, AJAX, CSS, HTML
Участник
Сообщения
322
Реакции
72
  • #29
Vlad8999 написал(а):
mysql_real_escape_string() - практически всегда нужна
Но надо все-таки понимать зачем применяется эта функция, а не пихать ее всюду.
 
Vlad8999
Участник
Сообщения
179
Реакции
47
  • #30
MegaGoblin написал(а):
Но надо все-таки понимать зачем применяется эта функция, а не пихать ее всюду.
наоборот её впихивать где только возможно надо , используются для того, чтобы обезопасить данные, вставляемые в запрос перед отправкой его в MySQL.
 
MegaGoblin
PHP, JS, AJAX, CSS, HTML
Участник
Сообщения
322
Реакции
72
  • #31
Vlad8999 написал(а):
наоборот её впихивать где только возможно надо , используются для того, чтобы обезопасить данные, вставляемые в запрос перед отправкой его в MySQL.
Нет. Ее не надо использовать для всех подряд данных
Имеем примерно такой код
PHP:
$a = '1234';
$sql = "INSERT INTO `table` (`aaa`) VALUES ('$a')";
И тут экранирование совсем не нужно.

Точно так же, как и в найденных тобою "дырах" в модуле.
 
Vlad8999
Участник
Сообщения
179
Реакции
47
  • #32
MegaGoblin написал(а):
Нет. Ее не надо использовать для всех подряд данных
Имеем примерно такой код
PHP:
$a = '1234';
$sql = "INSERT INTO `table` (`aaa`) VALUES ('$a')";
И тут экранирование совсем не нужно.

Точно так же, как и в найденных тобою "дырах" в модуле.
ты уверен на 100% что через эти "дыры" нельзя загнать какую-нибудь фигню?
 
MegaGoblin
PHP, JS, AJAX, CSS, HTML
Участник
Сообщения
322
Реакции
72
  • #33
Vlad8999 написал(а):
ты уверен на 100% что через эти "дыры" нельзя загнать какую-нибудь фигню?
Да. Потому что тут нет никаких дыр.
 
Vlad8999
Участник
Сообщения
179
Реакции
47
  • #34
MegaGoblin написал(а):
Да. Потому что тут нет никаких дыр.
окей,поймал на слове. Если что с тебя спросим :)
 
lebmont
Местный
Сообщения
54
Реакции
0
  • #35
пополнение и выводы работают а вот игровую валюту не зачисляет, видимо мерчант гнилой
 
Последнее редактирование:
rezerv
Участник
Сообщения
211
Реакции
10
  • #36
lebmont написал(а):
пополнение и выводы работают а вот игровую валюту не зачисляет, видимо мерчант гнилой
У меня все работает
 
lebmont
Местный
Сообщения
54
Реакции
0
  • #37
а может и не в мерчанте дело, в бд после оплаты не меняет пользователю статус в чем дело кто знает
 
Rubrika
Участник
Сообщения
342
Реакции
43
  • #38
lebmont написал(а):
а может и не в мерчанте дело, в бд после оплаты не меняет пользователю статус в чем дело кто знает
за это все мерчант отвечает, так что смотри его )
 
lebmont
Местный
Сообщения
54
Реакции
0
  • #39
Вот строка статуса она верная?
$db->Query("UPDATE db_ooopay_insert SET status = '1' WHERE id = '".intval($order_id)."'");

папку __MACOSX на сайт не кидал, надеюсь мерчант этой папки не влияет?
 
Последнее редактирование:
lebmont
Местный
Сообщения
54
Реакции
0
  • #40
не рабочий короч этот модуль на зачисление серебра
 
Сверху