tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von queicherius
ERLEDIGT
JA
ANTWORTEN
12
ZUGRIFFE
546
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von timestamp
    timestamp timestamp ist offline Mitglied Rubin
    Registriert seit
    May 2010
    Ort
    Marburg
    Beiträge
    1.479
    Hallo Community,

    da ich denke, dass ihr euch in Sachen Bots besser auskennt als ich, wollte ich mal wissen für wie sicher ihr mein selbstgecodetes Captcha findet. Ich hänge mal 3 Beispiel Bilder an. Ich bitte ausdrücklich um konstruktive Kritik
    Angehängte Grafiken Angehängte Grafiken    
     

  2. #2
    Avatar von queicherius
    queicherius queicherius ist offline ♥ PHP ♥
    Registriert seit
    Oct 2008
    Ort
    Stuttgart
    Beiträge
    439
    So ist das alles noch relativ leicht auszulesen...

    Tipps:
    • Schriftgröße ändern
    • Schriftfarbe ändern
    • Zeichen rotieren
     
    Jeder freut sich über eine positive Bewertung oder ein Danke :)

    Wie poste ich falsch
    Nachdem ich Google, die FAQ und die interne Suche erfolgreich ignoriert habe, erstelle ich zwei bis fünf neue Themen in den falschen Unterforen, mit kreativen Titel und undeutlichem Text, unter dem sich jeder etwas anderes vorstellen kann. Helfende Posts anderer Mitglieder ignoriere ich einfach und nörgle, dass mir niemand helfen kann.
    Mein Motto

  3. #3
    Avatar von timestamp
    timestamp timestamp ist offline Mitglied Rubin
    Registriert seit
    May 2010
    Ort
    Marburg
    Beiträge
    1.479
    Hallo

    ich habe mir mal deinen Rat zu Herzen genommen und das kam dabei raus:
    Angehängte Grafiken Angehängte Grafiken    
     

  4. #4
    Avatar von zer0
    zer0 zer0 ist offline Mitglied Brokat
    Registriert seit
    Oct 2009
    Beiträge
    323
    Vielleicht auch noch die Schriftart ändern bzw vllt sogar für jeden einzelnen Buchstaben eine andere Art auswählen.

    EDIT: Du warst wohl schneller :P Sieht gut aus!
     

  5. #5
    Avatar von timestamp
    timestamp timestamp ist offline Mitglied Rubin
    Registriert seit
    May 2010
    Ort
    Marburg
    Beiträge
    1.479
    Hi

    die Schriftarten werden für jeden Buchstaben zufällig aus 5 verschieden Arten ausgesucht.
    edit: Jetzt warst du schneller :P Danke
     

  6. #6
    Avatar von queicherius
    queicherius queicherius ist offline ♥ PHP ♥
    Registriert seit
    Oct 2008
    Ort
    Stuttgart
    Beiträge
    439
    Jup, jetzt sieht schon mal gut aus

    Du könntest auch noch ein Feld ins Formular einbauen und einen Namen wie "E-Mail-Wiederholung" vergeben, mit CSS ausblenden und wenn es ausgefüllt ist kommt ne Fehlermeldung.
    timestamp bedankt sich. 
    Jeder freut sich über eine positive Bewertung oder ein Danke :)

    Wie poste ich falsch
    Nachdem ich Google, die FAQ und die interne Suche erfolgreich ignoriert habe, erstelle ich zwei bis fünf neue Themen in den falschen Unterforen, mit kreativen Titel und undeutlichem Text, unter dem sich jeder etwas anderes vorstellen kann. Helfende Posts anderer Mitglieder ignoriere ich einfach und nörgle, dass mir niemand helfen kann.
    Mein Motto

  7. #7
    Maik Tutorials.de Gastzugang
    Hi,

    ich platziere dein Thema im "Coders Talk"-Forum

    Zitat Zitat von queicherius Beitrag anzeigen
    So ist das alles noch relativ leicht auszulesen...
    Kann ein Bot ein Captcha-Bild am Bildschirm "auslesen" (betrachten)?

    mfg Maik
     

  8. #8
    Avatar von timestamp
    timestamp timestamp ist offline Mitglied Rubin
    Registriert seit
    May 2010
    Ort
    Marburg
    Beiträge
    1.479
    Zitat Zitat von Maik Beitrag anzeigen
    Hi,

    ich platziere dein Thema im "Coders Talk"-Forum

    Kann ein Bot ein Captcha-Bild am Bildschirm "auslesen" (betrachten)?

    mfg Maik
    Es gibt doch diverse Schrifterkennungssoftware
    An den Trick mit dem versteckten input Feld habe ich gar nicht gedacht, ist auch ein super Tipp.
    Wer den Captchacode verwenden möchte:
    PHP-Code:
    <?php
    session_start
    ();
    header("Content-type: image/png");
    $width  150;
    $height 35;
    $length 6;
    $fonts  = array("font1","font2","font3","font4","font5");
    $font   "../../fonts/%s.ttf";
    $im imagecreatetruecolor($width,$height);
    $bg imagecolorallocate($imrand(120255), rand(120255), rand(120255) );
    imagefilledrectangle($im,0,0,$width,$height,$bg);
    for( 
    $i 0$i 3$i++){
      
    $c imagecolorallocatealpha($imrand(150255), rand(150255), rand(150255), rand(50100) );
      
    $p = array( rand(0$width), rand(0$height), rand(0$width), rand(0$height),
                  
    rand(0$width), rand(0$height), rand(0$width), rand(0$height),
                  
    rand(0$width), rand(0$height), rand(0$width), rand(0$height),
                  
    rand(0$width), rand(0$height), rand(0$width), rand(0$height)
                );
      
    imagefilledpolygon($im$pcount($p)/2$c);
    }
    $captcha "";
    for( 
    $i 0$i $length$i++ ){
      
    $c imagecolorallocate($imrand(0150), rand(0150), rand(0150));
      
    $x $width/($length+1) * $i rand(10,15);
      
    $y rand15$height $height/);
      
    $a rand(315,405);
      
    $f sprintf($font$fonts[rand(0,count($fonts)-1)]);

      
    $char     chrrand(6590) );
      
    $captcha .= $char;
      
    imagettftext($imrand(12,16), $a$x$y$c$f$char);
    }
    $_SESSION["captcha"] = $captcha;
    imagepng($im);
    imagedestroy($im);
    ?>
     

  9. #9
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.802
    Blog-Einträge
    5
    Zitat Zitat von queicherius Beitrag anzeigen
    Du könntest auch noch ein Feld ins Formular einbauen und einen Namen wie "E-Mail-Wiederholung" vergeben, mit CSS ausblenden und wenn es ausgefüllt ist kommt ne Fehlermeldung.
    Überraschend effektiv ist auch eine Checkbox mit dem Titel „Ich bin ein Mensch“, die angekreuzt sein muss (sie aber standardmäßig nicht ist).

    Grüße,
    Matthias
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  10. #10
    Avatar von queicherius
    queicherius queicherius ist offline ♥ PHP ♥
    Registriert seit
    Oct 2008
    Ort
    Stuttgart
    Beiträge
    439
    Zitat Zitat von Maik Beitrag anzeigen
    Hi,

    ich platziere dein Thema im "Coders Talk"-Forum

    Kann ein Bot ein Captcha-Bild am Bildschirm "auslesen" (betrachten)?

    mfg Maik
    Klar. Und fast alle Captchas sind schon geknackt...
     
    Jeder freut sich über eine positive Bewertung oder ein Danke :)

    Wie poste ich falsch
    Nachdem ich Google, die FAQ und die interne Suche erfolgreich ignoriert habe, erstelle ich zwei bis fünf neue Themen in den falschen Unterforen, mit kreativen Titel und undeutlichem Text, unter dem sich jeder etwas anderes vorstellen kann. Helfende Posts anderer Mitglieder ignoriere ich einfach und nörgle, dass mir niemand helfen kann.
    Mein Motto

  11. #11
    dki dki ist offline Mitglied
    Registriert seit
    Sep 2008
    Beiträge
    21
    eine Leichte verzerrung wäre auch noch sinnvoll. Dies würde es schützen vor Matching angriffen. Man bräuchte momentan nur die einzelnen Buchstaben zu trennen (was mir momentan einfach erscheint) und dann nur noch die 5 verschiedenen Schriftarten mit allen größen und drehungen zu vergleichen, was nur ein bisschen Rechenaufwand ist.

    DIe Verzerrung verhindert, dass man mit allen vergleichen, das CAPTCHA lösen kann.
     

  12. #12
    Avatar von timestamp
    timestamp timestamp ist offline Mitglied Rubin
    Registriert seit
    May 2010
    Ort
    Marburg
    Beiträge
    1.479
    Hi

    naja, dann könnte man weiter argumentieren dass man dann auch eine jede mögliche Verzerrung ausprobieren könnte. queicherius hat mir ja ein paar Tipps gegeben. Um sich bei der Website automatisiert registrieren zu können wir glaub ich keiner den Rechenaufwand betreiben, 6 Buchstaben herauszufiltern und dann noch jeden Buchstaben versuchen mit dem Originalbuchstaben zu matchen, wofür er immerhin die richtige Rotation, Größe und überhaupt erstmal die Schriftart haben müsste. Ich werde auf deinen Hinweis zurück kommen wenn es der erste Bot geschafft hat sich zu registrieren
     

  13. #13
    dki dki ist offline Mitglied
    Registriert seit
    Sep 2008
    Beiträge
    21
    Freunde von mir hatten in einem Praktikum dieAufgabe, solch ein ähnliches CAPTCHA zu brechen. Der Unterschied war nur, dass sich die Buchstaben noch überlappt haben. (Bild ist im Anhang)
    Hier war es immer die gleiche Schriftgröße und Schriftart. Sie haben in ~820ms das CAPTCHA mit einer 93,55% Wahrscheinlichkeit geknackt.

    Sie haben dann versucht, das CAPTCHA sicherer zu machen mit unterschiedlichen Methoden und dann nochmal getestet mit einer angepassten Version ihres Programms:
    mehrere verschiedene Schriftarten: Erfolgsrate 47% und Laufzeit betrug ~5,5 Sekunden
    Schriftgröße variiert: Erfolgsrate 54,80% und Laufzeit war ~2,8 Sekunden

    Bei Verzerrung konnte ihre Methode nichts mehr erkennen.

    Klar hätten sie für jede mögliche Verzerrung dies auch berechnen können, aber dies wäre noch ein extremerer Rechenaufwand, als nur mal eine andere Schriftart und Schriftgröße noch in ihr Programm rein zu nehmen. Bei Verzerrungen gibt es viel mehr Möglichkeiten wie man es verzerren kann, so dass sich der Rechenaufwand überhaupt nicht lohnen würde
    Angehängte Grafiken Angehängte Grafiken  
     

Ähnliche Themen

  1. Website Beurteilung erwünscht
    Von julchen im Forum Creative Lounge
    Antworten: 13
    Letzter Beitrag: 09.06.06, 13:27
  2. Webspace Beurteilung
    Von Patrick Kamin im Forum Internet, DSL & Flatrate
    Antworten: 1
    Letzter Beitrag: 14.11.01, 19:40