Lukas2006 LogoLukas2006
Stabil22.08.2026

v0.50.0 · Adaptive Contact Abuse Escalation

Basis

Lukas2006 v0.50.0 – Adaptive Contact Abuse Escalation

Basis
- direkt auf v0.49.0 aufgebaut
- bestehender Anti-Spam-Schutz aus v0.48.0/v0.48.1 vollständig beibehalten
- bestehende OWASP-Auth-/Session-/Authorization-Härtungen aus Phase 1–4 bleiben erhalten

Adaptive Sperrstufen
Stufe 1:
- einzelne too_fast-Treffer werden blockiert und protokolliert

Stufe 2:
- ab 4 too_fast-Treffern in 15 Minuten
- 30 Minuten Sperre

Stufe 3:
- Requests während der aktiven 30-Minuten-Sperre zählen jetzt als eigene Abuse-Strikes
- sie müssen nicht erneut die too_fast-Prüfung durchlaufen
- nach 8 weiteren Requests während der Sperre:
30 Minuten -> 24 Stunden

Stufe 4:
- Requests während der aktiven 24-Stunden-Sperre zählen weiter
- nach erneut 8 weiteren Requests:
24 Stunden -> 7 Tage
- fortgesetztes Verhalten kurz nach Ablauf einer vorherigen Sperre wird ebenfalls berücksichtigt:
erneute Auffälligkeit nach 30 Minuten kann direkt auf 24 Stunden gehen
erneute Auffälligkeit nach 24 Stunden kann direkt auf 7 Tage gehen

Frühe Blockierung
Bei bereits aktiver Sperre wird nur noch verarbeitet:
- REMOTE_ADDR -> HMAC-IP-Kennung
- User-Agent -> HMAC-Kennung
- Roh-Abuse-Event
- Strike-/Eskalationslogik

Nicht mehr ausgeführt:
- E-Mail-Adresse hashen/verarbeiten
- Nachrichten-Fingerprint
- Formular-Timing
- Honeypot-Auswertung
- Duplicate Detection
- Spam-Score
- Vorgangserstellung
- Anhänge
- Projekt-Routing
- E-Mail-Versand

Wichtig:
Honeypot und Formular-Timing bleiben für nicht bereits gesperrte Quellen selbstverständlich vollständig aktiv.

Activity Log Drosselung
- nicht mehr jeder Request während einer aktiven Sperre erzeugt einen sichtbaren Activity-Eintrag
- Rohdaten bleiben vollständig in contact_abuse_events
- sichtbare Zusammenfassung nach:
- jeweils 10 weiteren geblockten Requests oder
- mindestens 3 neuen Requests und 15 Minuten seit der letzten Zusammenfassung
- Beispiel:
Kontakt-Bot weiterhin aktiv
10 weitere Requests während der 7-Tage-Sperre blockiert · Quelle 8f31…a92c

Eskalationen werden immer sichtbar protokolliert:
- Abuse-Sperre eskaliert
- 30 Minuten -> 24 Stunden · 8 weitere Requests während der Sperre
- 24 Stunden -> 7 Tage · 8 weitere Requests während der Sperre

Datenschutz
- weiterhin keine Klartext-IP-Adressen
- Sperren arbeiten ausschließlich mit der bestehenden HMAC-IP-Kennung
- Admin zeigt nur verkürzte Kennungen wie Quelle 8f31…a92c

Admin-Übersicht
Neuer Bereich innerhalb „Benutzer & Sicherheit“:
- aktive Kontaktformular-Sperren
- Status
- Sperrstufe
- Beginn
- gesperrt bis
- Abuse-Strikes
- während der Sperre blockierte Requests
- Requests in der aktuellen Eskalationsstufe
- letzter Versuch
- anonymisierte Quellenkennung

Manuelles Aufheben
- Admin kann eine Sperre gezielt aufheben
- CSRF-geschützt
- serverseitige system.manage-Authorization
- zusätzlich Step-up Authentication aus Phase 4 erforderlich
- Aufhebung wird im Activity Log protokolliert

Migration bestehender Installationen
contact_abuse_bans wird automatisch erweitert um:
- ban_level
- started_at
- stage_started_at
- blocked_requests
- stage_blocked_requests
- last_attempt_at
- activity_summary_count
- activity_summary_at
- zusätzlichen Level/Until-Index

Bestehende Sperren werden anhand ihres bisherigen reason-Werts sinnvoll auf Stufe 2/3/4 migriert.
Abuse-Events und abgelaufene Sperren werden weiterhin nach 30 Tagen opportunistisch bereinigt.

Kein CAPTCHA
- weiterhin kein CAPTCHA oder externer Bot-Dienst
- lokale Schutzschicht bleibt vollständig serverseitig
Teilen