| |
|
|
Julian Schmidt | ¡Hola, wurde gestern, trotz kleiner Rechen-Captcha, encima mein Gästebuch[...] zugespamt. Posesiones gerade una kleine Bad-Word-Liste hinzugefügt. Was son así el häufigsten Wörter/Kriterien después de el uno effektiv Spams herausfiltern kann? Mi Liste sieht gerade así de.
$punkte += 1 * substr_count(strtolower($inhalt),'<');
$punkte += 1 * substr_count(strtolower($inhalt),'>');
$punkte += 1 * substr_count(strtolower($inhalt),'!');
$punkte += 2 * substr_count(strtolower($inhalt),'</');
$punkte += 2 * substr_count(strtolower($inhalt),'100%');
$punkte += 2 * substr_count(strtolower($inhalt),'viagra');
$punkte += 2 * substr_count(strtolower($inhalt),'porn');
$punkte += 2 * substr_count(strtolower($inhalt),'free');
$punkte += 2 * substr_count(strtolower($inhalt),'poker');
$punkte += 2 * substr_count(strtolower($inhalt),'https://');
$punkte += 3 * substr_count(strtolower($inhalt),'href');
Bitte no elend langen Wort-Listen puesto, pero sólo potenziale Spam-Begriffe, welche una normaler Nutzer wahrscheinlich eh nie uso sería. Über 5 Punkten zeige Yo actualmente Spamverdacht. ¿Cómo se puede uno se todavía antes Spams schützen?
Saludo.
Julian
[OFFTOPIC]@IF: Neues Encabezamiento-Design gefällt no. [/OFFTOPIC] |
|
|
| |
|
|
|
| Gibt sí viele solcher Listen, Su finde Yo ya bien y de corta y knapp.
Tiempo una kleiner 8-Punkte-Plan:
Mache todavía una 1) weiteres Entrada type texto en un span style display none nombre website - Besucher puede como nichts eintragen aber una Bot se hay meist algo hinterlegen.
Si usted el Rechenaufgabe 2) zeitversetzt sólo por JS erzeugst entonces hilft el auch sowie 3) en lugar de sólo 1 Bild de 3 pequeño Bildern bestehend.
Prüfe auch el 4) Referer y el 5) Navegador sowie el 6) Alter el Session en el Besuchern, el algo en el Eingabefeld tippen, selten bajo 15 Sekunden liegt.
Ausserdem una 7) onwmkeydown-Flag por JS conjunto si qué en el Eingabefeld getippt se y así una input type hidden en 1 oder kuchen oder window. navigator conjunto. Bots tippen meist sí nichts.
Noch schwieriger Será mejor que te va para Bots si zudem todavía el 8) Captchaeingaben sólo en el Folgeseite abverlangst.
[offtopic]Encabezamiento-Design nuja...[/offtopic] |
|
|
| |
|
|
|
| Noch qué...
jage el Gesamttext a Prüfung hierdurch:
;function __secure_plaintext($s,$also="\%") {
;volver trim(ext_str_replace(' ',' ',preg_replace("/[^a-zA-Z0-9öäüÖÄÜß".$also." ]/","",str_replace("'","",str_replace("'","",$s)))))
;}
;function ext_str_replace($s,$ss,$sss) {
;$sss=str_replace($s,$ss,$sss)
;mientras que (strpos(chr(0).$sss,$s)>0) $sss=str_replace($s,$ss,$sss)
;volver $sss
;}
Und mache entonces una explode(" ",strtolower($pruefText)) y luego por foreach una assoziatives Array $worte[$key]=1 befüllen. So hast Usted todos Worte por $worte["wort"]=1 y kannst entonces wiederum simplemente schauen si $worte["100%"]==1 es. |
|
|
| |
|
|
|
Julian Schmidt | Ok danke, voluntad entonces veces schauen como y Yo su umsetze. Lass el Thema hier primero para Rückfragen meinerseits y natürlich para weitere nützliche Tipps offen.
Saludo |
|
|
| |
|
|
|
Julian Schmidt | |
|
| |
|
|
|
| Zu 1) schreibst Usted Entrada type texto hidden -
Yo schrieb aber "Input type texto en un span style display none" y el es anders.
a 2 sería Yo incluso 5+ Sekunden nehmen como vorher eh kein Mensch una Gästebucheintrag formuliert y getippt ha.
>> Referer se por el Submit por desgracia, no gesetzt. Einfach prüfen si el Referer >> una Seiter meiner Homepage es?
Was?! Türlich hast el Referer auch después de Submit - simplemente veces $_SERVER print_r'en.
5) Usted hast a) $_SERVER con Browserinfo (useragent) y por js window.navigator - beides debería zusammenpassen qué en Bots meist no Fall es.
6) después de Session invertir y $_SESSION["sonstwas" time speichern
Zu Explode: Statt $words["wort"]=1 simplemente $words["wort"]++ escribir - ya hast en el foreach en el $value el número. |
|
|
| |
|
|
|
Julian Schmidt | Zu 1) Tuve ya. Zu 2) Jetzt en 2000 gesetzt. Zu 4) klappt ahora. A 5) Como bekomme Yo, el Vergleich hin. Ist sí PHP y Javascript en el Condición. Como Es el Syntax? Den Rest mostrar Yo entonces später a.... |
|
|
| |
|
|
|
| Zu 5): En wmkeydown simplemente de una hiddem edit el value en window.navigator conjunto - así überträgst el JS-Info a PHP y kannst con el Browseragentvariable de $_Server vergleichen. |
|
|
| |
|
|
|
Julian Schmidt | Gut así wären entonces 1), 2), 4), 5), 6) y 7) abgehakt. 3) y 8) lass Yo como dijo bleiben.
Nochmal a Explode y el assoziatives Array. Diese Método en Begriffe a prüfen es para mich unbrauchbar porque Begriffen como z.B. href wo no siempre una Leerzeichen folgt oder einzelne Signo como < no berücksichtigt voluntad. Bleib ahora en meiner Variante con substr_count. ¿Puede kurz erklären qué __secure_plaintext() macht?
Willste veces en Lücken prüfen? [...] Nochmal rápidamente el Code.
if (isset($_POST['webseite']) and !is_array($_POST['webseite'])) {
$webseite = $_POST['webseite'];
if (($webseite<>$_SERVER['HTTP_USER_AGENT']) and !empty($webseite)) {
$error_spam = "Spamverdacht<br />";
}
}
If ($_SERVER['HTTP_REFERER']!="https://".$_SERVER['SERVER_NAME']."/gaestebuch.php") {
$error_spam = "Spamverdacht";
}
If (isset($_SESSION['rechen_captcha_time'])) {
$diff_time = time()-$_SESSION['rechen_captcha_time'];
If ($diff_time<=3) {
$error_spam = "Spamverdacht";
}
}
|
|
|
| |
|
|
|
| >>Diese Método en Begriffe a prüfen es para mich unbrauchbar porque Begriffen como >>z.B. href wo no siempre una Leerzeichen folgt oder einzelne Signo como < no >>berücksichtigt voluntad.
Usted hast no getestet, en Verbindung con __secure_plaintext. Aus
<a href="roffel" sería "a href roffel", explode " " ergäbe a;href;roffel - klüppte also.
>>Kannst kurz erklären qué __secure_plaintext() macht?
Entfernt alles qué no a-zA-Z0-9 y $also y $20 y äöüß es.
Su showcaptcha(mod) es así no pensamiento, lo va no por lo tanto qué verzögert anzuzeigen sonder lo überhaupt sólo verzögert a redactar ( [...] ) . |
|
|
| |
|
|
|
Julian Schmidt | IF (01.05.13)
Su showcaptcha(mod) es así no pensamiento, lo va no por lo tanto qué verzögert anzuzeigen sonder lo überhaupt sólo verzögert a redactar ( [...] ) .
Und como ruf Yo el Función create() en. ¿Puede nen kurzes Ejemplo hacer? |
|
|
| |
|
|
|
| Na simplemente <div id="someParent"...
create(_parent,_element,_id)
also
;create("someParent","img","myImg") ;document.getElementById("myImg").src="... |
|
|
| |
|
|