Page 1 of 1

Spamblock via .htaccess - Skriptfehler bei IPv6 Adressen

Posted: Wed May 09, 2012 7:59 pm
by keltoi
Hallo S9y-Gemeinde,

hat jemand von Euch eine Idee, was ich tun kann, damit entweder die neuen IP-Adressen nicht in die SQL übernommen werden oder aber nicht in die .htaccess geschrieben werden. Alternativ würde mir auch eine Lösung gefallen, wie die Adressen in der .htaccess nicht mehr zu Skriptfehlern führen...
Momentan bin ich einigermaßen verzweifelt, weil mein Blog entweder alle zwei-drei Tage nicht erreichbar ist oder ich bis zu 3 Seiten Spamkommentare täglich löschen muss.

Captchas auf stärkster Stufe bringen null komma garnichts, TypePad Antispam scheint auch nicht wirklich zu greifen. Ergebnis: Ich bin genervt!

Für ein paar Tipps wäre ich Euch ausgesprochen dankbar!

Liebe Grüße
Kelt

Re: Spamblock via .htaccess - Skriptfehler bei IPv6 Adressen

Posted: Wed May 09, 2012 8:08 pm
by Timbalu
Ohne das ich da wirklich helfen kann....

Willst du damit sagen, dass SPAMMER mit IPv6 Adressen kommen? (sehr ungewöhnlich!)

Allgemein gilt, dass deny access via IP in htaccess nicht wirklich gut funktioniert und nicht empfohlen wird.

Am ehesten wird dir wahrscheinlich das Spamblock Bayes Plugin empfohlen werden, um der Eindringlinge Herr zu werden.

Re: Spamblock via .htaccess - Skriptfehler bei IPv6 Adressen

Posted: Thu May 24, 2012 4:41 pm
by theborg
Hi, ja das Problem habe ich hier auch ka wie die das machen voralledem übergehen sie das Capscha, an sich recht gut gemacht der Spam hat keine werbung sondern per Generator erzeugte Komentare die nen anehrend passenden inhalt haben hab bei den ersten Pahr echt gedacht das sind echte Kommentare,die angegebene URL linkt auf Fachebook User Proviele.

Die Geblockten IPv4 Adressen sind Privatrechner tippe auf nen Botnetz, was allerdinks komisch ist die IPv6 ist immer die gleiche, auch die FB Provile sind ziemlich normal, bei den Emailadressen die angegeben werden ist immer ein Lehres Wordpressblock auf der Domain.

was ich bis jetzt rausgefunden habe:

- IPv6 vom Blocker werden nur die dazugehörigen IPv4 Adressen geblockt.
- Irgendwie wird das Capcha umgangen
- sie Kommen über die RSS Feets, Url bei mir sieht komisch verstückelt aus mehrere Links in einen beginnend mit &20

Re: Spamblock via .htaccess - Skriptfehler bei IPv6 Adressen

Posted: Thu May 24, 2012 7:34 pm
by Timbalu

Re: Spamblock via .htaccess - Skriptfehler bei IPv6 Adressen

Posted: Sat Oct 06, 2012 1:54 pm
by milan
Der Thread ist zwar schon etwas aelter, ich will ihn aber doch wiederbeleben, da sein Titel genau das Thema trifft. Wenn auch die Beitraege dann getreu Timbalus Motto "Ohne das ich da wirklich helfen kann...." eher abwegig sind.

Das Problem ist:

serendipity_event_spamblock.php patzt bei der Behandlung von IPv6-Adressen. IPv4 hat 4 Teile, IPv6 hat 8. Darauf ist das plugin nicht eingerichtet.
Wenn man in der config des Plugin "SPAM IP Adressen via HTaccess blocken? " 'Ja' ankreuzt und eine IPv6-IP als Spam erkannt worden ist, dann schreibt das Plugin in die .htaccess etwas aehnliches wie:

#SPAMDENY
Deny From 205.189.73.46 205.189.73.64 208.89.211.173 217.157.179.122 24.62.10.133
2607:5300:10:60 31.135.196.229 37.10.106.185 37.10.112.228 37.10.116.107 37.10.116.35
#/SPAMDENY

Problematisch ist der Eintrag '2607:5300:10:60' Das ist keine gültige IP sondern nur die vordere Hälfte ein IPv6. Und so bekommt man nun bei jedem versuch, das Blog zu laden, eine wunderschoene 500er-Fehlermeldung mit dem Hinweis auf 'invalid IP'

Das Hackstück aus der .htaccess zu löschen hilft auch nicht, denn mit dem naechsten Spammer wird der ganze deny from... - Block neu aus der Datenbank gelesen und eingeschrieben, incl. des fehlerhaften Eintrags. Die zustaendige Tabelle heisst serendipity_spamblock_htaccess und ist wohl auch gleich die Schuldige an dem Bug.

Diese Tabelle hat zwei Felder, timestamp vom Typ varchar(19) unsigned und ip vom Typ varchar(15). Eine breite von 15 ist fuer legacy IPs grad recht, fuer IPv6 ist das ein Fehler. Benötigt wird eine Feldbreite von varchar(39). (IPv4: 4 x 3 + 3=15 IPv6: 8 x 4 + 7 = 39)

Massnahmen:
- Breite des Feldes ip auf 39 hochsetzen
- alle (in meinem Fall nur 1) defekte IPv6 loeschen
* shell oeffnen,
* mysql -u (username) -p (und passwort)
* use (datenbankName)
* delete from `serendipity_spamblock_htaccess` where (`ip` like "%:%");

Re: Spamblock via .htaccess - Skriptfehler bei IPv6 Adressen

Posted: Sat Oct 06, 2012 3:30 pm
by Timbalu
milan wrote:Wenn auch die Beitraege dann getreu Timbalus Motto "Ohne das ich da wirklich helfen kann...." eher abwegig sind.
Pardon?!? Mir das als "Motto" zu unterstellen, trifft es nicht... ;-)
Es sollte nur andeuten, dass ich mich zurzeit nur ungern in dieses Plugin vorwage... und deshalb als Hilfe nur anbieten konnte, diese option gar nicht zu nutzen, wo wir doch mit mit der spam-Biene und dem spam-Bayes sehr schöne Ergebnisse erzielen.
Und, selbst Garvin sagt, dass er die spamblock htaccess deny option nicht wirklich empfiehlt.
Allerdings verstehe ich durch deine genaue Analyse jetzt die Frage auch viel besser und denke, dass sich dafür bestimmt eine Lösung finden kann. Ist denn die Felderweiterung schon des Rätsels Lösung?

Re: Spamblock via .htaccess - Skriptfehler bei IPv6 Adressen

Posted: Mon Oct 08, 2012 9:46 am
by garvinhicking
Hi!

Im s9y 1.7 master ist für die "ip" spalte ein "64"er Limit eingetragen. Ich schätze jedoch dass es hierfür kein inkrementelles DB-Update gab (das ist für SQLite immer was frickelig) und daher nur für Neuinstallationen gilt. Das ist natürlich doof. Ich werde mal schauen dass ich nachträglich ein DB-Update dafür einrichten kann.

Ansonsten hat Timbalu recht, das htaccess deny from ding klappt nicht wirklich gut, immer höre ich von Problemen dass die Einträge z.b. zu lang sind, oder viele einträge in der htaccess den Apache merkbar verlangsamen...

Grüße,
Garvin