Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1e6fb0be5b | ||
|
|
bc27582a0d | ||
|
|
fbfc194d2e | ||
|
|
e3194d4b2f | ||
|
|
1d5f6df674 |
@@ -0,0 +1,18 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2026 JensFalk
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
|
||||
associated documentation files (the "Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the
|
||||
following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all copies or substantial
|
||||
portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
|
||||
LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
|
||||
EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
||||
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
@@ -1,27 +1,5 @@
|
||||
# JTL-Shop ALTCHA Spamschutz
|
||||
# falk_plus ALTCHA Spam- und Botschutz
|
||||
|
||||
Selbst gehostetes, quelloffenes Spamschutz-Plugin (ALTCHA Proof-of-Work, MIT-Lizenz) fuer JTL-Shop 5 -- schuetzt Registrierung und Newsletter-Anmeldung, ohne Daten an Dritte weiterzugeben. Bewusst ohne Google reCAPTCHA oder aehnliche externe Dienste und ohne Umleitung des Datenverkehrs ueber Cloudflare oder vergleichbare Drittanbieter -- die Pruefung laeuft vollstaendig auf dem eigenen Server.
|
||||
weiteres siehe im [Guide](https://guide.falk.plus/doku.php?id=jtl-shop:altcha-spamschutz:start)
|
||||
|
||||
## Enthaelt
|
||||
|
||||
- `fp_altcha_spamschutz/` -- komplettes, installierbares JTL-Shop-5-Plugin (Plugin-ID `fp_altcha_spamschutz`)
|
||||
- `Bootstrap.php` -- Hook-Registrierung (EventDispatcher)
|
||||
- `info.xml` -- Plugin-Manifest / Einstellungen
|
||||
- `src/Service/AltchaService.php` -- Challenge-Erzeugung & Verifikation (ALTCHA V1)
|
||||
- `src/Handler/TemplateHandler.php` -- Widget-Einbindung ins Formular-HTML
|
||||
- `src/Handler/ValidationHandler.php` -- Pruefung bei Registrierung & Newsletter-Anmeldung
|
||||
- `assets/fp-altcha.js` -- client-seitiger Proof-of-Work-Loeser
|
||||
|
||||
Die per Chat gelieferte, installierbare Plugin-ZIP enthaelt zusaetzlich die unveraendert vendorierte ALTCHA-PHP-Bibliothek ([altcha-org/altcha-lib-php](https://github.com/altcha-org/altcha-lib-php), MIT-Lizenz) unter `src/Vendor/AltchaOrg/Altcha/V1/`. Um Drittanbieter-Code hier nicht zu duplizieren, ist sie in diesem Repo nicht enthalten.
|
||||
|
||||
## Hintergrund
|
||||
|
||||
Anlass war ein Bot-Problem bei einem Kunden: Ueber Wochen liefen massenhaft Fake-Registrierungen und Newsletter-Anmeldungen mit immer demselben Muster auf ("Test"/"Test User" in Vorname/Nachname/Ort/Strasse, aber echte, unterschiedliche Fremd-E-Mail-Adressen). Rate-Limiting und andere getestete Plugins konnten das Problem nicht zuverlaessig loesen, da deren Pruefungen an anderer Stelle ansetzen (z. B. an Kommentar-/Nachrichtenfeldern, die weder das Registrierungs- noch das Newsletter-Formular besitzen). Dieses Plugin prueft stattdessen direkt beim Absenden von Registrierung und Newsletter-Anmeldung selbst -- unabhaengig davon, welche Felder das Formular sonst enthaelt -- und kann bestehende Loesungen vollstaendig ersetzen.
|
||||
|
||||
## Dokumentation
|
||||
|
||||
Ausfuehrliche Installations-, Test- und Hintergrundinfos im Guide: [jtl-shop:altcha-spamschutz:start](https://guide.falk.plus/doku.php?id=jtl-shop:altcha-spamschutz:start)
|
||||
|
||||
## Feedback
|
||||
|
||||
Fragen, Bugs oder Verbesserungsvorschlaege bitte als [Issue in diesem Repo](https://vw.falk.plus/JensFalk/JTL-Shop-ALTCHA-Spamschutz/issues) melden.
|
||||
Fragen, Bugs oder Verbesserungsvorschläge bitte als [Issue in diesem Repo](https://vw.falk.plus/JensFalk/JTL-Shop-ALTCHA-Spamschutz/issues) melden.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<jtlshopplugin>
|
||||
<Name>falk.plus ALTCHA Spam- und Botschutz</Name>
|
||||
<Name>falk_plus ALTCHA Spam- und Botschutz</Name>
|
||||
<Description>Selbst gehosteter, quelloffener Spam- und Botschutz auf Basis des ALTCHA Proof-of-Work-Verfahrens (MIT-Lizenz). Schützt Registrierung, Newsletter-Anmeldung und Kontaktformular vor Spam-Bots und automatisierten Fake-Anmeldungen, ohne Datenweitergabe an Dritte -- bewusst ohne Google reCAPTCHA und ohne Umleitung über Cloudflare oder ähnliche Dienste. Für beliebige JTL-Shop-5-Installationen geeignet.</Description>
|
||||
<Author>falk.plus</Author>
|
||||
<URL>https://falk.plus</URL>
|
||||
@@ -8,7 +8,7 @@
|
||||
<XMLVersion>101</XMLVersion>
|
||||
<MinShopVersion>5.2.0</MinShopVersion>
|
||||
<CreateDate>2026-09-21</CreateDate>
|
||||
<Version>1.2.0</Version>
|
||||
<Version>1.2.1</Version>
|
||||
<Install>
|
||||
<FlushTags>CACHING_GROUP_TEMPLATE</FlushTags>
|
||||
<!-- Hooks werden nicht über XML, sondern modern per EventDispatcher in Bootstrap.php registriert. -->
|
||||
|
||||
Reference in New Issue
Block a user