Scripter davon abhalten, Ihre Website zu knacken

Ich angenommen habe eine Antwort, aber leider, ich glaube, wir stecken mit unserer ursprünglichen worst-case-Szenario: CAPTCHA jeder in Kauf, versucht der Mist. Kurze Erklärung: caching /web-Farmen, die es unmöglich machen, Sie zu verfolgen hat, und Abhilfe (senden einer nicht zwischengespeicherten web-beacon, das schreiben in eine einheitliche Tabelle, etc.) verlangsamt die Website down schlechter als die bots würden. Es ist wahrscheinlich etwas teuer-hardware von Cisco oder ähnliches, die helfen können, auf einem hohen Niveau, aber es ist schwer zu rechtfertigen die Kosten, wenn die CAPTCHA-ing jedermann eine alternative. Ich werde versuchen, eine weitere vollständige Erklärung später, als auch als Reinigung für die zukünftigen Suchenden (obwohl andere sind willkommen zu versuchen, da es community-wiki).

Situation

Dies ist über die bag o' crap Umsatz auf woot.com. Ich bin der Präsident von Woot Workshop, der Tochtergesellschaft von Woot, das design, schreibt die Produkt-Beschreibungen, podcasts, blog-Beiträge und moderiert die Foren. Ich arbeite mit CSS/HTML und bin kaum vertraut mit anderen Technologien. Ich arbeite eng mit den Entwicklern zusammen und haben geredet durch all die Antworten hier (und viele andere Ideen, die wir hatten).

Usability ist ein großer Teil meines Jobs, und dass die Seite spannend und lustig ist, die meisten der rest von ihm. Das ist, wo die drei Ziele unten abzuleiten. CAPTCHA harms usability und bots stehlen den Spaß und die Aufregung aus unserem Mist Verkauf.

Bots zuschlagen, unsere front-Seite, die zehn mal einen zweiten screen scraping (und/oder Scannen Sie unseren RSS) für die Random-Mist Verkauf. Der moment, in dem Sie sehen, dass es Trigger, die zweite Phase des Programms, der sich anmeldet, klickt möchte ich Einen, der das Formular ausfüllt, und kauft den Mist.

Bewertung

lc: Auf stackoverflow und anderen Websites, die diese Methode verwenden, sind Sie fast immer der Umgang mit authentifizierte (angemeldete) Nutzer, weil die Aufgabe versucht, erfordert das.

Auf Woot, anonyme (nicht angemeldete) Benutzer können die home-Seite. In anderen Worten, die hammerharten bots können nicht authentifizierte (und im Grunde nicht nachvollziehbar, außer durch IP-Adresse).

So sind wir wieder zum Scannen für IPs, die a) relativ nutzlos ist im Zeitalter von cloud networking und spambot zombies und b) fängt auch viele unschuldige, da die Zahl der Unternehmen, die von einer IP-Adresse (nicht zu vergessen die Probleme mit nicht-statischen IP-ISPs und potenzielle performance-trifft zu versuchen, die Spur dieses).

Oh, und die Leute nennen uns wäre das Schlimmste mögliche Szenario. Kann wir haben Sie rufen Sie an?

BradC: Ned Batchelder Methoden ziemlich cool Aussehen, aber Sie sind ziemlich fest entwickelt, zu besiegen bots gebaut, die für ein Netzwerk von Websites. Unser problem ist die bots, die speziell auf die Niederlage unserer Website. Einige dieser Methoden könnten wahrscheinlich Arbeit für eine kurze Zeit, bis die skriptschreiber entwickelt, die Ihre bots zu ignorieren, die honeypot -, Bildschirm-kratzen für in der Nähe Bezeichnungen anstelle von Formular-ids, und verwenden Sie einen javascript-fähigen browser Steuern.

 

lc wieder: "Es sei denn, natürlich, der hype ist Teil Ihrer marketing-Plan." Ja, es ist definitiv. Die überraschung, wenn der Artikel erscheint, sowie die Aufregung, wenn es Ihnen gelingt, eins zu bekommen, ist wahrscheinlich sehr viel wichtiger als die Scheiße, die Sie eigentlich am Ende immer. Alles, was eliminiert first-come/first-serve ist schädlich für den Nervenkitzel der 'Sieg' der Mist.

 

novatrust: Und ich, für einen, begrüßen unseren neuen bot Oberherren. Wir bieten RSSfeeds zu ermöglichen 3rd-party-apps, Scannen Sie unsere Website für Produkt-Infos, aber nicht vor dem eigentlichen HTML-Seite. Wenn ich die Auslegung richtig, deine Lösung hilft, Ziel 2 (Leistungsprobleme) komplett opfern, Ziel 1, und nur zu resignieren der Tatsache, dass bots kaufen die meisten den Mist. Ich Stimmen Sie Ihre Reaktion, denn dein letzten Absatz Pessimismus fühlt sich genau zu mir. Es scheint keine Wunderwaffe hier.

Den rest der Antworten, in der Regel verlassen auf IP-tracking, das wiederum scheint sowohl sinnlos (mit botnets/zombies/cloud-Vernetzung) und schädlich (fangen viele unschuldige, die kommen von der selben IP-Destinationen).

Andere Ansätze /Ideen? Meine Entwickler immer sagen, "lass uns einfach nur CAPTCHA", aber ich hoffe, es gibt weniger eingreifende Methoden, um alle tatsächlichen Menschen wollen etwas von unserem Mist.

Ursprüngliche Frage

Sagen, die Sie verkaufen, etwas Billig, hat eine sehr hohe Wertigkeit, und Sie haben eine sehr begrenzte Menge. Niemand weiß genau, Wann Sie verkaufen diesen Artikel. Und über eine million Menschen kommen regelmäßig, um zu sehen, was Sie verkaufen.

Dass Sie am Ende mit skriptschreiber und bots, die versuchen, programmgesteuert [a] herausfinden, wenn Sie verkaufen Ware, und [b] stellen Sie sicher, Sie sind unter den ersten, es zu kaufen. Dieser saugt aus zwei Gründen:

  1. Ihre Website ist schlug von nicht-Menschen, verlangsamt alles nieder für alle.
  2. Die skriptschreiber am Ende 'gewinnen' das Produkt, wodurch die Stammgäste fühlen sich betrogen.

Scheinbar offensichtliche Lösung besteht darin, erstellen Sie einige Reifen, die Ihren Benutzern das springen durch, bevor Sie Ihren Auftrag vergeben, es gibt aber mindestens drei Probleme mit diesem:

  • Die user experience saugt für Menschen, wie Sie das CAPTCHA zu entziffern, wählen Sie die Katze, oder lösen eines mathematischen Problems.
  • Wenn der wahrgenommene nutzen hoch genug ist, und die Menge groß genug ist, eine Gruppe wird den Weg finden, um zu optimieren, was zu einem Wettrüsten. (Dies ist besonders wahr, je einfacher die tweak ist; versteckt 'Kommentare' - form, re-arrangieren der Elemente bilden, die mis-Kennzeichnung, versteckt 'gotcha' text alle einmal und dann müssen geändert werden, um Kampf-targeting dieses Formular.)
  • Auch wenn die skriptschreiber nicht 'lösen' Ihre optimieren, nicht verhindern, dass Sie das zuschlagen Ihrer ersten Seite, und dann klingen ein alarm für die scripter, die zum ausfüllen der Bestellung manuell. Gegeben Sie bekommen den Vorteil von der Lösung des [a], Sie werden wahrscheinlich trotzdem gewinnen, [b] da werden Sie die ersten Menschen erreichen die Bestellseite. Darüber hinaus 1. immer noch passiert, wodurch server-Fehler und eine verminderte Leistung für jedermann.

Andere Lösung ist zu beobachten, IPs schlagen zu oft, blockieren Sie Sie von der firewall, oder sonst verhindern, dass Sie von der Bestellung. Diese lösen könnte 2. und verhindern, dass [b] die Leistung, die Treffer von Scans für IPs ist Massiv-und würde wahrscheinlich mehr Probleme verursachen, wie 1. als die skriptschreiber verursacht haben, auf Ihre eigenen. Darüber hinaus die Möglichkeit, cloud-networking und spambot zombies macht die IP-Prüfung ziemlich nutzlos.

Einer Dritten Idee, zwingt das Bestellformular geladen werden für einige Zeit (sagen wir, eine halbe Sekunde) würde möglicherweise verlangsamen den Fortschritt der schnelle Aufträge, sondern wieder die skriptschreiber wäre immer noch die ersten Menschen auf, bei jeder Geschwindigkeit nicht nachteilig auf den eigentlichen Nutzer.

Ziele

  1. Den Artikel verkaufen zu non-scripting-Menschen.
  2. Damit die Website läuft mit einer Geschwindigkeit bremste nicht durch bots.
  3. Nicht ärger, den 'normalen' Benutzer mit anderen Aufgaben, um zu beweisen, dass Sie ein Mensch sind.

InformationsquelleAutor der Frage |

Schreibe einen Kommentar