[PHP] Ist dieser Kontakt-Spamschutz sicher?

Naja im Endeffekt wird es darauf hinauslaufen dem Anwender eine Frage zu stellen, die sich nicht beantworten lässt, wenn man die Frage nicht verstanden hat.

Rechnen und irgendwas abschreiben kann ein Bot schließlich nur, weil das Lösungsmuster der Aufgabe übertragbar und auf jede solche Aufgabe anwendbar ist.

Stellt man aber Wissensfragen, für die der Inhalt der Frage verstanden werden muss, um die korrekte Antwort zu nennen, müsste ein Bot deutsch/englisch können und obendrein über Wissen verfügen, um den Test zu bestehen.

Deswegen bin ich stark für eine Frage, deren Antwort nicht aus der aktuellen Seite oder einer Datenbank/Zuordnungstabelle ausgelesen werden kann.
 
Hm. KI :evillol:
Ich will ja nicht behaupten, dass jmd eine KI in einen Spambot einbaut, aber die Möglichkeit bestünde schon ;)

Aber ich glaube, dass die beste vorgeschlagene Möglichkeit die mit den Farben ist.. mit IP-Sperre.

PS : also was an einer IP-Sperre nicht einfach sein soll verstehe ich nicht...

mfg

/edit: hm vll nicht rübergekommen.. IP-Zeit-Sperre, also nur 1-mal alle 10min oder so..
 
Zuletzt bearbeitet: (added edit :P)
ich mag das "Captcha" nicht, gründe siehe mein post oben ...
(nein ich bin selber nicht farbenblind)

das mit dem per css verstecktem eingabefeld, find ich ne gute sache :)

wegen rechnung aus dem quelltext auslesen: wei sihts aus, wenn man die rechnung in ne tabelle generieren lässt, und jedes zeichen (auch leerzeichen) in eine zelle ? das sollte doch die bots auch nichtmehr auslesen können...
 
ich meinte das so:
Code:
<tr>
  <td>5</td> <td>-</td> <td>1</td><td> </td><td>=</td>
</tr>

ich glaub, dass die da den zusammenhang nicht mehr haben.
die rechnungen werden aus nem "pool" mit ner anzahl rechnungen ausgelesen, und mit nem ergebnis verbunden.
in das eingabefeld, können auch buschtaben eingegeben werden, damit spambots mehr falsche möglichkeiten zum eintragen bekommen.
(genauso wie die anzahl der möglichen zeichen die eingegeben werden können, könnte dann grösser sein)

ein mensch, wird nur das ergebnis eintragen
 
Zuletzt bearbeitet:
Also das mit dem versteckten Feld ist auch nicht sicherer. Schliesslich kennt auch ein halbwegs guter Bot solche Eventalitäten und sowieso HTML-Code und dessen Parameter. ;)

Da ist die Lösung von S.a.M. alles in Spalten zu packen schon etwas besser. Denn da müsste er schon komplexere Zusammenhänge in den unterschiedlichsten Seiten erkennen und analysieren können.

100% sicher ist allerdings auch das nicht. Man muss sich überlegen, was ein Mensch von einer Maschine unterscheidet und das ist abstraktes Denken.
Die andere Frage ist, wieviel Aufwand das alles wert ist.
 
Relict, wenn er auf die Eventualutät eines via CSS versteckten Input-Feldes vorbereitet ist, dann wird der Bot über diese Tabellen-Maßnahme nur lachen müssen... ersteres erfordert einen deutlich besseren HTML-Parser als letzteres...

Ein Spamschutz sollte meiner Meinung das berücksichtigen:
a) Besucher der Seite sollte nicht überfordert und damit vergrault werden
b) er sollte keiner großen Wartung bedürfen - ständiges Erweitern eines Fragenkatalogs weil der Bot die anderen Antworten schon alle gelernt hat (selbst bei Grammatikfragen wäre es nur eine Frage der Zeit) scheiden für mich aus...
c) IP-Sperren sind nicht präventiv, sondern eher eine Reaktion - deshalb halte ich nichts davon

@Backslash: Ich sagte nicht, dass ein IP-Filter nicht einfach sei, nur ist es nicht das einfachste... ich persönlich finde ein verstecktes Feld via CSS einfacher zu implementieren...
 
Relict, wenn er auf die Eventualutät eines via CSS versteckten Input-Feldes vorbereitet ist, dann wird der Bot über diese Tabellen-Maßnahme nur lachen müssen... ersteres erfordert einen deutlich besseren HTML-Parser als letzteres...

Wieso erfordert es einen deutlich besseren HTML-Parser? Bei der Spalten Variante müsste der Bot unterscheiden können, was wohin gehört und zusammenhängt. Schliesslich kann es an x-beliebigen Stellen im Quelltext stehen und noch dazu andere Textteile dazwischen enthalten. Tabellen sind nicht gerade was exotisches in HTML-Seiten.

Hidden-Attribute innerhalb von Tags und auch Verweise von CSS sind direkt einem Feld zuordenbar und als solches zu erkennen. Jeder Browser kann dies schliesslich auch.
Na ok lassen wir das. Ich denke keine dieser Varianten alleine kann als zuverlässig betrachtet werden. Am besten eine Kombination aus verschiedenen Möglichkeiten, am besten noch mit Zeitsperre. ;)
 
Zuletzt bearbeitet:
Persönlich setze ich dynamische Feldnamen, einen Capture-Code, 5 Minuten IP-Sperre und obendrein eine E-Mail Gültigkeitsprüfung ein. Bin bislang vom Spam verschont worden. ;)
Die von mir besagte CSS Variante könnte ich bei Gelegenheit auch noch mal implementieren - Sinn und Zweck darf dann aber zugegebenermaßen hinterfragt werden.
 
Solange ein Spambot auf eine Seite gezielt ausgerichtet ist, werden vorher alle Eventualitäten analysiert. Dann sieht's natürlich düster aus - dagegen hilft nur: häufiges Ändern der Algorithmen.



ABER, wie sieht's damit aus:

1. Felder mit Trivialnamen wie Email, Text, Name, etc. per CSS verstecken (der Bot würde diese ausfüllen)
2. die "richtigen" Felder mit kryptischen (vielleicht in einer Session gespeicherten?) Namen versehen
3. Das PHP Script prüft die Felder mit Trivialnamen auf Inhalte
 
1. Felder mit Trivialnamen wie Email, Text, Name, etc. per CSS verstecken (der Bot würde diese ausfüllen)
2. die "richtigen" Felder mit kryptischen (vielleicht in einer Session gespeicherten?) Namen versehen

Ich GLAUBE dass du damit Features von guten Browsern umgehst. Fierfox zB hat ja die eigenschaft für Felder, die email heißen deine email vorzuschlagen und für Felder mit dem namen "name" den Namen.
Es wäre doof wenn das dann auf der Seite nicht gehen würde...
 
Puh .... das Thema Captcha ist nicht so einfach ... ;)

Zuerst sollte man mal hier gegenprüfen, ob das Captcha Bild einigermassen sicher ist:
http://sam.zoy.org/pwntcha/

Ich persönlich habe in meiner Registrierung da eine doppel-Lösung:
http://www.wuschelkiste.de/fusion/

Und zwar ein Captcha (ich hoffe nicht zu leicht) und eine grafische Rechenaufgabe.
Die Betonung liegt auf grafisch und auch im Code selber vercryptet.

Was meint Ihr ??

Nun ... ausserdem suche ich aber noch, einen Source zu den Captchas die bei www.welt.de (Kommentare z.B.), IMDB.com oder Yahoo verwendet werden.
Ein Beispiel ist auch hier im Anhang .... dazu habe ich leider noch keine Source-Quellen gefunden.
 

Anhänge

  • captcha1.jpg
    captcha1.jpg
    1,1 KB · Aufrufe: 158
Meine Lösung die bisher keinen Spam mehr durchgelassen hat (und wer weiß, wieviele echte Nachrichten :D):

Ich hab einfach ein Eingabefeld, in dem der Besucher das x.-Zeichen seiner angegebenen E-Mailadresse eingeben muss. Da muss man sich nicht die Augen verbiegen um irgendwelche Zeichen zu entschlüsseln; lediglich bis 5 sollte man zählen können ;)
 
Nochmal .... leider wurde mein Ansinnen bisher nicht verstanden.
Barrieren sind für mich irrelevant und andere Möglichkeiten kenne ich selber, interessieren im Moment aber nicht.

Ich suche den Code, für oben abgebildetes Captcha, bzw. Code für die in welt.de oder yahoo verwendeten Captchas ...

danke :)
 
Folgende Möglichkeiten kenne ich und wende sie auch gelegentlich an:
  1. versteckte Input-Elemente (entweder via XHTML oder CSS)
  2. Textaufgaben
    • arithmetische Aufgaben (z.B. "1000 minus Zahl1 plus Zahl2?")
    • in Verbindung mit einem Bild (z.B. "Wo ist der Hund?")
  3. bestimmte IPs oder Domains mit HTTP sperren (Listen aus dem Internet)
  4. Captchas (Barriere, ergo nicht mein Favorit, jedoch generell oft genutzt)
 
Habe das Problem ganz einfach gelöst in dem ich eine Registration eingebaut habe.
Ist nicht das schönste für den User aber sehr effektiv und Barrierefrei.

Grüße

krizzel
 
Backslash schrieb:
Macht genau aus dem gleichen Grund keinen Sinn. Computer können rechnen ;)

Die Aufgabe aus dem Quellcode zu lesen ist keine große Sache.
Wenn du schreibst Fünf plus 2 checkt das kein Bot, jedenfalls hat es bei mir noch keiner geschafft.
 
Auch einfach ist die Aufgabe "Was ist der 2. Buchstabe im Namen *OTTO*"?

Kapiert kein einziger Spambot. ;)
 
Zurück
Oben