Skip to content

Sicherheitsmechanismen

FG DocCheck WP verwendet mehrere WordPress- und PHP-Mechanismen zur Absicherung von Einstellungen, Editor-Daten, Login-Formularen und Weiterleitungen. Diese Übersicht beschreibt nur die im aktuellen Code tatsächlich vorhandenen Maßnahmen und ist keine allgemeine Sicherheitszertifizierung.

Die Plugin-Hauptdatei beendet die Ausführung, wenn ABSPATH nicht definiert ist:

if (!defined('ABSPATH')) {
exit;
}

Damit ist die Datei nicht für einen direkten Aufruf außerhalb des WordPress-Bootstraps vorgesehen.

Die Admin-Seite wird mit der Capability manage_options registriert. Zusätzlich prüft der Render-Callback diese Capability erneut.

Die Settings API verwendet sanitize_options() als Sanitizing-Callback. Darin werden unter anderem:

  • Textwerte mit sanitize_text_field() bereinigt,
  • URLs mit esc_url_raw() bereinigt,
  • Sprache und Button-Größe gegen feste Wertelisten geprüft,
  • die Login-Dauer auf 1 bis 168 Stunden begrenzt.

Ausgaben in der Einstellungsseite werden mit WordPress-Escaping-Funktionen wie esc_attr() und esc_html() ausgegeben.

Beim Speichern der Schutz-Einstellungen prüft das Plugin:

  1. den Nonce fg_doccheck_wp_meta_nonce,
  2. einen laufenden Autosave,
  3. die Capability edit_post für den konkreten Beitrag.

Der Secure-Wert wird vor dem Speichern mit sanitize_text_field() bereinigt.

Das vom Shortcode erzeugte Gastformular enthält einen WordPress-Nonce. Die Anmeldung wird nur weiterverarbeitet, wenn dieser Nonce oder der vorhandene Rückwärtskompatibilitäts-Nonce gültig ist.

Das Gast-Passwort wird nicht im Klartext gespeichert. Es wird mit password_hash(..., PASSWORD_DEFAULT) gehasht und mit password_verify() geprüft.

Für Weiterleitungen verwendet das Plugin wp_safe_redirect(). Angeforderte Redirect-Ziele werden zusätzlich mit wp_validate_redirect() gegen ein internes Fallback geprüft.

Das Plugin erzeugt für den Login einen zufälligen State-Schlüssel und speichert das gewünschte Redirect-Ziel 15 Minuten als WordPress-Transient. Beim Lesen wird der Transient gelöscht.

Interne Prüfhinweise zur vollständigen State-Validierung stehen ausschließlich in REVIEW.md.

Token- und User-Data-Requests laufen über die WordPress HTTP API und verwenden ein Timeout von 20 Sekunden. HTTP-Status und Antwortstruktur werden geprüft, bevor das Ergebnis weiterverwendet wird.

Das Access Token wird im aktuellen Code nicht als WordPress-Option oder Post-Meta gespeichert. Es dient direkt dem Abruf der Benutzerdaten.

Keine öffentliche Sicherheitszertifizierung

Section titled “Keine öffentliche Sicherheitszertifizierung”

Aus dem Projekt ergibt sich keine formale Zertifizierung oder rechtliche Konformitätsaussage. Aussagen wie „vollständig sicher“ oder „DSGVO-konform“ sind aus dem Code nicht ableitbar und werden daher nicht getroffen.