diff --git a/fp_altcha_spamschutz/src/Handler/ValidationHandler.php b/fp_altcha_spamschutz/src/Handler/ValidationHandler.php index 329b295..beddd2d 100644 --- a/fp_altcha_spamschutz/src/Handler/ValidationHandler.php +++ b/fp_altcha_spamschutz/src/Handler/ValidationHandler.php @@ -32,6 +32,10 @@ use Plugin\fp_altcha_spamschutz\src\Service\AltchaService; * matchesBlockedPattern() und isFlaggedByHoneypot()): beide fangen gezielt Bots ab, die zwar * JavaScript ausführen und die Rechenaufgabe lösen können, sich aber an einem bekannten * Namensmuster oder einer bereits einschlägig aufgefallenen IP-Adresse erkennen lassen. + * + * Jede Ablehnung wird zusätzlich (sofern in den Einstellungen aktiv) im Angriffsprotokoll + * festgehalten (siehe AltchaService::appendAttackLogEntry() und log.php im Plugin-Wurzelverzeichnis + * für die Ansicht) -- unabhängig vom nur für Tests gedachten Debug-Logging. */ class ValidationHandler { @@ -275,6 +279,17 @@ class ValidationHandler bool $blockedByPattern, bool $blockedByHoneypot ): void { + if ($this->altchaService->isAttackLogEnabled()) { + $this->altchaService->appendAttackLogEntry([ + 'zeit' => \date('c'), + 'formular' => $formular, + 'ip' => $_SERVER['REMOTE_ADDR'] ?? '', + 'sicherheitspruefung' => $blockedByAltcha ? 'fehlgeschlagen' : 'bestanden', + 'namensmuster' => $blockedByPattern, + 'honeypot' => $blockedByHoneypot, + ]); + } + if (!$this->altchaService->isDebug()) { return; }