ValidationHandler: Ablehnungen zusaetzlich im Angriffsprotokoll speichern

This commit is contained in:
2026-09-22 10:50:23 +02:00
parent 0c60f3d15e
commit b7dfe8f48b
@@ -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;
}