Schädliche Skripte. Wir suchen und entfernen Schadcode auf WordPress. Serverskripte neutralisieren

WordPress ist eines der beliebtesten Content-Management-Systeme und wird für eine Vielzahl von Zwecken eingesetzt, vom Bloggen bis zum E-Commerce. Es gibt eine große Auswahl an WordPress-Plugins und Themes. Es kommt vor, dass einige dieser Erweiterungen in die Hände von Webmastern gelangen, nachdem ein Angreifer daran gearbeitet hat.

Zu seinem eigenen Vorteil könnte er Werbelinks oder einen Code darin hinterlassen, mit dem er Ihre Website verwaltet. Viele WordPress-Benutzer haben nicht viel Erfahrung in der Webprogrammierung und wissen nicht, wie sie mit dieser Situation umgehen sollen.

Für sie habe ich neun der effektivsten Tools zum Erkennen böswilliger Änderungen im Code einer laufenden Website oder installierten Add-ons überprüft.

1. Theme Authenticity Checker (TAC)

Theme Authenticity Checker (TAC) – WordPress-Plugin, das jeden scannt etabliertes Thema auf verdächtige Elemente wie unsichtbare Links oder Base64-verschlüsselten Code.

Wenn solche Elemente entdeckt werden, meldet TAC sie dem WordPress-Administrator, sodass dieser die Quell-Themedateien unabhängig analysieren und gegebenenfalls korrigieren kann:

2. Exploit-Scanner

Exploit Scanner durchsucht den Quellcode Ihrer gesamten Website und den Inhalt der WordPress-Datenbank nach fragwürdigen Einschlüssen. Ebenso wie TAC verhindert dieses Plugin Angriffe nicht automatisch und bekämpft deren Folgen nicht automatisch.

Es zeigt dem Site-Administrator nur erkannte Infektionssymptome an. Wenn Sie löschen möchten Schadcode, müssen Sie es manuell tun:

3. Sucuri-Sicherheit

Sucuri ist eine bekannte WordPress-Sicherheitslösung. Das Sucuri Security-Plugin überwacht auf eine WordPress-Site hochgeladene Dateien, verwaltet eine eigene Liste bekannter Bedrohungen und ermöglicht Ihnen außerdem das Remote-Scannen der Site mit dem kostenlosen Sucuri SiteCheck Scanner. Hinter Abonnementgebühr Sie können den Schutz Ihrer Website weiter verstärken, indem Sie die leistungsstarke Sucuri Website Firewall installieren:

4. Anti-Malware

Anti-Malware ist ein Plugin für WordPress, das Trojaner-Skripte, Hintertüren und anderen Schadcode finden und entfernen kann.

Scan- und Löscheinstellungen können angepasst werden. Dieses Plugin kann nach einer kostenlosen Registrierung auf gotmls genutzt werden.

Das Plugin greift regelmäßig auf die Website des Herstellers zu, übermittelt Statistiken zur Malware-Erkennung und empfängt Updates. Wenn Sie also keine Plugins auf Ihrer Website installieren möchten, die den Betrieb überwachen, sollten Sie die Verwendung von Anti-Malware vermeiden:

5. WP Antivirus Site Protection

WP Antivirus Site Protection ist ein Plugin, das alle auf eine Site hochgeladenen Dateien scannt, einschließlich WordPress-Themes.

Das Plugin verfügt über eine eigene Signaturdatenbank, die automatisch über das Internet aktualisiert wird. Es kann Bedrohungen automatisch entfernen und den Site-Administrator benachrichtigen Email Und vieles mehr.

Das Plugin ist kostenlos installiert und funktioniert kostenlos, verfügt jedoch über mehrere kostenpflichtige Add-ons, die es wert sind, beachtet zu werden:

6. AntiVirus für WordPress

AntiVirus für WordPress ist ein benutzerfreundliches Plugin, das Ihre Website regelmäßig scannen und Sie per E-Mail über Sicherheitsprobleme benachrichtigen kann. Das Plugin verfügt über eine anpassbare Whitelist und weitere Funktionen:

7. Quterra Web Malware Scanner

Der Scanner von Quterra überprüft eine Website auf Schwachstellen, Code-Injektionen Dritter, Viren, Hintertüren usw. Der Scanner verfügt über so interessante Funktionen wie heuristisches Scannen und Erkennung externer Links.

Grundlegende Scannerfunktionen sind kostenlos, während einige zusätzliche Dienste 60 US-Dollar pro Jahr kosten:

8. Wordfence

Wenn Sie nach einer umfassenden Lösung für die Sicherheitsprobleme Ihrer Website suchen, sind Sie bei Wordfence genau richtig.

Dieses Plugin bietet WordPress ständigen Schutz vor bekannten Angriffsarten, Zwei-Faktor-Authentifizierung, Unterstützung für eine „Blacklist“ von IP-Adressen von Computern und Netzwerken, die von Hackern und Spammern verwendet werden, und das Scannen der Website nach bekannten Hintertüren.

Dieses Plugin ist in der Basisversion kostenlos, verfügt aber auch über Premium-Funktionalität, für die der Hersteller eine geringe Abonnementgebühr verlangt:

9. Wemahu

Wemahu überwacht Änderungen am Code Ihrer Website und sucht nach schädlichem Code.

Die Datenbank, in der Malware erkannt wird, wird mithilfe der Crowdsourcing-Methode aufgefüllt: Benutzer füllen sie selbst auf, indem sie die Ergebnisse der Überprüfung infizierter WordPress-Installationen an die Website des Plugin-Autors senden. Das Plugin unterstützt auch das Versenden von Berichten per E-Mail und andere nützliche Funktionen.

Muss gemeinsam erledigt werden. Wenn Sie die ursprüngliche Ursache des Hacks beseitigen (z. B. eine Schwachstelle in der CMS-Erweiterung), aber nicht alle schädlichen Dateien entfernen, kann der Angreifer über eines seiner Skripte erneut auf die Website zugreifen. Wenn Sie alle heruntergeladenen schädlichen Skripte entfernen, aber nicht die Ursache des Hacks beseitigen, kann der Angreifer die Website erneut hacken und erneut Skripte darauf herunterladen.

Ein Spezialist mit den entsprechenden Kenntnissen und Erfahrungen sollte Arbeiten zur Entfernung schädlicher Skripte durchführen und die Ursachen von Hacking analysieren:

  • Um bösartige Skripte zu entfernen, benötigen Sie Kenntnisse der Programmiersprache PHP sowie Kenntnisse über das „Innere“ beliebter CMS (Joomla, WordPress usw.) und deren Erweiterungen. Dieses Wissen ist erforderlich, um Skripte direkt aus dem CMS und seinen Erweiterungen von fremden Dateien zu unterscheiden und auch um eindeutig bestimmen zu können, welche Aktionen sie ausführen, wenn sie auf zweifelhafte Skripte stoßen.
  • Um die Ursachen von Hacking zu analysieren, sind Erfahrung in der Serveradministration erforderlich. Dies ist notwendig, um den Status der Dateien auf dem Konto und den Zeitpunkt ihrer Änderung zu analysieren und diese Daten auch mit Serverprotokollen zu vergleichen, um festzustellen, welche Aktionen des Angreifers zum Hacken von Websites geführt haben.

Wenn Ihre Website gehackt wurde, wird daher empfohlen, um wiederholte Hacks zu vermeiden, die Arbeit nicht selbst durchzuführen, sondern sich an einen Spezialisten zu wenden, der die erforderliche Diagnose durchführt und empfiehlt oder durchführt notwendige Maßnahmen das Problem lösen kann und die Qualität des erzielten Ergebnisses garantieren kann.

Es gibt jedoch eine Reihe von Maßnahmen, die in einigen Fällen dazu beitragen, den sicheren Betrieb der Website ohne besondere Kenntnisse wiederherzustellen. Die Einschränkung der folgenden Methode besteht darin, dass zur Wiederaufnahme des Betriebs der Website eine vor dem Hack erstellte Sicherungskopie erforderlich ist. Wenn das Datum des Verstoßes unbekannt ist, können Sie diese Methode mit dem ältesten verfügbaren Backup ausprobieren. Die zweite Einschränkung, die sich aus der ersten ergibt, besteht darin, dass nach der Wiederherstellung der Site Daten, die der Site nach der Erstellung der Wiederherstellungssicherung hinzugefügt wurden (z. B. neue Artikel, Bilder oder Dokumente), gelöscht werden. Wenn Sie die Site unter Beibehaltung neuer Daten wiederherstellen müssen, müssen Sie sich an einen Spezialisten wenden.

Diese Maßnahmen ermöglichen es uns nicht, die Ursache des Website-Hacks zu ermitteln, aber jede von ihnen zielt darauf ab, eine der möglichen Ursachen für das Eindringen zu beseitigen. Da der genaue Grund für den Hack unbekannt ist, ist es notwendig, alle durchzuführen. Die Aktionen sind in einer solchen Reihenfolge angeordnet, dass zunächst die Möglichkeit vollständig ausgeschlossen wird, dass der Angreifer seine Aktivitäten auf der Website oder dem Hosting-Konto fortsetzt momentan, und verhindern Sie dann, dass ein Angreifer in Zukunft die Website betritt.

Bei den folgenden Schritten wird davon ausgegangen, dass Sie nur eine Website auf Ihrem Hosting-Konto haben. Wenn sich auf dem Konto mehrere Websites befinden, können auch diese gehackt werden und die Website könnte über sie gehackt werden. Es ist notwendig, entweder die Site, mit der die Wiederherstellungsarbeiten durchgeführt werden, auf ein separates Konto zu übertragen oder die Wiederherstellung für alle auf dem Konto gehosteten Sites gleichzeitig durchzuführen.

Die Reihenfolge der Aktionen ist wichtig, daher ist es notwendig, sie in der genauen Reihenfolge auszuführen, in der sie unten aufgeführt sind.

  • Unmittelbar nach der Feststellung, dass eine Website gehackt wurde, ist es notwendig, den Besucherzugriff vollständig zu sperren. Dies verhindert erstens, dass der Angreifer böswillige Aktivitäten auf der Website ausführt, und ermöglicht ihm zweitens nicht, die Wiederherstellungsarbeiten zu beeinträchtigen. Dieser Schritt ist sehr wichtig, da das Entfernen schädlicher Skripte und die Beseitigung der Ursache des Hacks nicht über Nacht geschieht – in der Regel dauert es mehrere Stunden. Bleibt die Site weiterhin von außen zugänglich, kann der Angreifer Skripte erneut in den bereits freigegebenen Bereich der Site hochladen. In diesem Fall kann ein Angreifer unterschiedliche IP-Adressen für die Verbindung verwenden, sodass es nicht funktioniert, den Zugriff nur auf eine Liste von IP-Adressen zu verweigern. Um sicherzustellen, dass die Website von erkannten schädlichen Skripten befreit wird, ist es notwendig, den Zugriff des Angreifers auf die Website vollständig zu blockieren. Dies kann nur erreicht werden, indem die Website für alle Besucher vollständig blockiert wird. Wenden Sie sich an den technischen Support des Hosting-Anbieters, der Ihre Website hostet, um diese zu blockieren.
  • Nachdem Sie die Site blockiert haben, müssen Sie die Computer, von denen aus Sie mit der Site gearbeitet haben, mit einem modernen Antivirenprogramm mit aktualisierten Virendatenbanken überprüfen. Wenn die Site durch den Diebstahl von Kontopasswörtern mithilfe eines Virus gehackt wurde, müssen Sie sicherstellen, dass die weitere Arbeit mit der gehackten Site von einem Computer aus durchgeführt wird, auf dem sich keine Viren befinden. Andernfalls können diese nach einer Änderung der Zugangspasswörter erneut gestohlen werden.
  • Nachdem Sie die Site gesperrt und auf Viren überprüft haben, müssen Sie alle Zugangspasswörter zu Ihrem Konto ändern: Zugriff über FTP, über SSH sowie Zugriff auf das Hosting-Kontrollfeld. Wenn ein Angreifer mit einer dieser Methoden auf Kontodateien zugegriffen hat, ist dies nach der Änderung der Passwörter nicht mehr möglich.
  • Nach dem Ändern der Passwörter müssen Sie alle Serverprozesse zerstören, die unter dem Konto ausgeführt werden, auf dem die Site verwaltet wird. Prozesse, die von einem Angreifer im Hintergrund gestartet werden, ohne zerstört zu werden, können nach Abschluss der Wiederherstellungsarbeiten schädliche Skripte auf der Website ersetzen. Um dies zu verhindern, müssen alle Prozesse zerstört werden, die vor der Sperrung der Site ausgeführt wurden. Die Site sollte zu diesem Zeitpunkt bereits gesperrt sein, damit der Angreifer keine neuen Prozesse starten kann, indem er auf eines seiner Skripte auf der Site zugreift. Um auf Ihrem Konto laufende Prozesse zu zerstören, wenden Sie sich an den technischen Support des Hosting-Anbieters, der Ihre Website hostet.
  • Jetzt ist es nicht mehr möglich, von außen in die Baustelle einzudringen, und Sie können mit der Wiederherstellung beginnen.
  • Löschen Sie vor weiteren Aktionen alle vorhandenen Site-Dateien, um sicherzustellen, dass keine schädlichen Skripte oder CMS-Skripte vorhanden sind, in die der Angreifer schädlichen Code eingefügt hat. Dieser Schritt ist auch deshalb wichtig, weil beim Wiederherstellen einer Site aus einem Backup nicht immer Dateien gelöscht werden, die vor der Wiederherstellung vorhanden waren. Wenn nach der Wiederherstellung aus einem Backup alte Schadskripte auf der Site verbleiben, kann der Angreifer erneut auf die Site zugreifen. Sie können dies vermeiden, indem Sie alle Site-Dateien löschen, bevor Sie die Wiederherstellung durchführen.
  • Nachdem Sie alle Site-Dateien gelöscht haben, stellen Sie die Site aus einem Backup wieder her, das vor dem Hackerangriff erstellt wurde. Oft reicht es aus, nur die Site-Dateien wiederherzustellen. Wenn jedoch nach der Wiederherstellung Fehler im Betrieb der Site festgestellt werden, ist eine vollständige Wiederherstellung der Site erforderlich: sowohl die Dateien als auch die Datenbank.
  • Aktualisieren Sie nach der Wiederherstellung aus einem Backup Ihr ​​Content Management System (CMS) und Ihre Erweiterungen auf die neuesten Versionen. Dies ist notwendig, um das Vorhandensein bekannter Schwachstellen auf der Website auszuschließen, durch die sie gehackt werden könnte. Das Update kann in der Regel über den CMS-Administrationsbereich erfolgen. Zum Erhalten vollständige Anleitung Um das CMS zu aktualisieren, müssen Sie die Website des Systementwicklers aufrufen. Es ist wichtig, nicht nur das CMS selbst, sondern auch alle seine Erweiterungen zu aktualisieren, da Hackerangriffe häufig durch eine Schwachstelle in einer der CMS-Erweiterungen (z. B. Plugins, Themes, Widgets usw.) erfolgen. Derzeit ist es noch nicht möglich, die Website für Besucher freizugeben, da sie möglicherweise noch angreifbar ist. Um zum Aktualisieren auf Ihre Website zuzugreifen, wenden Sie sich an den technischen Support des Hosting-Anbieters, der Ihre Website hostet, und bitten Sie darum, den Zugriff auf die Website nur über die IP-Adresse Ihres Computers zuzulassen. Ihre IP-Adresse können Sie beispielsweise unter inet.yandex.ru herausfinden.
  • Gehen Sie nach der Aktualisierung des Site-Management-Systems und seiner Erweiterungen zum Bereich Site-Administration und ändern Sie dort das Administrator-Zugriffskennwort. Stellen Sie sicher, dass sich unter den Site-Benutzern keine anderen Benutzer mit Administratorrechten befinden (sie könnten von einem Angreifer hinzugefügt worden sein) und löschen Sie sie, falls welche gefunden werden.
  • Nachdem die Site nun aus einem Backup wiederhergestellt wurde und keine bösartigen Skripte enthält, wurden das CMS und seine Erweiterungen auf die neuesten Versionen aktualisiert, die keine Schwachstellen enthalten, und die Passwörter für den Zugriff auf die Site und das Hosting-Konto wurden geändert kann die Website wieder für Besucher öffnen.
  • Alle oben genannten Aktionen müssen in der angegebenen Reihenfolge ohne Auslassungen oder Änderungen durchgeführt werden. Wenn die Aktionen ungenau ausgeführt werden, können schädliche Skripte oder Schwachstellen auf der Website verbleiben, wodurch diese nach kurzer Zeit erneut von einem Angreifer gehackt werden kann. Wenn es aus irgendeinem Grund nicht möglich ist, die oben genannten Schritte in der angegebenen Form auszuführen, wenden Sie sich an einen Spezialisten, um Arbeiten zur Wiederherstellung der Site nach einem Hack durchzuführen.

    Um Ihre Website in Zukunft vor wiederholten Hacks zu schützen, müssen Sie die folgenden Empfehlungen befolgen:
  • Verfolgen Sie Aktualisierungen des CMS und dessen Erweiterungen auf den Websites der Entwickler und aktualisieren Sie diese zeitnah auf die neuesten Versionen. Wenn in einem Update-Kommentar angegeben wird, dass eine Schwachstelle behoben wird, installieren Sie das Update so schnell wie möglich.
  • Arbeiten Sie mit der Website und dem Hosting-Konto nur von Computern aus, die durch moderne Antivirenprogramme mit ständig aktualisierten Virendatenbanken vor Viren geschützt sind.
  • Verwenden Sie komplexe Passwörter, damit diese nicht durch eine Wörterbuchsuche erraten werden können.
  • Speichern Sie keine FTP- und SSH-Passwörter in Programmen zum Herstellen einer Verbindung zur Site und speichern Sie nicht das Zugangspasswort zum Verwaltungsbereich der Site und zum Hosting-Kontrollfeld in Ihrem Browser.
  • Ändern Sie von Zeit zu Zeit (z. B. alle drei Monate) die Passwörter für den Zugriff auf die Website und das Hosting-Konto.
  • Wenn auf dem Computer, von dem aus Sie mit der Site gearbeitet haben, Viren entdeckt wurden, ändern Sie so schnell wie möglich die Passwörter für den Zugriff auf die Site und das Hosting-Konto. Sie müssen alle Passwörter ändern: Zugangspasswörter über FTP, SSH, das Passwort aus dem Administrationsbereich der Site sowie das Passwort aus dem Hosting-Kontrollpanel.
  • Gewähren Sie Dritten keinen Zugriff auf die Website, es sei denn, Sie sind sicher, dass diese diese Richtlinien ebenfalls befolgen.
  • Schädlicher Code gelangt durch Fahrlässigkeit oder böswillige Absicht auf die Website. Die Zwecke von bösartigem Code sind unterschiedlich, im Wesentlichen schadet er jedoch dem normalen Betrieb einer Website oder beeinträchtigt ihn. Um bösartigen Code in WordPress zu entfernen, müssen Sie ihn zunächst finden.

    Was ist Schadcode auf einer WordPress-Site?

    Von Aussehen In den meisten Fällen handelt es sich bei Schadcode um eine Reihe von Buchstaben und Symbolen des lateinischen Alphabets. Tatsächlich handelt es sich hierbei um einen verschlüsselten Code, mit dem diese oder jene Aktion ausgeführt wird. Die Aktionen können sehr unterschiedlich sein, zum Beispiel werden Ihre neuen Beiträge sofort auf einer Drittressource veröffentlicht. Dies bedeutet im Wesentlichen, dass Ihre Inhalte gestohlen werden. Codes haben auch andere „Aufgaben“, zum Beispiel das Platzieren ausgehender Links auf Seiten der Website. Die Aufgaben können sehr anspruchsvoll sein, aber eines ist klar: Schadcodes müssen gejagt und entfernt werden.

    Wie gelangen Schadcodes auf eine Website?

    Es gibt auch viele Schlupflöcher, durch die Codes in die Website gelangen können.

  • Am häufigsten handelt es sich dabei um Themes und Plugins, die von „linken“ Ressourcen heruntergeladen wurden. Allerdings ist eine solche Durchdringung typisch für sogenannte verschlüsselte Links. Expliziter Code landet nicht auf der Website.
  • Das Eindringen eines Virus beim Hacken einer Website ist am gefährlichsten. In der Regel können Sie beim Hacken einer Website nicht nur einen „Einmalcode“ platzieren, sondern auch Code mit Malware-Elementen installieren ( Schadsoftware). Sie finden beispielsweise einen Code und löschen ihn, er wird jedoch nach einiger Zeit wiederhergestellt. Es gibt wiederum viele Möglichkeiten.
  • Ich möchte gleich darauf hinweisen, dass die Bekämpfung solcher Viren schwierig ist und die manuelle Entfernung Kenntnisse erfordert. Es gibt drei Lösungen für das Problem: Die erste Lösung besteht darin, Antiviren-Plugins zu verwenden, beispielsweise ein Plugin namens BulletProof Security.

    Diese Lösung liefert gute Ergebnisse, braucht aber, wenn auch etwas, Zeit. Es gibt eine radikalere Lösung, um Schadcodes, einschließlich komplexer Viren, zu entfernen, nämlich die Wiederherstellung der Site aus zuvor erstellten Sicherungskopien der Site.

    Da ein guter Webmaster dies regelmäßig tut, können Sie problemlos auf eine nicht infizierte Version zurückgreifen. Die dritte Lösung ist für die Reichen und Faulen, wenden Sie sich einfach an ein spezialisiertes „Büro“ oder einen einzelnen Spezialisten.

    So suchen Sie nach bösartigem Code in WordPress

    Es ist wichtig zu verstehen, dass sich bösartiger Code auf WordPress in jeder Datei auf der Website befinden kann und nicht unbedingt im Arbeitsthema. Er kann ein Plugin, ein Theme oder „selbstgemachten“ Code aus dem Internet entwickeln. Es gibt verschiedene Möglichkeiten, Schadcode zu finden.

    Methode 1: Manuell. Sie scrollen durch alle Site-Dateien und vergleichen sie mit den Dateien eines nicht infizierten Backups. Wenn Sie den Code einer anderen Person finden, löschen Sie ihn.

    Methode 2: Verwendung von WordPress-Sicherheits-Plugins. Zum Beispiel, . Dieses Plugin verfügt über eine großartige Funktion: Es scannt Site-Dateien auf das Vorhandensein von Code anderer Leute und das Plugin meistert diese Aufgabe perfekt.

    Methode 3. Wenn Sie über einen angemessenen Hosting-Support verfügen und den Eindruck haben, dass sich jemand anderes auf der Website befindet, bitten Sie ihn, Ihre Website mit seinem Antivirenprogramm zu scannen. Ihr Bericht listet alle infizierten Dateien auf. Als nächstes öffnen Sie diese Dateien in Texteditor und Schadcode entfernen.

    Methode 4. Wenn Sie mit SSH-Zugriff auf das Site-Verzeichnis arbeiten können, dann machen Sie weiter, es verfügt über eine eigene Küche.

    Wichtig! Unabhängig davon, wie Sie nach bösartigem Code suchen, schließen Sie den Zugriff auf die Site-Dateien (aktivieren Sie den Wartungsmodus), bevor Sie den Code durchsuchen und dann löschen. Denken Sie an Codes, die selbst wiederhergestellt werden, wenn sie gelöscht werden.

    Suchen Sie mit der Evaluierungsfunktion nach Schadcodes

    In PHP gibt es eine solche Funktion namens eval. Es ermöglicht Ihnen, jeden Code in seiner Zeile auszuführen. Darüber hinaus kann der Code verschlüsselt werden. Aufgrund der Verschlüsselung sieht der Schadcode wie eine Reihe von Buchstaben und Symbolen aus. Zwei beliebte Kodierungen sind:

  • Base64;
  • Rot13.
  • Dementsprechend sieht die Auswertungsfunktion in diesen Kodierungen so aus:

    • eval(base64_decode(...))
    • eval (str_rot13 (...)) //in internen Anführungszeichen, langen, unklaren Buchstaben- und Symbolsätzen.

    Der Algorithmus zur Suche nach Schadcode mithilfe der Eval-Funktion lautet wie folgt (wir arbeiten über das Verwaltungspanel):

    • Gehen Sie zum Site-Editor (Darstellung→Editor).
    • Kopieren Sie die Datei „functions.php“.
    • Öffnen Sie es in einem Texteditor (z. B. Notepad++) und suchen Sie nach dem Wort: eval.
    • Wenn Sie es finden, löschen Sie nichts überstürzt. Sie müssen verstehen, was diese Funktion „verlangt“ auszuführen. Um dies zu verstehen, muss der Code entschlüsselt werden. Für die Dekodierung gibt es Online-Tools, sogenannte Decoder.
    Decoder/Encoder

    Decoder funktionieren einfach. Sie kopieren den Code, den Sie entschlüsseln möchten, fügen ihn in das Decoderfeld ein und dekodieren ihn.

    Zum Zeitpunkt des Schreibens habe ich keinen einzigen verschlüsselten Code in WordPress gefunden. Ich habe den Code von der Joomla-Website gefunden. Prinzipiell gibt es keinen Unterschied im Verständnis der Dekodierung. Schauen wir uns das Foto an.

    Wie Sie auf dem Foto sehen können, zeigte die Evaluierungsfunktion nach der Dekodierung keinen schrecklichen Code an, der die Sicherheit der Website gefährdet, sondern einen verschlüsselten Copyright-Link des Autors der Vorlage. Es kann auch entfernt werden, wird aber nach der Aktualisierung der Vorlage wieder angezeigt, wenn Sie nicht verwenden.

    Abschließend möchte ich anmerken, dass kein Virus auf die Website gelangt:

    • Schädlicher Code auf WordPress ist oft in Themes und Plugins enthalten. Installieren Sie daher keine Vorlagen und Plugins von „linken“, ungeprüften Ressourcen und überprüfen Sie diese in diesem Fall sorgfältig auf das Vorhandensein von Links und ausführenden Funktionen von PHP. Überprüfen Sie die Website nach der Installation von Plugins und Themes aus „illegalen“ Ressourcen mit einer Antivirensoftware.
    • Stellen Sie sicher, dass Sie regelmäßig Sicherungen durchführen und andere durchführen.

    1. Entpacken Sie es in den Site-Ordner.
    2. Folgen Sie dem Link your_site/fscure/
    3. alles

    Was kann er tun?

    1. Automatische Suche nach Viren anhand von Signaturen.
    2. Suchen Sie in Dateien nach einer Zeichenfolge
    3. Dateien löschen
    4. Patchen Sie Schadcode mithilfe regulärer Ausdrücke

    Das Skript nimmt Ihnen nicht die ganze Arbeit ab und erfordert nur minimale Kenntnisse. Es wird empfohlen, vor der Arbeit ein Backup der Site zu erstellen.

    Wie funktioniert es?

    Beim ersten Start wird ein Dateiindex erstellt. Die Datei fscure.lst befindet sich im Ordner. Zeigt eine Liste von Dateien an, die potenziell schädliche Signaturen enthalten. „Potenziell bösartig“ bedeutet, dass Sie entscheiden müssen, ob es sich um einen Virus handelt oder nicht. Die Liste der Signaturen wird in der Datei config.php, Konstante SCAN_SIGN, konfiguriert. Mit den Standardeinstellungen prüft das Skript keine JS-Dateien und enthält keine Signaturen für diese.

    Die häufigsten Probleme

    1. Der fscure.lst-Index wird nicht erstellt. Kann passieren, wenn nicht genügend Rechte vorhanden sind. Legen Sie 777 im fscure-Ordner ab

    2. 5xx-Fehler. Am häufigsten „504 Gateway Timeout“. Das Skript hat keine Zeit zur Verarbeitung und stürzt aufgrund einer Zeitüberschreitung ab. In diesem Fall gibt es mehrere Möglichkeiten, die Arbeit zu beschleunigen. Die Geschwindigkeit hängt in erster Linie von der Größe des Index ab. Es befindet sich in der Datei fscure.lst. Typischerweise kann eine Datei bis zu 5 MB in 90 % der Fälle verarbeitet werden. Wenn es keine Zeit hat, können Sie die „Gier“ des Skripts reduzieren, indem Sie das Scannen von *.jpg;*.png;*.css in der Konfiguration verbieten.
    In der Datei config.php.

    // Trennzeichen; define("FILES_EXCLUDE","*.js;*.jpg;*.png;*.css");

    3. Das Hosting gibt eine Warnung wie aus
    (HEX)base64.inject.unclassed.6: u56565656: /var/www/u65656565/data/www/34535335353.ru/fscure/index.php

    Es gibt keinen Virus im Skript und das war auch nie der Fall. Und (HEX)base64.inject.unclassed.6 ist eine Konstruktion wie „echo base64_decode(“ , die oft anzutreffen ist und an sich ziemlich harmlos ist. Allerdings in letzte Version, ich habe diesen Code ersetzt.

    Was tun, wenn Sie den Virus selbst nicht finden konnten?

    Sie können mich für Hilfe kontaktieren. Meine Preise sind moderat. Für meine Arbeit gebe ich eine Garantie von 6 Monaten. Die Kosten für die Arbeit betragen 800 Rubel. für 1 Standort. Wenn sich auf Ihrem Konto mehrere Websites befinden, wird der Preis individuell festgelegt.

    Wenn Sie es schaffen, alles selbst zu machen, wäre ich für eine finanzielle Belohnung oder einen Link zu meiner Seite dankbar.

    Meine Voraussetzungen:
    Yandex
    41001151597934

    Internetgeld
    Z959263622242
    R356304765617
    E172301357329

    Die Wahrheit ist, dass die Website früher oder später gehackt werden kann. Nachdem die Sicherheitslücke erfolgreich ausgenutzt wurde, versucht der Hacker, auf der Website Fuß zu fassen, indem er Hacker-Web-Shells und Downloader in Systemverzeichnissen platziert und Hintertüren in den Skriptcode und die CMS-Datenbank einführt.

    Scanner helfen dabei, geladene Web-Shells, Hintertüren, Phishing-Seiten, Spam-E-Mail-Versender und andere Arten von bösartigen Skripten zu erkennen – alles, was ihnen bekannt ist und vorab zur Signaturdatenbank für bösartigen Code hinzugefügt wurde. Einige Scanner wie AI-BOLIT verfügen über eine Reihe heuristischer Regeln, die Dateien mit verdächtigem Code, der häufig in bösartigen Skripten verwendet wird, oder Dateien mit verdächtigen Attributen, die von Hackern heruntergeladen werden können, erkennen können. Aber selbst wenn mehrere Scanner auf dem Hosting verwendet werden, kann es leider Situationen geben, in denen einige Hacker-Skripte unentdeckt bleiben, was tatsächlich bedeutet, dass dem Angreifer eine „Hintertür“ bleibt und er die Website hacken und die Kontrolle darüber erlangen kann volle Kontrolle jederzeit.

    Moderne Malware- und Hacker-Skripte unterscheiden sich deutlich von denen von vor 4 bis 5 Jahren. Derzeit kombinieren Schadcode-Entwickler Verschleierung, Verschlüsselung, Zerlegung, externes Laden von Schadcode und andere Tricks, um Antivirensoftware auszutricksen. Daher ist die Wahrscheinlichkeit, neue Malware zu übersehen, viel höher als zuvor.

    Was kann in diesem Fall getan werden, um Viren auf der Website und Hacker-Skripte auf dem Hosting effektiver zu erkennen? Es ist ein integrierter Ansatz erforderlich: anfängliches automatisiertes Scannen und weitere manuelle Analyse. In diesem Artikel werden Möglichkeiten zur Erkennung von Schadcode ohne Scanner erläutert.

    Schauen wir uns zunächst an, worauf Sie bei einem Hack genau achten sollten.

  • Hacker-Skripte.
    Beim Hacken handelt es sich bei den heruntergeladenen Dateien am häufigsten um Web-Shells, Backdoors, „Uploader“, Skripte für Spam-Mailings, Phishing-Seiten + Formularhandler, Doorways und Hacking-Markerdateien (Bilder aus dem Logo der Hackergruppe, Textdateien mit einer „Nachricht“ von Hackern usw.)
  • Injektionen (Code-Injektionen) in bestehende .
    Die zweitbeliebteste Art des Hostens von Schad- und Hackercode sind Injektionen. Mobile- und Suchweiterleitungen können in vorhandene .htaccess-Dateien der Website eingefügt werden, Hintertüren können in PHP/Perl-Skripte eingefügt werden und virale Javascript-Fragmente oder Weiterleitungen zu Ressourcen Dritter können in .js- und .html-Vorlagen eingebettet werden. Einspritzungen sind auch in Mediendateien möglich, zum Beispiel.jpg oder. Häufig besteht Schadcode aus mehreren Komponenten: Der Schadcode selbst wird im Exif-Header der JPG-Datei gespeichert und über ein kleines Steuerskript ausgeführt, dessen Code für den Scanner nicht verdächtig aussieht.
  • Datenbankinjektionen.
    Die Datenbank ist das dritte Ziel für einen Hacker. Hier sind statische Einfügungen möglich, , , , die Besucher auf Ressourcen Dritter umleiten, diese „ausspionieren“ oder durch einen Drive-by-Angriff den Computer/Mobilgerät des Besuchers infizieren.
    Darüber hinaus ermöglichen Ihnen Template-Engines in vielen modernen CMS (IPB, vBulletin, modx usw.) die Ausführung PHP-Code, und die Vorlagen selbst werden in der Datenbank gespeichert, sodass der PHP-Code von Web-Shells und Backdoors direkt in die Datenbank eingebaut werden kann.
  • Injektionen in Caching-Dienste.
    Aufgrund einer falschen oder unsicheren Konfiguration von Caching-Diensten, beispielsweise Memcached, sind Injektionen in zwischengespeicherte Daten „on the fly“ möglich. In manchen Fällen kann ein Hacker bösartigen Code in die Seiten einer Website einschleusen, ohne die Website direkt zu hacken.
  • Injektionen/initiierte Elemente in Serversystemkomponenten.
    Wenn ein Hacker privilegierten (Root-)Zugriff auf den Server erlangt hat, kann er Elemente des Webservers oder Caching-Servers durch infizierte ersetzen. Ein solcher Webserver sorgt einerseits für die Kontrolle über den Server mithilfe von Steuerbefehlen und führt andererseits von Zeit zu Zeit dynamische Weiterleitungen und bösartigen Code in die Seiten der Website ein. Wie bei einer Injektion in einen Caching-Dienst kann der Site-Administrator höchstwahrscheinlich nicht erkennen, dass die Site gehackt wurde, da alle Dateien und die Datenbank original sind. Diese Option ist am schwierigsten zu behandeln.
  • Nehmen wir also an, dass Sie die Dateien auf dem Hosting und den Datenbank-Dump bereits mit Scannern überprüft haben, diese aber nichts gefunden haben und der Virus immer noch auf der Seite ist oder die mobile Weiterleitung beim Öffnen von Seiten weiterhin funktioniert. Wie suche ich weiter?

    Manuelle Suche

    Unter Unix gibt es kaum ein wertvolleres Befehlspaar zum Auffinden von Dateien und Fragmenten als find / grep.

    finden . -name ‘*.ph*’ -mtime -7

    findet alle Dateien, die in der letzten Woche geändert wurden. Manchmal „verdrehen“ Hacker das Änderungsdatum von Skripten, um neue Skripte nicht zu entdecken. Anschließend können Sie nach PHP/PHTML-Dateien suchen, deren Attribute sich geändert haben

    finden . -name ‘*.ph*’ -сtime -7

    Wenn Sie Änderungen in einem bestimmten Zeitintervall finden müssen, können Sie dieselbe Suche verwenden

    finden . -name ‘*.ph*’ -newermt 25.01.2015! -newermt 30.01.2015 -ls

    Zum Durchsuchen von Dateien ist grep unverzichtbar. Es kann Dateien rekursiv nach einem bestimmten Fragment durchsuchen

    grep -ril ‘stummann.net/steffen/google-analytics/jquery-1.6.5.min.js’ *

    Beim Hacken eines Servers ist es nützlich, Dateien zu analysieren, bei denen das guid/suid-Flag gesetzt ist

    finde / -perm -4000 -o -perm -2000

    Um festzustellen, welche Skripte gerade ausgeführt werden und die Hosting-CPU belasten, können Sie aufrufen

    lsof +r 1 -p `ps axww | grep httpd | grep -v grep | awk ' ( if(!str) ( str= ) else ( str=str''"))END(print str)'` | grep vhosts | grep php

    Wir nutzen unser Gehirn und unsere Hände, um Dateien auf dem Hosting zu analysieren
  • Wir gehen zu den Upload-, Cache-, TMP-, Backup-, Log- und Bildverzeichnissen, in die etwas von Skripten geschrieben oder von Benutzern hochgeladen wird, und scannen den Inhalt nach neuen Dateien mit verdächtigen Erweiterungen. Für Joomla können Sie beispielsweise die .php-Dateien im Verzeichnis images:find ./images -name „*.ph*“ überprüfen. Wenn etwas gefunden wird, handelt es sich höchstwahrscheinlich um Malware.
    Für WordPress ist es sinnvoll, das wp-content/uploads-Verzeichnis sowie die Backup- und Cache-Theme-Verzeichnisse auf Skripte zu überprüfen.
  • Auf der Suche nach Dateien mit seltsamen Namen
    Zum Beispiel php, fyi.php, n2fd2.php. Dateien können durchsucht werden
    • - durch nicht standardmäßige Zeichenkombinationen,
    • - das Vorhandensein der Zahlen 3,4,5,6,7,8,9 im Dateinamen
  • Wir suchen nach Dateien mit ungewöhnlichen Erweiterungen
    Nehmen wir an, Sie haben eine Website auf WordPress oder für sie sind Dateien mit den Erweiterungen .py, .pl, .cgi, .so, .c, .phtml, .php3 nicht ganz normal. Wenn Skripte und Dateien mit diesen Erweiterungen erkannt werden, handelt es sich höchstwahrscheinlich um Hacker-Tools. Der Prozentsatz falscher Erkennungen ist möglich, aber nicht hoch.
  • Wir suchen nach Dateien mit nicht standardmäßigen Attributen oder Erstellungsdatum
    Der Verdacht kann durch Dateien entstehen, deren Attribute sich von den auf dem Server vorhandenen unterscheiden. Beispielsweise wurden alle .php-Skripte über FTP/SFTP hochgeladen und haben den Benutzer user, und einige wurden vom Benutzer www-data erstellt. Es ist sinnvoll, die neuesten zu prüfen. Oder wenn das Erstellungsdatum der Skriptdatei vor dem Erstellungsdatum der Website liegt.
    Um die Suche nach Dateien mit verdächtigen Attributen zu beschleunigen, ist es praktisch, den Unix-Befehl „find“ zu verwenden.
  • Wir suchen nach Türen, die eine große Anzahl von .html- oder .php-Dateien verwenden
    Befinden sich mehrere tausend .php- oder .html-Dateien im Verzeichnis, handelt es sich höchstwahrscheinlich um eine Türöffnung.
  • Protokolle zur Hilfe

    Webserver, E-Mail-Dienste und FTP-Protokolle können zur Erkennung von Schad- und Hacker-Skripten verwendet werden.

    • Korrelation von Datum und Uhrzeit des Briefversands (aus dem Protokoll ersichtlich). Mail-Server oder Service-Header eines Spam-Briefes) mit Anfragen von access_log helfen, die Methode des Spam-Versands zu identifizieren oder das Spam-Absender-Skript zu finden.
    • Durch die Analyse des FTP-xferlog-Übertragungsprotokolls können Sie nachvollziehen, welche Dateien zum Zeitpunkt des Hacks heruntergeladen, welche geändert wurden und von wem.
    • In einem korrekt konfigurierten Mailserver-Protokoll oder im Service-Header einer Spam-E-Mail steht bei korrekter Konfiguration von PHP ein Name oder ein vollständiger Pfad zum sendenden Skript, der bei der Bestimmung der Spam-Quelle hilft.
    • Anhand der Protokolle des proaktiven Schutzes moderner CMS und Plugins können Sie feststellen, welche Angriffe auf die Website ausgeführt wurden und ob das CMS ihnen widerstehen konnte.
    • Mithilfe von access_log und error_log können Sie die Aktionen eines Hackers analysieren, wenn Sie die Namen der von ihm aufgerufenen Skripte, die IP-Adresse oder den Benutzeragenten kennen. Als letzten Ausweg können Sie POST-Anfragen an dem Tag anzeigen, an dem die Website gehackt und infiziert wurde. Oft ermöglicht die Analyse, andere Hacker-Skripte zu finden, die zum Zeitpunkt des Hacks heruntergeladen wurden oder sich bereits auf dem Server befanden.
    Integritätskontrolle

    Es ist viel einfacher, einen Hack zu analysieren und auf einer Website nach schädlichen Skripten zu suchen, wenn Sie sich im Voraus um deren Sicherheit kümmern. Das Integritätsprüfungsverfahren hilft, Änderungen im Hosting rechtzeitig zu erkennen und die Tatsache eines Hackings festzustellen. Eines der einfachsten und effektive Wege– Stellen Sie die Site unter ein Versionskontrollsystem (Git, SVN, CVS). Wenn Sie .gitignore richtig konfigurieren, ähnelt der Änderungskontrollprozess dem Aufruf des Befehls „git status“ und die Suche nach schädlichen Skripten und geänderten Dateien ähnelt „git diff“.

    Auch Sie werden es immer haben Sicherheitskopie Dateien, auf die Sie die Site in Sekundenschnelle „zurücksetzen“ können. Serveradministratoren und fortgeschrittene Webmaster können Inotify, Tripwire, Auditd und andere Mechanismen verwenden, um den Zugriff auf Dateien und Verzeichnisse zu verfolgen und Änderungen im Dateisystem zu überwachen.

    Leider ist es nicht immer möglich, ein Versionskontrollsystem oder Dienste von Drittanbietern auf dem Server zu konfigurieren. Beim Shared Hosting ist die Installation eines Versionskontrollsystems und von Systemdiensten nicht möglich. Aber das macht nichts, es gibt eine ganze Reihe fertiger Lösungen für CMS. Sie können auf der Site ein Plugin oder ein separates Skript installieren, das Änderungen in Dateien verfolgt. Einige CMS implementieren bereits eine effektive Änderungsüberwachung und einen Mechanismus zur Integritätsprüfung (z. B. Bitrix, DLE). Als letzten Ausweg können Sie, wenn das Hosting über SSH verfügt, eine Referenzbesetzung erstellen Dateisystem Team

    Aktion „2 zum Preis von 1“

    Die Aktion ist bis zum Monatsende gültig.

    Wenn Sie den Dienst „Standort unter Überwachung“ für eine Website aktivieren, wird die zweite Website mit demselben Konto kostenlos verbunden. Nachfolgende Sites auf dem Konto - 1.500 Rubel pro Monat für jede Site.

    
    Spitze