Frage

Ich entwickle eine Website und bin empfindlich auf Menschen meine Daten Screen Scraping. Ich bin nicht besorgt über eine oder zwei Seiten Schaben -. Ich bin mehr besorgt über jemand wäre Tausende von Seiten als Summe dieser Daten ist viel wertvoller als ein kleiner Prozentsatz Schaben

kann ich Strategien vorstellen, Nutzer zu sperren, basierend auf starken Verkehr von einer einzigen IP-Adresse, aber das Tor-Netzwerk Sets viele Schaltungen auf, die im wesentlichen aus einem einzigen Benutzer-Verkehr erscheinen bedeuten von verschiedenen IP-Adressen im Laufe der Zeit kommen.

Ich weiß, dass es möglich ist, Tor Verkehr zu erfassen, wenn ich installierte Vidalia mit seiner Firefox-Erweiterung , google.com präsentiert mich mit einem captcha.

Also, wie kann ich erkennen, solche Anfragen?

(Meine Website in ASP.NET MVC 2, aber ich denke, jeder Ansatz hier verwendete Sprache unabhängig sein würde)

War es hilfreich?

Lösung

Ich entwickle eine Website und am empfindlich auf Menschen screen scraping mein Daten

Vergessen Sie es. Wenn es auf dem Netz ist und jemand will es, wird es unmöglich , sie lassen es nicht zu stoppen. Je mehr Einschränkungen Sie geschaffen, desto mehr riskieren Sie Benutzererfahrung für legitime Benutzer zu ruinieren, die hoffentlich die Mehrheit des Publikums sein. Es macht auch Code schwieriger zu pflegen.

Ich werde nach Gegenmaßnahmen für alle Ideen Zukunft Antworten vorschlagen.

Andere Tipps

Sie können überprüfen, ihre IP-Adresse mit einer Liste von Tor-Exit-Nodes . Ich weiß für eine Tatsache, das wird nicht einmal langsam jemand nach unten, die in Schaben Ihrer Website interessiert ist. Tor ist zu langsam, werden die meisten Schaber nicht einmal in Betracht ziehen. Es gibt Zehntausende von offenen Proxy-Servern, die leicht für oder eine Liste gescannt werden können, können erworben werden. Proxy-Server ist nett, weil man sich fädeln kann oder drehen, wenn Ihre Anfrage Kappe getroffen wird.

Google wurde von tor Benutzern missbraucht und die meisten der Ausgangsknoten sind auf Google schwarze Liste und das ist, warum Sie ein Captcha bekommen.

Lassen Sie mich ganz klar sein. steht nichts tun können, um jemanden davon abzuhalten, IHRE SITE SCHÜRF

Mit dem Design der Tornetz Komponenten es nicht möglich, dass der Empfänger ist um herauszufinden, ob der Antragsteller die ursprüngliche Quelle ist, oder ob es nur ein übertragenes Anfrage.

Das Verhalten, das Sie mit Google sah, war wahrscheinlich durch eine andere Sicherheitsmaßnahme verursacht. Google erkennt, ob ein angemeldeter Benutzer seine IP und präsentiert ein Captcha für alle Fälle ändert schädlichen Abfangen zu verhindern und auch die Fortsetzung der Sitzung zu ermöglichen, wenn ein authentifizierter Benutzer wirklich seine IP geändert (durch erneute Anmeldung an ISP, etc.).

Ich weiß, das ist alt, aber ich habe hier von einer Google-Suche so dass ich dachte ich an die Wurzel Bedenken in der Frage hier bekommen würde. Ich entwickle Web-Anwendungen, aber ich habe auch eine Tonne des Missbrauchs und andere Völker zu nutzen. Ich bin wahrscheinlich der Typ Sie versuchen zu halten.

Detecting tor Verkehr ist wirklich nicht die Route, die Sie hier gehen wollen. Sie können eine gute Menge an offenen Proxy-Server erkennen, indem Request-Header-Parsing, aber Sie haben tor, hohe Anonymität Proxies bekam, Socken Proxys, billig VPNs vermarktet direkt an Spammer, Botnets und unzählige andere Möglichkeiten, Frequenzgrenzen zu brechen. Sie könnten auch

Wenn Ihr Hauptanliegen ein DDoS-Effekt ist, keine Sorge darüber. Real DDoS-Attacken entweder Muskel oder eine Verwundbarkeit, dass Puts auf Ihrem Server belastet. Egal, welche Art von Website, die Sie haben, Sie gehen mit Hits von Spinnen sowie schlechte Menschen für Exploits Scannen überflutet werden. Nur eine Tatsache des Lebens. In der Tat, diese Art von Logik auf dem Server skaliert fast nie gut und kann die Single Point of Failure, dass Blätter Sie zu einem echten DDoS öffnen Angriff zu nehmen.

Dies kann auch einen Single Point of Failure für die Endbenutzer (einschließlich freundliche Bots) sein. Wenn ein berechtigter Benutzer oder Kunde bekommt blockiert Sie einen Kundenservice Alptraum hat und wenn der falsche Crawler wird Sie sagen blockiert Abschied zu Ihrer Suche Verkehr.

Wenn Sie wirklich wollen nicht, dass jemand Ihre Daten greifen, gibt es einige Dinge, die Sie tun können. Wenn es ein Blog-Inhalte oder etwas ist, in der Regel sagen, dass ich entweder nicht darüber keine Sorge oder eine Zusammenfassung nur RSS-Feeds, wenn Sie Feeds überhaupt benötigen. Die Gefahr, mit geschabt Blog-Content ist, dass es eigentlich ziemlich einfach, eine genaue Kopie eines Artikels, Spam-Links zu ihm und Rang, es zu nehmen, während das Original aus den Suchergebnissen zu klopfen. Zur gleichen Zeit, weil es so einfach Menschen sind nicht Mühe in bestimmten Websites Targeting, wenn sie RSS-Feeds in der Masse kratzen können.

Wenn Ihre Website eher einen Service mit dynamischen Inhalten, die eine ganz andere Geschichte. Ich kratze tatsächlich eine Menge von Websites wie diese zu „stehlen“ riesige Mengen an strukturierten proprietären Daten, aber es gibt Möglichkeiten, um es schwerer zu machen. Sie können die Anfrage per IP begrenzen, aber das ist einfach, mit Proxies umgehen. Aus irgendeinem wirklichen Schutz relativ einfache Verschleierung geht ein langer Weg. Wenn Sie versuchen, von YouTube etwas wie Scharren Google Ergebnisse oder Download von Videos zu tun finden Sie heraus viel zu Reverse Engineering gibt. Ich mache beides, aber 99% der Menschen, die versuchen, scheitern, weil sie das Wissen fehlt, es zu tun. Sie können Proxies kratzen um IP-Grenzen zu erhalten, aber sie brechen keine Verschlüsselung.

Als Beispiel so weit wie ich eine Google-Ergebnisseite erinnere mit verschleierten javscript kommt, die in das DOM beim Laden der Seite injiziert werden, dann eine Art von Token so eingestellt ist, können Sie sie zu analysieren, haben aus. Dann gibt es eine Ajax-Anforderung mit den Token, dass die Renditen JS oder JSON verschleiert, die die Ergebnisse bauen decodiert ist und so weiter und so weiter. Dies ist nicht schwer, auf Ihrer Seite als Entwickler zu tun, aber die überwiegende Mehrheit der potenziellen Diebe kann nicht damit umgehen. Die meisten von denen, die nicht in der Mühe geben können. Ich mache das wirklich wertvolle Dienste Google einzuwickeln, aber für die meisten anderen Dienste, die ich gerade bei verschiedenen Anbietern zu einem gewissen unteren hängenden Früchten bewegen.

Hope dies ist nützlich für jedermann über sie kommen.

ich denke, den Fokus auf, wie es ist ‚unmöglich‘ eine entschlossene und technisch versierte Benutzer zu verhindern, dass eine Website Schaben zu viel Bedeutung gegeben. @Drew Noakes besagt, dass die Website enthält Informationen, dass, wenn genommen in Aggregat etwas ‚Wert‘ hat. Wenn eine Website aggregierte Daten hat, die leicht zugänglich durch ungezwungenen anonymen Benutzer ist, dann ja, verhindert Kratzen kann in der Nähe von ‚unmöglich‘.

würde ich das Problem vorschlagen gelöst werden soll, nicht, wie die Nutzer verhindern, dass die aggregierten Daten Schaben, sondern welche Ansätze verwendet werden, um die aggregierten Daten aus dem öffentlichen Zugang zu entfernen; das Ziel der Abstreifer, ohne dass dadurch die Beseitigung der ‚unmöglich‘ zu tun, verhindern Verschrottung.

Die aggregierten Daten sollten wie proprietäre Unternehmen Informationen behandelt werden. Proprietary Unternehmen Informationen in der Regel nicht öffentlich zugänglich für anonyme Benutzer in einem Aggregat oder Rohform. Ich würde behaupten, dass die Lösung die Einnahme von wertvollen Daten zu verhindern, wäre zu beschränken und constrain Zugriff auf die Daten, nicht die Verschrottung von ihm zu verhindern, wenn es den Benutzer präsentiert wird.

1] Benutzerkonten / access - niemand Zugriff auf alle Daten in einem innerhalb eines bestimmten Zeitraums (Daten / domänenspezifischer) haben sollte. Benutzer sollten den Zugriff auf Daten in der Lage, die für sie relevant ist, aber klar von der Frage, hätte kein Benutzer einen legitimen Zweck all aggregierten Daten abzufragen. Ohne die Besonderheiten der Website zu wissen, wie ich vermute, dass ein berechtigter Benutzer nur eine kleine Teilmenge der Daten innerhalb eines bestimmten Zeitperiode benötigen. Darum ersuchen, dass deutlich typische Bedürfnisse der Nutzer nicht überschreiten sollten oder alternativ gedrosselt blockiert werden, um so unerschwinglich Zeit zu machen Schaben raubend und die verschrotteten Daten möglicherweise veraltet.

2] Operations-Teams oft Metriken überwachen, um sicherzustellen, dass große verteilte und komplexe Systeme gesund sind. Leider wird es sehr schwierig, die Ursachen für sporadische und intermittierende Probleme zu erkennen, und oft ist es sogar schwierig zu erkennen, dass ein Problem wie in den normalen Betriebsschwankungen entgegengesetzt ist. Operations-Team oft mit statistischen analysiert historischen Daten befaßt aus vielen zahlreichen Metriken genommen, und sie mit den aktuellen Werten zu identifizieren signifikante Abweichungen in dem Systemzustand zu vergleichen, werden sie System Zeit, Last, CPU-Auslastung, etc.

In ähnlicher Weise Anforderungen von Benutzern für Daten in Mengen, die deutlich größer sind als die Norm Personen identifizieren helfen könnte, die wahrscheinlich Daten zu Verschrottung; kann ein solcher Ansatz noch weiter automatisiert und sogar erweitert werden, über mehrere Konten nach Mustern zu suchen, die Verschrottung an. Benutzer 1 schabt 10%, Benutzer 2 schabt das nächste 10%, Benutzer 3 schabt das nächste 10%, usw. ... Muster wie die (und andere) durch eine einzelne Person oder eine Gruppe von Indikatoren starke böswilliger Verwendung des Systems zur Verfügung stellen könnte unter Verwendung mehrere Konten

3] Do nicht die rohen aggregierten Daten machen direkt zugänglich zu den Endnutzern. Besonderheiten Rolle hier, aber einfach gesagt, sollten die Daten auf Back-End-Servern befinden, und einige domänenspezifischen API abgerufen nutzen. Wieder unter der Annahme, ich, dass Sie nicht nur Rohdaten werden serviert, sondern für einige Teilmengen der Daten auf Benutzeranforderungen zu reagieren. Wenn beispielsweise die Daten, die Sie haben Population Demografie für eine bestimmte Region detailliert werden, wäre ein legitimer Anwender in nur eine Teilmenge dieser Daten interessiert sein. Zum Beispiel kann ein Endbenutzer will Adressen der Haushalte mit Jugendlichen kennen, die in Gehäusen mit mehreren Einheiten mit beide Eltern wohnen oder Daten auf einer bestimmten Stadt oder Region. Eine derartige Anforderung würde die Verarbeitung der aggregierten Daten erfordern eine resultierende Datenmenge zu erzeugen, die von Interesse für den Endbenutzer ist. Es wäre unerschwinglich schwierig, von zahlreichen potenziellen Permutationen der Eingabeabfrage abgerufen jeden resultierenden Datensatz zu kratzen und die aggregierten Daten in seinem ent rekonstruierenirety. Ein Schaber würde auch durch die Webseiten Sicherheit eingeschränkt werden, unter Berücksichtigung die Anzahl der Anfragen / Zeit, die Gesamtdatengröße des resultierenden Datensatz und anderen potentiellen Marker. Ein gut entwickelte API enthalten domänenspezifisches Wissen wäre entscheidend, um sicherzustellen, dass die API umfassend genug, um ihren Zweck zu dienen, aber nicht zu allgemein, um große Rohdaten Deponien zurückzukehren.

Die Einbeziehung von Benutzerkonten in auf der Website, die Einrichtung der Nutzung der Grundzüge für Benutzer, die Identifizierung und Drosselung von Benutzern (oder andere Minderungs Ansätze), die sich deutlich von typischen Nutzungsmuster und die Schaffung einer Schnittstelle abweichen verarbeitet für das Ansuchen / verdaut Ergebnismengen (vs raw aggregierte Daten) für böswillige Personen erhebliche Komplexität Absicht Ihre Daten stehlen würde erstellen. Es kann unmöglich sein, die Verschrottung von Website-Daten zu verhindern, aber die ‚Unmöglichkeit‘ wird ausgesagt auf den aggregierten Daten an den Schaber leicht zugänglich zu sein. Sie können nicht kratzen, was man nicht sehen kann. Also, wenn Sie Ihre gesamten Daten bilden roh nicht verarbeiteten Text (zB Bibliothek E-Bücher) Endanwender sollten keinen Zugriff auf die rohen aggregierten Daten haben. Auch in dem Bibliothek E-Book Beispiel erhebliche Abweichung von einem akzeptablen Nutzungsmuster wie anfordernden große Anzahl Bücher in ihrer Gesamtheit blockiert oder gedrosselt werden soll.

Sie können Tor-Benutzer erkennen TorDNSEL mit - https://www.torproject.org /projects/tordnsel.html.en .

Sie können nur diese Befehlszeilen / Bibliothek verwenden - https://github.com/assafmo/IsTorExit .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top