Автор Тема: дыра в модуле  (Прочитано 368 раз)

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

nikneimАвтор темы

  • *
  • Оффлайн
  • Награды Более 10 созданных тем Админ не доверяет этому пользователю !!!
  • Дата регистрации: Фев 2018
  • Сообщений: 44
  • Страна: ru
  • Репутация +0/-1
  • Пол: Мужской
    • Награды
дыра в модуле
« : 02 Март 2018, 20:46:57 »
Нет оценки
Здравствуйте. установил 3 модуля и заметил что один игрок вывел деньги проверил его профиль соответственно у него было много персонажей и серебра а вложил он деньги минимум для снятия заглушки.
 
вот код 1 модуля ( откуда пришел реферал )

Сделать запрос в бд.
ALTER TABLE `db_users_a` ADD `refsite` varchar(50) CHARACTER SET cp1251 COLLATE cp1251_general_cs NOT NULL;
1. В файл signup.php ПОСЛЕ ЭТОГО

if($pass == $_POST["repass"]){
                 
                  $db->Query("SELECT COUNT(*) FROM db_users_a WHERE user = '$login'");
                  if($db->FetchRow() == 0){

Вставить ЭТО:
 
preg_match('/([a-z0-9aа-я\.])+([a-z0-9а-я\-])+(\.)([a-z0-9а-я]{2,5}\.)?([a-z0-9а-я]{2,5})/i',$_COOKIE['rsite'], $out);
                        $out=$db->RealEscape($out[0]);
После него это
# Регаем пользователя
                  $db->Query("INSERT INTO db_users_a (user, email, pass, referer, referer_id, date_reg, refsite, ip)
                  VALUES ('$login','{$email}','$pass','$referer_name','$referer_id','$time','$out',INET_ATON('$ip'))");

В корневом файле index.php ПОСЛЕ
$_timer_a = TimerSet();
Вставить это
#откуда пришел
if (!isset($_COOKIE['rsite'])) {
setcookie('rsite', $_SERVER['HTTP_REFERER'], time() + 24 * 3600);
}
Ну и последнее в файле referals.php
После СТРОКИ
<h2 style="margin-left: 5px;font-size: 20px;">Список всех ваших рефералов ( <?=$refs; ?> )</h2>
####
Вставить это. Возможно она у вас есть,отсутвует откуда пришел,можете заменить и всё.И будет счастье =)
#####
 
<div style="max-height: 750px;overflow: auto;">
<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width='98%'>
<tr height='25' valign=top align=center>
   <td class="m-tb"> Логин </td>
   <td class="m-tb"> Дата регистрации </td>
   <td class="m-tb"> Откуда пришел</td>   
   <td class="m-tb"> Доход от партнера </td>
</tr>

<?PHP
 $all_money = 0;
  $db->Query("SELECT ".$pref."_users_a.user, ".$pref."_users_a.date_reg, ".$pref."_users_a.refsite, ".$pref."_users_b.to_referer FROM ".$pref."_users_a, ".$pref."_users_b
  WHERE ".$pref."_users_a.id = ".$pref."_users_b.id AND ".$pref."_users_a.referer_id = '$user_id' ORDER BY to_referer DESC");
 
   if($db->NumRows() > 0){
 
        while($ref = $db->FetchArray()){
     
      ?>
      <tr height="25" class="htt" valign="top" align="center">
         <td align="center"> <?=$ref["user"]; ?> </td>
         <td align="center"> <?=date("d.m.Y в H:i:s",$ref["date_reg"]); ?> </td>
         <td align="center"> <?=$ref["refsite"]; ?> </td>
         <td align="center"> <?=sprintf("%.2f",$ref["to_referer"]); ?> </td>
      </tr>
 

 вот код 2 модуля ( биржа рефералов)

##########F-FERMA.RU #############
Установка:

1)
Зайти в папку pages и найдите файл _account.php
Добавьте в этот файл следующее:
case "buyref": include("pages/account/_buyref.php"); break;

2
<div class="field-gr"><a href="/account/buyref"><font color = "red">Биржа рефералов</a></div> 

3)
 Зайти в корневую директорию скрипта и найдите файл .htaccess
Добавьте в этот файл следующее:
RewriteRule ^account/buyref(/?)+$ index.php?menu=account&sel=buyref [L]

Установка завершена.
<style>
.buybuy{
 text-decoration:none;
 text-align:center;
 padding:0px 6px;
 border:solid 0px #fcfdfe;
 
 font:9px arial;
 font-weight:bold;
 color:#434f4f; 
</style>

<?PHP
$_OPTIMIZATION["title"] = "Биржа активных рефералов";
$usid = $_SESSION["user_id"];
$uname = $_SESSION["user"];
$db->Query("SELECT * FROM db_users_b WHERE id = '$usid' LIMIT 1");
$user_datab = $db->FetchArray();
?>

<div class="s-bk-lf"><div class="acc-title">Биржа рефералов</div></div>
<div class="silver-bk"><div class="clr"></div>   
<font color = "#0000CD">На данной странице Вы сможете выбрать себе свободного реферала и приобрести его за серебро со счета для ВЫВОДА. Цены меняются автоматически-ловите момент купить по-дешевле ! Чем больше активность реферала на проекте - тем выше цена !!!
<br><br>

<?
echo '<table width="100%" border="0">
  <tr bgcolor="#efefef">
   <td align="center">Пользователь</td>
   <td align="center">Активность</td>
   <td align="center">Цена</td>
   <td align="center">Покупка</td>
  </tr>';
?>

</tr>

<?php
$twenty_days = 60*60*24*20;
$twenty_days_reg = time() - $twenty_days;
$db->Query("SELECT * FROM db_users_a WHERE (referer_id = '1' AND id != '$usid') order by date_login");

while($user_data = $db->FetchArray()){
$buyed_user = $user_data["id"];
$price = round((3000000 -($user_data["date_login"]-time()) * (-1)) / 100);
if ($price <=0){$price=1;}

echo '<form action="" method="post">
<tr class="htt">
<input type="hidden" name="ref_id" value="'.$buyed_user.'">
<td align="center">'.$user_data["user"].'</td>
<td align="center">'.date("d.m.Y",$user_data["date_login"]).'</td>
<td align="center">'.$price.'</td>
<td align="center"><input type="hidden" name="buyreferal" value="'.$price.'"><input type="submit" class="buybuy"  value="Приобрести" style="height: 27px; margin-top:6px;"/></td>

</tr>
</form>';

}

if(isset($_POST["buyreferal"]) && is_numeric($_POST['buyreferal']) && is_numeric($_POST['ref_id'])){
$price = intval($_POST["buyreferal"]);
$ref_id = intval($_POST["ref_id"]);
if($price <= $user_datab["money_p"]){

$db->Query("UPDATE db_users_b SET money_p = money_p - '$price' WHERE id = '$usid'");
$db->Query("UPDATE db_users_a SET referals = referals + 1 WHERE id = '$usid'");
$db->Query("UPDATE db_users_a SET referer = '$uname', referer_id = '$usid'  WHERE id = '$ref_id'");
echo '<center><font color = "8C0508"><b>Вы успешно купили реферала!</b></font></center><BR />
';
Header("Location: /account/buyref");
$db->Query("SELECT * FROM db_users_b WHERE id = '$usid' LIMIT 1");
$user_datab = $db->FetchArray();
}else echo "<center><font color = '8C0508'><b>Недостаточно серебра для покупки реферала</b></font></center><BR />";
}
?>

</table>

<?PHP
?>
   
</div>
<div class="clr"></div>   
</div>

 и 3 ( модуль паразит ) с vip раздела.

где то есть дыра  ^55$ ^55$ ^55$ помогите убрать лишний код !!!^#|
 

Shop-53

  • *
  • Оффлайн
  • Награды Более 2 лет на форуме Болеее 300 сообщений Более 10 созданных тем За время в онлайне на форуме
  • Дата регистрации: Фев 2016
  • Сообщений: 402
  • Поблагодарили: 12 раз(а)
  • Репутация +2/-1
  • Пол: Мужской
    • Награды
дыра в модуле
« Ответ #1 : 02 Март 2018, 23:04:15 »
Нет оценки
Как по мне что то здесь не то
if(isset($_POST["buyreferal"]) && is_numeric($_POST['buyreferal']) && is_numeric($_POST['ref_id'])){
a:0:{}
 

nikneimАвтор темы

  • *
  • Оффлайн
  • Награды Более 10 созданных тем Админ не доверяет этому пользователю !!!
  • Дата регистрации: Фев 2018
  • Сообщений: 44
  • Страна: ru
  • Репутация +0/-1
  • Пол: Мужской
    • Награды
дыра в модуле
« Ответ #2 : 02 Март 2018, 23:44:19 »
Нет оценки
Как по мне что то здесь не то
if(isset($_POST["buyreferal"]) && is_numeric($_POST['buyreferal']) && is_numeric($_POST['ref_id'])){

а 1 модуль откуда пришел реферал он чист?
 

maks161

  • *
  • *
  • Оффлайн
  • Награды Более 2 лет на форуме Репутация более 5 Более 1000 сообщений Благодарность от форума Более 50 созданных тем За время в онлайне на форуме
  • Дата регистрации: Янв 2016
  • Расположение: Ростов-на-Дону
  • Возраст: 34
  • Сообщений: 1407
  • Страна: ru
  • Поблагодарили: 62 раз(а)
  • Репутация +14/-5
  • Пол: Мужской
  • Дата рождения:1984-03-10
    • Награды
дыра в модуле
« Ответ #3 : 03 Март 2018, 00:39:14 »
Нет оценки
Как по мне что то здесь не то
if(isset($_POST["buyreferal"]) && is_numeric($_POST['buyreferal']) && is_numeric($_POST['ref_id'])){
это не дыра. но возможно этот код может стать и дырой если фильтрация не правильная(но я сомневаюсь в этом)надо скрипт копать по любому он дырявый.
 

nikneimАвтор темы

  • *
  • Оффлайн
  • Награды Более 10 созданных тем Админ не доверяет этому пользователю !!!
  • Дата регистрации: Фев 2018
  • Сообщений: 44
  • Страна: ru
  • Репутация +0/-1
  • Пол: Мужской
    • Награды
дыра в модуле
« Ответ #4 : 03 Март 2018, 01:15:53 »
Нет оценки
это не дыра. но возможно этот код может стать и дырой если фильтрация не правильная(но я сомневаюсь в этом)надо скрипт копать по любому он дырявый.
 скрипт то чист несколько раз проверялся
 после этих модулей заметил проблему правда добавил еще один код последние пять пополнений и выплат
вот код

<div class="stat">
   <div class="h-title">Последние 5 пополнений</div>
<div class="st-rg" >


<?PHP

  $db->Query("SELECT * FROM db_insert_money ORDER BY id DESC LIMIT 5");

  if($db->NumRows() > 0){

      while($last = $db->FetchArray()){

    ?>
  <div class="line-st"><?=$last["user"]; ?></div>

    <?PHP

    }

  }else echo '<tr><td align="center" colspan="5">Нет записей</td></tr>'
  ?>
</div>
<div class="st-rg">
  <?PHP

  $db->Query("SELECT * FROM db_insert_money ORDER BY id DESC LIMIT 5");

  if($db->NumRows() > 0){

      while($last = $db->FetchArray()){

    ?>
   <div class="line-st"><?=$last["money"]; ?> рублей</div>
    <?PHP

    }

  }else echo '<tr><td align="center" colspan="5">Нет записей</td></tr>'
  ?>
</div>
<div class="clr"></div>
   </div>
   

<br>
<div class="stat">
   <div class="h-title">Последние 5 выплат</div>
<div class="st-rg" >


<?PHP

  $db->Query("SELECT * FROM db_payment ORDER BY id DESC LIMIT 5");

  if($db->NumRows() > 0){

      while($last = $db->FetchArray()){

    ?>
  <div class="line-st"><?=$last["user"]; ?></div>

    <?PHP

    }

  }else echo '<tr><td align="center" colspan="5">Нет записей</td></tr>'
  ?>
</div>
<div class="st-rg">
  <?PHP

  $db->Query("SELECT * FROM db_payment ORDER BY id DESC LIMIT 5");

  if($db->NumRows() > 0){

      while($last = $db->FetchArray()){

    ?>
   <div class="line-st"><?=$last["sum"]; ?> рублей</div>
    <?PHP

    }

  }else echo '<tr><td align="center" colspan="5">Нет записей</td></tr>'
  ?>
</div>
<div class="clr"></div>
   </div>
 

maks161

  • *
  • *
  • Оффлайн
  • Награды Более 2 лет на форуме Репутация более 5 Более 1000 сообщений Благодарность от форума Более 50 созданных тем За время в онлайне на форуме
  • Дата регистрации: Янв 2016
  • Расположение: Ростов-на-Дону
  • Возраст: 34
  • Сообщений: 1407
  • Страна: ru
  • Поблагодарили: 62 раз(а)
  • Репутация +14/-5
  • Пол: Мужской
  • Дата рождения:1984-03-10
    • Награды
дыра в модуле
« Ответ #5 : 03 Март 2018, 01:39:25 »
Нет оценки
кем скрипт проверялся. и почему такая уверенность.кидай скрипт в личку можно без базы если боишься я тебе скажу он чистый или нет.
 

nikneimАвтор темы

  • *
  • Оффлайн
  • Награды Более 10 созданных тем Админ не доверяет этому пользователю !!!
  • Дата регистрации: Фев 2018
  • Сообщений: 44
  • Страна: ru
  • Репутация +0/-1
  • Пол: Мужской
    • Награды
дыра в модуле
« Ответ #6 : 03 Март 2018, 01:43:50 »
Нет оценки
кем скрипт проверялся. и почему такая уверенность.кидай скрипт в личку можно без базы если боишься я тебе скажу он чистый или нет.
скрипт проверял админ этого сайта
 

maks161

  • *
  • *
  • Оффлайн
  • Награды Более 2 лет на форуме Репутация более 5 Более 1000 сообщений Благодарность от форума Более 50 созданных тем За время в онлайне на форуме
  • Дата регистрации: Янв 2016
  • Расположение: Ростов-на-Дону
  • Возраст: 34
  • Сообщений: 1407
  • Страна: ru
  • Поблагодарили: 62 раз(а)
  • Репутация +14/-5
  • Пол: Мужской
  • Дата рождения:1984-03-10
    • Награды
дыра в модуле
« Ответ #7 : 03 Март 2018, 03:08:04 »
Нет оценки
тогда понятно.но возможно где-то фильтрацию пропустили(фильтрация это не дыра)но не полную фильтрацию некоторые умельцы используют в качестве уязвимости.
мое предположение.
удали эти модули и посмотри что будет. но паразит точно не виноват там то и кода совсем чуть чуть в котором нет ничего плохого .
 

shans5

  • *
  • *
  • Онлайн
  • Награды Репутация  более 25 Более 500 созданных тем Более 2500 сообщений Более 2 лет на форуме Бывает груб к участникам форума. За время в онлайне на форуме
  • Дата регистрации: Сен 2015
  • Расположение: Регион 58
  • Возраст: 38
  • Сообщений: 2878
  • Страна: ru
  • Поблагодарили: 256 раз(а)
  • Репутация +41/-4
  • Пол: Мужской
  • Всё только начинается !!!
  • Дата рождения:1979-06-30
    • Награды
дыра в модуле
« Ответ #8 : 03 Март 2018, 19:51:15 »
Нет оценки
скрипт проверял админ этого сайта

Кто именно ? Квозимир ?

Лично я твой скрипт не проверял на уязвимости,об этом разговора не было.
Подвергнуть критике, может любой.
Создать то,что будет подвергнуто критике,дано не каждому.

 

kvozimir

  • снова в skype --> kvozimir
  • *
  • Оффлайн
  • Награды Репутация  более 25 Более 1500 сообщений Более 2 лет на форуме Более 50 созданных тем Благодарность от форума За помощь пользователям За время в онлайне на форуме
  • Дата регистрации: Фев 2016
  • Возраст: 26
  • Сообщений: 1615
  • Страна: ru
  • Поблагодарили: 142 раз(а)
  • Репутация +27/-0
  • Пол: Мужской
  • telegram --> @kvozimir
  • Дата рождения:1992-04-18
    • Награды
  • Социальные сети:
    ВКонтакте
дыра в модуле
« Ответ #9 : 04 Март 2018, 05:30:43 »
Нет оценки
А я не помню смотрел или нет

 

Kuper

  • *
  • *
  • Оффлайн
  • Награды Репутация более 5 На форуме более 1 года Активный участник голосований за форум Болеее 300 сообщений
  • Дата регистрации: Дек 2016
  • Возраст: 28
  • Сообщений: 427
  • Страна: ru
  • Поблагодарили: 40 раз(а)
  • Репутация +8/-1
  • Пол: Мужской
  • Дата рождения:1989-11-19
    • Награды
  • Социальные сети:
    ВКонтакте
дыра в модуле
« Ответ #10 : 04 Март 2018, 10:21:40 »
Нет оценки
Нет в этих файлах дыр,успокойтесь. По скрипту пройтись нужно.
Теги:
 

дыра в скрипте! помогите убрать!

Автор maksim0201Раздел Разговоры обо всём

Ответов: 3
Просмотров: 796
Последний ответ 29 Ноябрь 2016, 22:33:46
от AlexGraur
Помогите. Дыра в скрипте

Автор MilliРаздел Общие вопросы по фермам

Ответов: 15
Просмотров: 486
Последний ответ 14 Январь 2018, 05:02:52
от maks161
Дыра в скрипте

Автор ТатьянаРаздел Общие вопросы по фермам

Ответов: 5
Просмотров: 734
Последний ответ 04 Декабрь 2016, 23:32:52
от maks161
Дыра в скрипте

Автор JohaРаздел Общие вопросы по фермам

Ответов: 26
Просмотров: 1419
Последний ответ 31 Март 2017, 19:23:47
от shans5
Дыра в скрипте.

Автор zhorik777Раздел Общие вопросы по фермам

Ответов: 2
Просмотров: 70
Последний ответ 10 Апрель 2018, 13:20:19
от zhorik777
Имя пользователя:
Пароль:
Session: