WP Cerber Security 9.8.3
English version: WP Cerber Security 9.8.3
Auf einen Blick
Wir haben die Verarbeitung externer und benutzerseitiger Daten durch den Plugin-Scanner, Sicherheits-E-Mails und Protokollexporte optimiert. Zudem haben wir die Exporte großer Aktivitätsprotokolle überarbeitet, um ein vorhersehbareres Verhalten unter Speicherdruck zu gewährleisten, und mehrere Probleme behoben, die die Genauigkeit der Fehleranalyse und Berichterstellung beeinträchtigten.
Nach dem Update sind keine Konfigurationsänderungen erforderlich, aber diese Version sollte umgehend installiert werden, wenn Sie auf Aktivitätswarnungen, PIN-E-Mails für die Zwei-Faktor-Authentifizierung oder große Exporte von Sicherheitsprotokollen angewiesen sind.
Wichtigste Highlights
- Sicherheitsverbesserungen für Plugin-Scanner-Meldungen und ausgehende Sicherheits-E-Mails.
- Eine neue Datumsbereichsübersicht in den Aktivitätsprotokollexporten erleichtert die forensische Analyse.
- Besser vorhersagbare, speicherschonendere Protokollexporte für große Aktivitäts- und Verkehrsprotokolle.
- Verbessertes Verhalten beim Exportieren hinter Nginx.
- Fehlerbehebungen für Benachrichtigungs-E-Mails, Traffic Inspector-Filterung, Speicherverwaltung beim Protokollexport und Administratorbenachrichtigungen.
Sicherheitshärtung
Benachrichtigungen über Besitzerwechsel von Scannern werden nun im richtigen Kontext ausgegeben.
WP Cerber liest die Metadaten zum Plugin-Besitz aus dem WordPress.org-Plugin-Repository und zeigt sie an, wenn sich der Besitzer eines installierten Plugins ändert. Diese Datenquelle ist normalerweise vertrauenswürdig, und die Wahrscheinlichkeit schädlicher Metadaten ist gering. Dennoch sollten externe Metadaten nicht als unformatiertes HTML in die WordPress-Administrationsoberfläche eingefügt werden.
Diese Version leitet die Nachricht über den Inhaberwechsel und die zugehörigen Profillinks über die Benutzeroberfläche von WP Cerber. Profil-URLs und Anzeigenamen werden nun in ihren jeweiligen Ausgabekontexten maskiert, bevor sie gerendert werden. Dadurch wird eine potenzielle XSS-Schwachstelle in den Scan-Ergebnissen behoben, ohne den Wortlaut der Administratornachricht zu ändern.
Vom Benutzer festgelegte Anzeigenamen können keine zusätzlichen E-Mail-Empfänger mehr hinzufügen.
Für die Erstellung der E-Mail-Empfängerzeichenfolgen für wp_mail() wurden Rohdaten aus Profilfeldern wie Vorname, Nachname und Anzeigename verwendet. Da kommagetrennte Empfängerzeichenfolgen als mehrere Adressen interpretiert werden können, könnte ein manipulierter Profilname dazu führen, dass ein unbeabsichtigter Empfänger zu den PIN-E-Mails für die Zwei-Faktor-Authentifizierung oder zu Aktivitätsbenachrichtigungen hinzugefügt wird.
Wir haben einen speziellen Bereinigungsmechanismus für E-Mail-Anzeigenamen hinzugefügt und diesen an beiden Sendepunkten angewendet. Der Bereinigungsmechanismus entfernt Zeichen, die für diesen Empfänger-Einschleusungspfad relevant sind, darunter Kommas, Anführungszeichen, Backslashes, spitze Klammern und Steuerzeichen. WP Cerber verhindert nun, dass manipulierte Profil-Anzeigenamen unbeabsichtigten Empfängern zu diesen Sicherheits-E-Mails hinzugefügt werden.
Für den Export sensibler Protokolldateien werden Clients nun angewiesen, heruntergeladene Dateien nicht zu speichern.
Exporte von Aktivitäts- und Verkehrsprotokollen senden nun einen Cache-Control: no-store -Antwortheader. Dieser weist Browser und kompatible Zwischenspeicher an, keine Kopie eines heruntergeladenen Sicherheitsprotokolls zu speichern.
Das ist wichtig, da Log-Exporte forensische Daten enthalten können: IP-Adressen, Metadaten von Anfragen, Aktivitätsprotokolle und andere Details, die Administratoren bei der Untersuchung von Vorfällen verwenden können. Der neue Header verringert die Wahrscheinlichkeit, dass diese Daten außerhalb der direkten Kontrolle des WordPress-Administrators in Caches verbleiben.
Verbesserungen beim Protokollexport
Exporte von Aktivitätsprotokollen geben nun den abgedeckten Zeitraum an.
Der Exportkopf des Aktivitätsprotokolls im CSV-Format enthielt bisher nur die aktiven Filter. Nun enthält er zwei zusätzliche Zeilen mit den Zeitstempeln des ältesten und des neuesten Datensatzes im exportierten Set.
Wenn Sie einen Export an einen Kollegen weitergeben oder ihn einem Vorfallbericht anhängen, wird der abgedeckte Zeitraum nun direkt in der Datei angegeben. Dies reduziert die Fehleranfälligkeit bei forensischen Untersuchungen und der Priorisierung, insbesondere wenn mehrere Exporte für dieselbe Website oder Untersuchung vorliegen. Falls keine Zeilen den ausgewählten Filtern entsprechen, wird der Datumsbereich ausgelassen.
Große Log-Exporte werden jetzt in einem einzigen Durchlauf gestreamt.
Der Export des Aktivitätsprotokolls führte bisher für jeden Datenblock dieselbe Abfrage mit einem wachsenden Offset einmal aus. Bei großen Datensätzen kann dieses Vorgehen zu einem Deep-Offset-Scan führen, wodurch Exporte mit zunehmender Protokollgröße langsamer und fehleranfälliger werden.
Der Export liest nun übereinstimmende Zeilen in einem einzigen, ungepufferten Durchlauf. Dadurch bleibt die Speichernutzung stabil und die Datenbankverbindung wird sauber freigegeben, unabhängig davon, ob der Download regulär abgeschlossen wird oder vorzeitig abbricht. Falls Sie jemals beobachtet haben, dass ein großer Export langsam wird oder gar stoppt, liegt hier die Ursache für dieses Verhalten – in überarbeiteter Form.
Schnellere Time-to-First-Byte-Rate hinter Nginx
Exporte senden nun den Header X-Accel-Buffering: no . Wenn Nginx vor PHP-FPM liegt, würde es andernfalls die gesamte Antwort puffern, bevor es sie an den Browser weiterleitet. Dieser Header weist Nginx an, die Datenblöcke direkt nach ihrer Erzeugung weiterzuleiten.
Der Header ist Nginx-spezifisch. Apache und andere Proxys ignorieren ihn problemlos, daher verbessert die Änderung das Verhalten dort, wo sie relevant ist, ohne zusätzlichen Konfigurationsaufwand an anderer Stelle zu verursachen.
Zuverlässigkeitsverbesserungen
Konsistentere Handhabung des Datenbankschemas
Die Tabellendefinitionen für die Protokolltabellen stammen nun aus zentralen Deklarationen anstatt aus Inline- CREATE TABLE SQL-Anweisungen. Dadurch bleiben Neuinstallationen und Upgrades einheitlich, und WP Cerber erhält eine konsistentere Grundlage für die Erkennung von Schemaabweichungen in bestehenden Installationen.
In der Praxis bedeutet dies, dass WP Cerber Abweichungen von der erwarteten Struktur einer Protokolltabelle eher erkennt und behebt. Diese Funktion ist zwar nicht in der Benutzeroberfläche sichtbar, erhöht aber die Zuverlässigkeit des Protokollsystems, auf das Administratoren bei der Überprüfung, dem Export und der Analyse von Vorfällen angewiesen sind.
Sicherere Dekodierung gespeicherter Anfragedaten
Die gespeicherten Anfragefelddaten können je nach Installation und älterem Protokoll variieren. Einige Datensätze können Nullwerte, leere Werte, ungültiges JSON oder nicht unterstützte serialisierte Nutzdaten enthalten.
WP Cerber behandelt diese Fälle nun einheitlich, indem sie als leere Arrays interpretiert werden, anstatt Warnungen oder inkonsistente Ergebnisse zu erzeugen. Dies ist insbesondere für Websites von Vorteil, die Protokolldaten aus mehreren älteren Versionen übernommen haben, da die gespeicherten Anfragedaten möglicherweise nicht immer dem Format aktueller Versionen entsprechen.
Fehlerbehebungen und Verbesserungen
Protokoll des Verkehrsinspektors: Der Filter „Softwarefehler“ wird nun korrekt mit anderen Filtern kombiniert.
Im Formular „Erweiterte Suche“ konnte die Checkbox „Beliebige Softwarefehler“ fehlerhaft mit anderen Filtern kombiniert werden. Anfragen mit protokollierten PHP-Fehlern konnten daher auch dann angezeigt werden, wenn sie nicht den anderen Suchbedingungen entsprachen.
Die Filtergruppen werden nun mit der korrekten Priorität ausgewertet. Die Suchergebnisse im Traffic Inspector Log berücksichtigen jede von Ihnen festgelegte Bedingung, was die Priorisierung beim Eingrenzen von umfangreichem Datenverkehr deutlich vereinfacht.
Die Speicherbegrenzung für den Protokollexport wird nun korrekt interpretiert.
In manchen Umgebungen kann ein numerischer Speichergrenzwert wie 512 als Byte anstatt als Megabyte angewendet werden. Dadurch kann es vorkommen, dass WP Cerber den verfügbaren Speicher für ressourcenintensive Operationen nicht ausreichend erhöht und große Exportvorgänge früher als erwartet abgebrochen werden.
Der Wert wird nun korrekt interpretiert, wodurch das Exportverhalten bei Konfigurationen mit numerischen Speichergrenzen zuverlässiger wird.
Aktivitätsbenachrichtigungs-E-Mails verlinken nun zur richtigen Dashboard-Ansicht
Aktivitätsbenachrichtigungs-E-Mails enthalten Links zum WP Cerber-Dashboard, damit Administratoren die Ereignisse hinter einer Benachrichtigung überprüfen können. Diese Links basieren auf einer Wertepaarung, die Parameter verschieben und so dazu führen kann, dass ein Link den falschen Filterwert enthält.
Ein IP-Filter könnte beispielsweise eine IP-Bereichsgrenze anstelle des erwarteten Werts erhalten. Jeder Abfrageparameter wird nun seinem korrekten Wert zugeordnet, sodass Warnmeldungslinks zuverlässiger zu den beschriebenen Ereignissen führen.
Die Suchzeichenfolgenübereinstimmung in Benachrichtigungen identifiziert nun den richtigen Benutzer.
Die Benutzererkennung in der Alarmverteilung basierte bisher auf einem Aufruf, der selbst bei nicht existierender Benutzer-ID ein Benutzerobjekt zurückgeben konnte. WP Cerber sucht nun den mit dem aufgezeichneten Ereignis verknüpften Benutzer und verhindert so, dass ein Benutzer fehlt.
Dadurch wird sichergestellt, dass suchbasierte Alarmregeln mit dem gewünschten Konto übereinstimmen und ein irreführendes Alarmverhalten vermieden wird, wenn Ereignisdaten auf einen Benutzer verweisen, der nicht mehr existiert oder nicht aufgelöst werden kann.
Eine PHP-Meldung wurde aus der Aktivitätsänderungsprüfung entfernt.
Ein Problem mit der Operatorpriorität bei der Prüfung „Geändert seit“ führte dazu, dass der vorgesehene Ausweichpfad nicht verwendet wurde. Fehlte ein Änderungszeitstempel, konnte die Prüfung eine Fehlermeldung wegen eines undefinierten Schlüssels ausgeben.
Der Ausdruck ist nun korrekt in Klammern gesetzt. Ein fehlender Zeitstempel wird als „geändert“ interpretiert, und die PHP-Meldung erscheint nicht mehr in Ihren Protokollen.
Unter der Motorhaube
Für Administratoren und Entwickler, die unsere internen Abläufe kennen, setzt diese Version die Migration der Aktivitäts- und Traffic-Logdatenpfade hin zu einer expliziten, strukturierten Fehlerbehandlung fort. Fehler wie eine nicht verfügbare Datenbank oder ein fehlgeschlagener Exportvorgang werden nun vor Beginn der Ausgabe angezeigt, anstatt dem Administrator eine unübersichtliche, leere Datei zu hinterlassen.
Die Schemaverwaltung wird ebenfalls durch zentralisierte Tabellendeklarationen konsolidiert. Dies unterstützt die oben beschriebene Erkennung von Schemaabweichungen und sorgt dafür, dass das Protokollsubsystem mit zunehmender Größe deterministischer bleibt.
Das sind keine spektakulären Änderungen, aber sie sind wichtig. Sicherheitstools müssen sich unter Belastung vorhersehbar verhalten: wenn eine Website stark frequentiert ist, wenn ein Export umfangreich ist, wenn ältere Daten fehlerhaft sind oder wenn ein Administrator versucht, den Hergang eines Vorfalls zu rekonstruieren.
Zusammenfassung
WP Cerber 9.8.3 optimiert die Wege, über die externe Daten Ihre WordPress-Admin-Oberflächen und Sicherheits-E-Mails erreichen, macht große Log-Exporte zuverlässiger und behebt mehrere Probleme, die die Genauigkeit von Filtern, Warnlinks und PHP-Diagnosen beeinträchtigen könnten.