Alle Artikel

Ein Aktivitätsprotokoll für WordPress: So finden Sie heraus, wer Ihre Website wann geändert hat

Was WordPress selbst aufzeichnet, was es auslässt, was ein gutes Aktivitätsprotokoll festhalten sollte und wie Sie erkennen, ob jemand Einträge daraus gelöscht hat.

Radek, ENSOMEDIAVeröffentlicht 6 Min. LesezeitIn EnglishPo polskuEn españolEn français中文بالعربية

Auf Ihrer Website taucht ein Administrator auf, an dessen Anlage sich niemand erinnert, oder ein Plugin ist weg, und niemand weiß, wer es entfernt hat. Die Frage ist, wer das war und wann. WordPress kann einen Teil davon beantworten. Es führt einen Verlauf der Änderungen an Beitragsinhalten, zeichnet aber keine Anmeldungen, Plugin-Installationen oder Änderungen an Einstellungen auf. Dafür brauchen Sie ein Aktivitätsprotokoll, also ein Plugin, das solche Ereignisse aufschreibt, und bei ernsten Fällen zusätzlich die Serverprotokolle Ihres Hosters.

Dieser Beitrag beschreibt, was Sie ohne zusätzliche Werkzeuge sehen, was ein gutes Protokoll aufzeichnen sollte, warum sich ein gewöhnliches Protokoll in der Datenbank unbemerkt löschen lässt und wie Sie das erkennen.

Was WordPress selbst aufzeichnet

  • Revisionen von Beiträgen und Seiten. Bei jedem Speichern von Inhalten legt WordPress eine Revision mit Autor und Uhrzeit an, sofern Ihr Hoster oder Entwickler Revisionen nicht abgeschaltet hat. Sie können zwei Revisionen vergleichen und eine ältere wiederherstellen.
  • Das Datum der letzten Änderung eines Beitrags oder einer Seite.
  • Das Registrierungsdatum jedes Kontos in der Benutzerliste.

Was es nicht aufzeichnet: wer sich wann angemeldet hat, wer ein Plugin oder Theme installiert, aktualisiert oder gelöscht hat, wer die Rolle eines Kontos geändert hat und wer die Einstellungen geändert hat.

Serverprotokolle: wo Sie suchen, wenn es kein Aktivitätsprotokoll gibt

Ihr Hoster führt eigene Protokolle: jede Anfrage an die Website mit IP-Adresse, Uhrzeit und aufgerufener Seite. Die Anleitung von WordPress.org zur Härtung von WordPress (Stand 14. Oktober 2026) weist darauf hin, dass diese Protokolle nicht verraten, welcher Benutzername sich angemeldet hat, wohl aber IP-Adresse, Uhrzeit und die ausgeführten Aktionen zeigen.

In der Praxis ist das viel Sucharbeit: Tausende Zeilen, und kein Kontoname darin. Hoster bewahren sie außerdem nur begrenzt auf, fragen Sie Ihren also, wie lange, bevor Sie sie brauchen. Ein Aktivitätsprotokoll in WordPress erzählt Ihnen dieselbe Geschichte in klaren Worten: das Konto, das Ereignis, die Uhrzeit, die Adresse.

Was ein gutes Aktivitätsprotokoll aufzeichnen sollte

  • erfolgreiche und fehlgeschlagene Anmeldungen sowie Sperren nach zu vielen Versuchen,
  • neue Konten, Rollenänderungen und gelöschte Konten,
  • installierte, aktualisierte, deaktivierte und gelöschte Plugins und Themes,
  • Theme-Wechsel und WordPress-Updates,
  • Änderungen an Einstellungen, vor allem an Sicherheitseinstellungen,
  • Scan-Ergebnisse, wenn das Protokoll Teil eines Sicherheitsplugins ist.

Jeder Eintrag sollte sagen, was passiert ist, wann, von welchem Konto und von welcher Adresse.

Die Schwachstelle jedes Protokolls: Es liegt in derselben Datenbank

Die meisten Aktivitätsprotokolle speichern ihre Einträge in der Datenbank der Website. Wer in die Datenbank gelangt, etwa über eine Lücke in einem veralteten Plugin oder mit dem Passwort aus einer auf dem Server vergessenen Sicherungsdatei, kann die Einträge über sich selbst löschen. Ein gewöhnliches Protokoll kann nicht bemerken, dass etwas fehlt. Es zeigt einfach einen kürzeren Verlauf.

Dagegen gibt es zwei Wege:

  1. Eine Kopie außerhalb des Servers. Die Einträge gehen in dem Moment, in dem sie entstehen, an einen externen Dienst oder einen anderen Server. Das muss eingerichtet werden und ist oft ein kostenpflichtiger Dienst.
  2. Änderungen sichtbar machen. Das ist mit „manipulationserkennend“ (englisch tamper-evident) gemeint. Jeder Eintrag bekommt eine Signatur, die aus seinem Inhalt und der Signatur des vorherigen Eintrags berechnet wird, mit einem geheimen Schlüssel, der nicht in der Datenbank liegt. Wird ein Eintrag bearbeitet oder einer aus der Mitte gelöscht, stimmt ab dieser Stelle keine Signatur mehr, und eine Prüfung zeigt auf den Eintrag, der nicht mehr passt.

Der zweite Ansatz hält niemanden davon ab, Einträge zu löschen. Er liefert Ihnen aber den Nachweis, dass es passiert ist. Auch er hat eine Grenze: Wer sowohl die Datenbank als auch die Datei mit dem Schlüssel hat, kann die Signaturen von Grund auf neu berechnen. Deshalb bleiben bei einem ernsten Vorfall die Protokolle Ihres Hosters wichtig.

So beurteilen Sie ein Plugin für das Aktivitätsprotokoll

  1. Wo es die Einträge speichert. Eine eigene Tabelle kommt mit vielen Einträgen zurecht. Ein Protokoll, das als einzelne Einstellung mit einer Obergrenze von einigen Hundert Einträgen gespeichert wird, verliert ältere Ereignisse schnell.
  2. Wie lange es sie aufbewahrt und ob Sie das ändern können. Der Zeitraum sollte die Zeit abdecken, die Sie realistisch brauchen, um ein Problem zu bemerken. Alles darüber hinaus sind Daten, die Sie ohne Grund vorhalten.
  3. Ob Sie es exportieren können. Eine CSV-Datei öffnet sich in einer Tabellenkalkulation und kann einer Anfrage an Ihren Entwickler oder Hoster beigelegt werden.
  4. Ob Sperren andere Ereignisse verdrängen. Bots können täglich Tausende fehlgeschlagene Anmeldungen erzeugen. Ist jede davon ein eigener Eintrag im selben Bestand, werden die wichtigen Ereignisse hinausgedrängt.
  5. Was es über fehlgeschlagene Anmeldungen speichert. Manche tippen ihr Passwort in das Feld für den Benutzernamen. Ein Protokoll, das jeden eingegebenen Namen speichert, kann so Teile von Passwörtern enthalten. IP-Adressen und Kontonamen können als personenbezogene Daten gelten, ein Protokoll sollte also nur speichern, was es braucht, und es nach einer festen Frist löschen. Mehr zu dieser Seite finden Sie im Beitrag über DSGVO und Website-Sicherheit.
  6. Ob es Änderungen an seinen eigenen Einträgen erkennt. Die Beschreibung des Plugins sollte das ausdrücklich sagen.

Wann Sie das Protokoll öffnen

  • es taucht ein Administrator auf, an dessen Anlage sich niemand erinnert,
  • die Startseite sieht anders aus oder schickt Besucher woandershin,
  • eine E-Mail meldet, dass ein Administratorkonto gesperrt wurde,
  • Sie haben die Zusammenarbeit mit einer Agentur beendet oder jemand ist ausgeschieden, und Sie wollen sehen, was zuletzt getan wurde.

Exportieren Sie das Protokoll, suchen Sie das erste ungewöhnliche Ereignis und notieren Sie seine Uhrzeit. Mit dieser Uhrzeit lassen sich die Protokolle Ihres Hosters viel leichter durchsuchen. Ändern Sie die Passwörter für Administrator und Datenbank an einem Computer, dem Sie vertrauen. Anzeichen für eine gehackte Website beschreibt die erste Stunde nach einem Einbruch.

Wie Ensomedia Security es macht

Ensomedia Security ist ein kostenloses Plugin im Verzeichnis von WordPress.org, das ich für ShieldWave entwickelt habe. Sein Protokoll heißt Verlauf und funktioniert ohne Konto. Die Fakten aus seiner Beschreibung und seinem Code:

  • es zeichnet Scans, gefundene und behobene Probleme, neue Administratoren, Updates, Änderungen an Einstellungen und Sperren auf,
  • die Einträge liegen in einer eigenen Datenbanktabelle,
  • jeder Eintrag trägt eine HMAC-SHA256-Signatur, deren Schlüssel der Auth-Salt der Website aus wp-config.php ist, der nicht in der Datenbank liegt, und die Signatur schließt die Signatur des vorherigen Eintrags ein,
  • Verlaufsintegrität prüfen zeigt Ihnen, ob ein Eintrag außerhalb von ShieldWave bearbeitet oder gelöscht wurde, und auch das Abschneiden der neuesten Einträge wird bemerkt,
  • wer in die Datenbank schreiben, aber wp-config.php nicht lesen kann, kann keinen Eintrag ändern oder löschen, ohne dass die Prüfung es zeigt,
  • Sperreinträge werden zusammengefasst und aus der Signaturkette herausgehalten: ihre Bearbeitung wird bemerkt, ihre Löschung nicht,
  • ersetzen Sie die Sicherheitsschlüssel in wp-config.php, meldet die Prüfung, dass ältere Einträge nicht mehr überprüft werden können. Das ist nach einem Schlüsselwechsel zu erwarten, etwa nach einem Einbruch,
  • die Einträge werden 7 bis 730 Tage aufbewahrt (standardmäßig 90) und lassen sich als CSV exportieren,
  • bei einer fehlgeschlagenen Anmeldung wird der eingegebene Benutzername nur gespeichert, wenn dieses Konto existiert. Andernfalls wird nur sein mit Schlüssel berechneter Hash gespeichert.

Es ist keine vollständige Web Application Firewall und entfernt keine Schadsoftware aus Dateien. Die Änderung, die es erklärt, nehmen Sie, Ihr Entwickler oder Ihr Hoster vor. Die Seite des Plugins nennt seine weiteren Funktionen, und der Leitfaden Bildschirm für Bildschirm zeigt, wie Sie den Verlauf im Alltag lesen.

Was Sie heute tun

  1. Finden Sie heraus, ob Ihre Website überhaupt ein Aktivitätsprotokoll hat, und seit wann.
  2. Fragen Sie Ihren Hoster, wie lange er die Serverprotokolle aufbewahrt.
  3. Entscheiden Sie, wie lange Sie Einträge aufbewahren wollen, und stellen Sie das im Protokoll ein.
  4. Gehen Sie einmal im Monat die Liste der Administratoren durch und vergleichen Sie sie mit dem Protokoll.

Prüfen Sie Ihre Website von außen. Geben Sie Ihre Adresse auf shieldwave.io ein. Das dauert etwa 90 Sekunden und braucht weder Passwort noch Plugin.