• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Spambots trotz Sicherheitsmaßnahmen

Icy

Neues Mitglied
Hallo,

ich bin heute von einem Nutzer meiens Gästebuchs angeschrieben wurden, dass sein Gästebuch trotz aller Sicherheitsmechanismen von Spambots heimgesucht wird.
Ich habe, nachdem Captcha und Rechenaufgabe nichts gebracht haben, extra eine neue Version herausgebracht mit einer Sicherheitsfrage. Da muss man dann so einfache Fragen beantworten, wie "Welche Farbe hat eine Banane?" oder "Wie heißt unsere Bundeskanzlerin?". Ich hatte immer gedacht, dass das verhältnismäßig sicher ist, aber anscheinend wohl doch nicht.
Hier mal der entscheidende Code:

PHP:
   if (empty($autor)) { // wenn Autorfeld leer
      echo "<p>".$error."! ".$ind_err_noname."</p>"; 
    } elseif (empty($inhalt)) { // wenn Inhaltsfeld leer
      echo "<p>".$error."! ".$ind_err_nocontent."</p>";
    } elseif ($captcha_act == 1 and strtolower($sec) != strtolower($_SESSION['right'])) { // wenn Captcha-Code / Rechenaufgabe / Sicherheitsfrage falsch
      echo "<p>".$error."! ".$ind_err_nocaptcha."</p>";
    } elseif (strlen($inhalt) > $maxchars) { // wenn zu viele Zeichen
      $toomuch = strlen($inhalt) - $maxchars;
      echo "<p>".$ind_err_toomuch1." (".$toomuch.")".$ind_err_toomuch2."</p>";
    } elseif ($time2-$time1 < 1 or $hiddenfield == "1" and $hidden != "") { // wenn Formular zu schnell ausgefüllt wird (Spambot)
      die("<p>Spam!</p>");
    } elseif ($flood == "1" and mysql_num_rows($userresult) and $sincelastpost <= $set['floodtime']) { // Floodschutz
      $wait = $set['floodtime']-$sincelastpost;
      echo "<p>".$error."! ".$ind_flood1." ".$wait." ".$ind_flood2."</p>";
    } else {

      // Eintrag abschicken

  }

Wie gesagt, beim Captcha dachte ich mir noch: "Das können gute Spambots wohl auslesen". Aber dass die jetzt Fragen beantworten können, ist mir neu bzw. kann ich mir nicht erklären. Ich kann mir nicht vorstellen, dass die extra für mein Gästebuch programmiert wurden und auf die Fragen abgerichtet sind. Deswegen dachte ich mir, dass vielleicht etwas im Code selbst falsch ist.
Hier übrigens mal eine Demo: klick mich

Vielleicht weiß ja von euch jemand Rat.

MfG Icy
 
Werbung:
Hmm. Das Captcha ist jetzt aber nicht das mit den Sicherheitsfragen, oder? Ich hab jetzt nur eine simple Rechenaufgabe gefunden :)

Vielleicht macht sich ein Programmierer die Arbeit und schaut sich alle Fragen und trichtert die seinem Bot ein. Und wenn dieser deine Seite besucht weiß er, aha, jetzt muss ich gucken welche Frage das sein könnte und die entsprechende Antwort raussuchen.

Ist aber vermutlich zu abwegig. Ich hab sonst leider keine Idee. Im Quelltext kann man die Rechnung selbst ja nicht finden.

Vielleicht ist aber auch deine Bedingung falsch!?

PHP:
} elseif ($captcha_act == 1 and strtolower($sec) != strtolower($_SESSION['right'])) { // wenn Captcha-Code / Rechenaufgabe / Sicherheitsfrage falsch


Gruß
 
Oder in diesem Fall waren wirklich Menschen am spammen... Ist ja nicht so, das jede "Werbungsmacher" gleich Bots benutzen... Die suchen sich viel besuchte Seiten raus (Google hilft) und schreiben da als Mensch rein.
Mal nur so eine Idee von mir.

Mfg
 
Werbung:
Zurück
Oben