Wie sind Webseiten wie Facebook und Twitter bei der Registrierung gegen Bot geschützt? Ich meine, auf dem Anmeldeformular gibt es überhaupt kein Captcha?
Ich möchte ein Anmeldeformular für ein Projekt erstellen, und ich möchte Bot nicht während der Registrierung und Captchas sind oft hässlich ..
bearbeiten: Meine Frage ist wirklich während der Registrierung, da ich Facebook Captchas einmal zum ersten Mal registriert benutze.
Facebook verwendet eine Art versteckten Spam-Schutz. Wenn Sie sich die Anmeldeform anzeigen lassen, sehen Sie beispielsweise Folgendes:
%Vor%, so wird Capture sichtbar, wenn JavaScript denkt, dass Sie ein Bot sind.
Wo gibt es einige Methoden, die es für Bots schwieriger machen, die Registrierung ohne Erfassung abzuschließen, Dinge wie Timing zum Ausfüllen von Formular, Urheber von Mausklicks Ereignisse ect. auch zufällige sitzungsbasierte Werte in Form (um Direkteinreichungen zu priventieren, ohne zuerst das Formular herunterzuladen)
auch einige Leute verwenden versteckte Formularelemente mit gebräuchlichen Namen wie 'E-Mail', die in CSS unsichtbar gestaltet sind, aber gewöhnliche einfache Bots werden versuchen, alle Formularfelder auszufüllen und Sie können sie blockieren, wenn dieses versteckte Element einen Wert hat
twitter und fb verbringen viel Zeit damit, Techniken zu entwickeln, um Spammer zu blockieren. Ich glaube nicht, dass sie es öffentlich machen werden, da es für sie kontraproduktiv ist, gegen die Spammer zu kämpfen.
Aber alle clientseitigen Javascripts können Sie von fb oder twitter herunterladen und sie studieren, wenn Sie möchten, da der größte Teil des Schutzes innerhalb des Clients und nicht auf dem Server stattfindet.
Server konnte nur eine zufällige Session-Variable ausgeben, nach gültigen Headern in der Anfrage, der Gesamtzeit usw. suchen. Es ist wirklich begrenzt.
Einige Sites verwenden auch den Ajax-Austausch zwischen Server und Client während der Zeit, in der der Benutzer das Formular ausfüllt, meistens nur um es Bot-Entwicklern zu erschweren, einen simulierten gefälschten Datenaustausch durchzuführen.
Wie auch immer, unglücklicherweise ist wo keine einfache Lösung, um anständigen Schutz zu tun, vor allem ohne Captcha oder irgendeine Art von Frage
auch, Für die Schaltfläche "Senden" können Sie eine Image-Map anstelle eines Buttons verwenden. Sie können ein großes Bild dynamisch mit einem Submit-Bottom-Bild erstellen, das auf zufällige Position gezeichnet wird, indem Sie Dinge wie GDI in PHP verwenden und css verwenden, um nur einen Teil dieses Bildes mit dem actuall-Button anzuzeigen, und auf Serverseite die X- und Y-Position von where mouse überprüfen wurde geklickt, das wird schwer für Bots zu brechen sein. Es sei denn, sie verwenden echte Browser und simulieren Tastatur und Maus. Jedenfalls, wie ich leider sagte, wo keine einfache Lösung ist.
Eine Möglichkeit wäre, eine Bestätigung an die E-Mail-Adresse oder das Mobiltelefon des Benutzers zu senden und die Bestätigung zu erhalten (in diesem Fall müssten Sie nur eine E-Mail-Adresse oder ein Mobiltelefon pro Konto zulassen)
Eine andere Möglichkeit ist die Verwendung von " Negative CAPTCHA " oder " Honeypot Captcha "
Ich weiß nicht, wie Facebook und Twitter es tun, aber wenn Sie etwas Einfaches schaffen wollen und das Ihre Website-Ästhetik nicht stört, weiß ich, dass einige Websites den Benutzer einfach auffordern, eine Antwort auf ein einfaches einzugeben mathematisches Problem wie "Was ist 2 + 3?". Dies ist nicht der sicherste Weg, es zu tun, aber es ist nur ein Gedanke.
Nun können Sie immer auch Hardwarelösungen bereitstellen, um Layer 4-7 Firewall-Regeln zu erstellen. Sie können spezifische Regeln erstellen, um nach den bekannten Agenten von Bots zu suchen, die das Web crawlen. Um jedoch neu erstellte Bots zu stoppen, müssen Sie wissen, welchen Agenten sie für den Bot verwenden.
Da Sie CAPTCHA nicht möchten, können Sie Keypic verwenden - keypic.com - das ist ein unsichtbarer Schutz, kein CAPTCHA erforderlich. Es ist eine effiziente Antispam-Methode für jedes Webformular. Site-Benutzer bestehen keine Tests, die für die Site gut sind, da sie die Qualität der Benutzererfahrung verbessern und somit die Benutzerinteraktion erhöhen. Die Lösung ist eine Art Expertensystem, das das Verhalten der Benutzer analysiert und die Datenbanken überprüft und dann zu einem Ergebnis kommt, wenn die Anfrage von einem legitimen Benutzer oder einem Roboter kommt. BTW, Twitter und Facebook benutzen immer noch CAPTCHA zur Passwortverifizierung, was eine sehr strittige Methode in Bezug auf die Effizienz eines solchen Schutzes ist.
Ich hatte ein Problem mit tonnenweise Bots, die sich für meine Nintendo-Site angemeldet haben, also habe ich ein einzelnes Bild von Mario auf die Anmeldeseite (mit der Aufschrift "Mario") geschrieben mit dem Text "Wer ist? das? Antwort in einem Wort. " Ich hatte seither keine einzige Bot-Anmeldung mehr. Nicht sicher, ob dies tatsächlich eine gute Lösung ist, nicht sicher, wie intelligent Bots sind. Ich bin irgendwie überrascht, dass es funktioniert hat.
Theoretisch könnte es ein paar legitime Benutzer heraushalten, aber es ist schwer vorstellbar, dass viele legitime Nutzer einer Nintendo-Seite nicht wissen, wer Mario ist ...