Captcha



  • alter, wenn captchas aus einer datenbank kämen, könnten sie mit einer ebensolchen datenbank auch gelöst werden. das heißt ein angreifer bräuchte nur genügend captchas aus deiner datenbank zu sammeln und könnte sie dann einfach per hashvergleich lösen.

    captchas werden selbstverständlich dynamisch erzeugt. es gibt höchstens eine datenbank mit worten, aus der zufällig eins gewählt wird um das captcha zu erzeugen. in vielen fällen gibts nicht mal das, sondern es wird eine zufällige buchstabenfolge gewählt.

    bisschen nachdenken hilft manchmal.



  • 😉 aha... es wird aus einem String ein Captcha erstellt! schön.. wo ist dann die beziehung zwischen string und captcha? Woher will die software wissen welche zeichenfolge zu welchem captcha gehört?



  • Indem es den Text erkennt? Was glaubst Du wie ne Texterkennungssoftware funktioniert? -- Genau der gleiche Ansatz funktioniert auch bei Captchas. Vielleicht nicht bei allen, aber bei vielen würde das prima funktionieren. Unterschiedliche Farben und irgendwelche Muster im Hintergrund stören nämlich fast garnicht.



  • oh man... meinst die leute sind doof die captchas entwerfen... wieso gibts denn captchas? damit kein automatisierter zugriff stattfindet... sonst hätte das keinen sinn... meinst cryptload oder sonstige software hat objekterkennung... is klar... und dann wird mal kurz alles 2 wochen ein neuer erkunngsalgorithmus für neue captchas erstellt



  • Ich glaube, Boris meinte das andere Ende des Captcha's - das Bild wird so dargestellt, daß es mit Texterkennungs-Software möglichst aufwendig zu analysieren ist (sei es durch entsprechend auffällige Hintergrundmuster oder durch besonders schwer lesbare Fonts und Zeichenanordnungen) - also sollte das System selber eine Möglichkeit haben, die Korrektheit der Antwort festzustellen.



  • BorisDieKlinge schrieb:

    Woher will die software wissen welche zeichenfolge zu welchem captcha gehört?

    ich nehme mal an, du meinst die software, die auf dem server überprüft ob das captcha korrekt gelöst wurde?

    das eingabeformular schleppt einen hash mit (z.b. md5 des strings + salt), mit dem der server die benutzereingabe abgleichen kann. salt ist natürlich geheim.
    außerdem muss der server noch aufpassen, dass er nur kürzlich erzeugte captchas zulässt, die noch nicht gelöst wurden.



  • deliciuos schrieb:

    das eingabeformular schleppt einen hash mit (z.b. md5 des strings + salt), mit dem der server die benutzereingabe abgleichen kann. salt ist natürlich geheim.
    außerdem muss der server noch aufpassen, dass er nur kürzlich erzeugte captchas zulässt, die noch nicht gelöst wurden.

    Warum so kompliziert? Der Server erzeugt einen Zufallsstring und rendert ihn als Bild. Das Bild schickt er an den Client und den String merkt er sich in der Session des Clients.

    Theoretisch.

    @Boris: Damit wäre die Antwort auf die Frage "es wird aus einem String ein Captcha erstellt! schön.. wo ist dann die beziehung zwischen string und captcha?" - Der Computer speichert String und Captcha zusammen ab.



  • BorisDieKlinge schrieb:

    oh man... meinst die leute sind doof die captchas entwerfen...

    Ja, die meisten schon. Sieht man ja direkt, wenn man ein bißchen Ahnung von Mustererkennung hat und sich die Captchas anschaut.

    Wie sehr lässt sich ein template-matching algorithmus wohl von kariertem Hintergrund mit farbigen Punkten verwirren? -- Genau. Garnicht.

    Vielleicht auch mal was lesen und nicht nur rumraten und dabei große Töne spucken:
    http://www.cs.sfu.ca/~mori/research/gimpy/



  • LordJaxom schrieb:

    Warum so kompliziert?

    weil ich davon nicht wirklich ahnung hab und mir eine mögliche lösung gerade so zusammengereimt hab.



  • Die Captchas müssen nicht vorgefertigt sein, sondern werden Adhoc erstellt.
    Damit weiß ich, welche Zeichen in dem Bild vorhanden sind, denn ich hab die kurz vorher selber reingeschrieben:

    Anleitung



  • Dieser Thread wurde von Moderator/in CStoll aus dem Forum C++ in das Forum Rund um die Programmierung verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Jester schrieb:

    BorisDieKlinge schrieb:

    oh man... meinst die leute sind doof die captchas entwerfen...

    Ja, die meisten schon. Sieht man ja direkt, wenn man ein bißchen Ahnung von Mustererkennung hat und sich die Captchas anschaut.

    Wie sehr lässt sich ein template-matching algorithmus wohl von kariertem Hintergrund mit farbigen Punkten verwirren? -- Genau. Garnicht.

    Vielleicht auch mal was lesen und nicht nur rumraten und dabei große Töne spucken:
    http://www.cs.sfu.ca/~mori/research/gimpy/

    oder http://ocr-research.org.ua/list.html

    Gibt es schon Bots, die automatisch Captchas knacken? Ist ja im Grunde nur eine Frage der Zeit (aufwand/verbreitung). Viele Captchas sind wirklich extrem simpel und beruhen nur darauf, dass die meisten Bots (noch) gar kein OCR haben.

    Vielleicht könnte man OCR in Bots aber auch für interessante Tarpits gebrauchen.



  • Gibt mitlerweile aber auch schon "logical" captchas.
    Beispielsweise ein Kreis mit den Buchstaben im kreis irgendwo gibts einen pfeil, der die laufrichtung und Anfangsbuchstaben angibt. Da muss man nicht nur die Buchstaben erkennen, sondern halt auch erkennen wo es Anfangen soll. Ein pfeil is zwar noch einfach, aber man kanns ja auch abändern, das man ab dem roten buchstaben anfängt oder sowas. Das macht die Sache dann schon langsam komplizierter.

    Oder was ich letztens gesehen habe...
    Da waren 9 Bilder und man sollte das anhacken, auf dem KEINE Katze zu sehen ist.
    Das sollte unmöglich für ein Programm zu knacken sein.



  • o_O schrieb:

    Oder was ich letztens gesehen habe...
    Da waren 9 Bilder und man sollte das anhacken, auf dem KEINE Katze zu sehen ist.
    Das sollte unmöglich für ein Programm zu knacken sein.

    wenn die bilder nicht generiert werden, dann ist es ganz einfach zu knacken



  • Hi,
    Also ich möchte ja in meinem Programm auch das sog. OCR haben, um damit die Captchas knacken zu können.
    Meine Captchas sind recht simpel!
    Ich suche nun ne lib für C++ das, dass bereitstellt.
    Irgendwie muss es ja gehen da Cryptload auch Capcthas knacken tut und dass ziemlich schnell!

    MFG ReduX


Anmelden zum Antworten