php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Sonstiges > Off-Topic Diskussionen
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


Off-Topic Diskussionen Kein Platz für Deine Frage gefunden? Dann bist Du hier genau richtig!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 27-11-2006, 20:11
Marcusson
 Registrierter Benutzer
Links : Onlinestatus : Marcusson ist offline
Registriert seit: Jan 2006
Beiträge: 241
Marcusson ist zur Zeit noch ein unbeschriebenes Blatt
Standard Spambots übermitteln keine Angaben zum "User Agent"?

Mir ist beim durchforsten meiner Serverlogs aufgefallen, dass alle Spambots, die sich auf meinem Server tummeln, zwar gefälschte Referer, aber keine Angaben zum User Agent übermitteln. Ich weiß nicht wie das bei euch ausschaut, aber offensichtlich gibt es eine ganze Reihe Bots mit dieser "Schwachstelle". Daher habe ich darüber nachgedacht, solche Request zu blockieren.

Aber natürlich sollen keine echten Nutzer ausgesperrt werden. Was ist eure Meinung dazu? Gute Idee - schlechte Idee? Kennt jemand einen Browser oder OS, dass den "User Agent" NICHT übermittelt?
Mit Zitat antworten
  #2 (permalink)  
Alt 27-11-2006, 20:32
jahlives
 Master
Links : Onlinestatus : jahlives ist offline
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
jahlives ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hängt vermutlich mehr von den Einstellungen als vom Browser ab. Ich denke per default werden die meisten Browser den User Agent mitschicken. Aber mittels Einstellungen kann man das verändern/unterdrücken

Gruss

tobi
__________________
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Mit Zitat antworten
  #3 (permalink)  
Alt 28-11-2006, 09:41
Marcusson
 Registrierter Benutzer
Links : Onlinestatus : Marcusson ist offline
Registriert seit: Jan 2006
Beiträge: 241
Marcusson ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Theoretisch - ja, natürlich. Aber praktisch habe ich daheim Firefox und Opera durchforstet und keine solche Einstellung finden können. Auch in der Firewall nicht. Outpost kann Header-Daten ändern, schreibt aber "this field was blocked by ..." - das heißt, dass Feld ist trotzdem niemals leer.

Praktisch kenne ich kein praktisches Beispiel, wo der "User Agent" tatsächlich nicht übermittelt wird. Deswegen frage ich ja.

Klar - theoretisch kann man sich jeden beliebigen Header basteln
Mit Zitat antworten
  #4 (permalink)  
Alt 28-11-2006, 15:38
MaxP0W3R
 PHP Senior
Links : Onlinestatus : MaxP0W3R ist offline
Registriert seit: Dec 2003
Ort: Ludwigshafen
Beiträge: 1.809
MaxP0W3R ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Für Mozilla /Firefox gibs ein Plug-in, dass das unterdrücken kann, bei Opera geht das angeblich von haus aus (selber nicht getestet)
__________________


An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )
Mit Zitat antworten
  #5 (permalink)  
Alt 28-11-2006, 20:26
Marcusson
 Registrierter Benutzer
Links : Onlinestatus : Marcusson ist offline
Registriert seit: Jan 2006
Beiträge: 241
Marcusson ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Opera kann es nicht (mehr) von Hause aus. Man kann den User Agent umschalten, aber nicht abschalten. Im Firefox kenne ich mindestens ein Plugin mit dem man sich den ganzen Header nach Gutdünken basteln kann - aber das ist eher für Testzwecke gedacht. Damit würde ich nicht surfen gehen und das auch niemandem empfehlen.

Hmm... ich habe meine Serverlogs im Zeitraum 1er Woche nochmal durchgesehen und dabei ist mir etwas interessantes aufgefallen.

Der fehlende User Agent als Kriterium allein reicht offensichtlich nicht. Ich habe zumindest einen russischen Server gefunden, der den User Agent nicht übermittelt hat und scheinbar trotzdem kein Bot war. (alle anderen inklusive der Downloadmanager, Feedreader und Suchmaschinen haben allerdings stets einen gesendet - einige betrachten das scheinbar auch als kostenlose Werbung) Vermutlich betreffen fehlende User Agent Angaben im Header Proxy-Server oder vielleicht Anonymisierungsdienste?

Allerdings die Kombination aus Post-Request, Referer vorhanden und User Agent fehlt liefert in meinem Versuch 100% Treffer und 0 false positives.

Kann das jemand anhand anderer Logs bestätigen?
Mit Zitat antworten
  #6 (permalink)  
Alt 28-11-2006, 21:47
TobiaZ
  Moderator
Links : Onlinestatus : TobiaZ ist offline
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
Blog-Einträge: 1
TobiaZ befindet sich auf einem aufstrebenden Ast
Standard

wenns nur um kontaktformulare o.ä. geht, denke ich kannst du das riskieren. Generell würde ich die gefahr aber nicht eingehen.

googlebot z.b. kommt afaik auch anonym vorbei. da kann dein mechanismus schnell negative folgen haben.
__________________
ERST LESEN: Unsere Regeln. | Ich hab schon Pferde kotzen sehn!

READ THIS: Strings richtig trennen/verbinden | JOINs, das leidige Thema | Wegwerf E-Mail Adressen

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #7 (permalink)  
Alt 28-11-2006, 22:03
jahlives
 Master
Links : Onlinestatus : jahlives ist offline
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
jahlives ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
da kann dein mechanismus schnell negative folgen haben.
Und ich kann ja einen Spambot proggen, der sich als IE meldet...
__________________
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Mit Zitat antworten
  #8 (permalink)  
Alt 28-11-2006, 22:13
TobiaZ
  Moderator
Links : Onlinestatus : TobiaZ ist offline
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
Blog-Einträge: 1
TobiaZ befindet sich auf einem aufstrebenden Ast
Standard

japp, das sowieso. und wird auch sicher so praktiziert.
__________________
ERST LESEN: Unsere Regeln. | Ich hab schon Pferde kotzen sehn!

READ THIS: Strings richtig trennen/verbinden | JOINs, das leidige Thema | Wegwerf E-Mail Adressen

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #9 (permalink)  
Alt 29-11-2006, 12:44
Marcusson
 Registrierter Benutzer
Links : Onlinestatus : Marcusson ist offline
Registriert seit: Jan 2006
Beiträge: 241
Marcusson ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Logisch geht's um Kontaktformulare, Foren, et cetera und logisch kann man immer einen neuen, besseren Bot progen. Dass man JEDE Sperre mit entsprechendem Aufwand umgehen kann ist sonnenklar.
Mir geht es vielmehr darum, die real existierenden Bots vorübergehend auszusperren, als irgendwelche Fantasieprogramme, die es bis dato gar nicht gibt, oder die zur Zeit nur eine geringe Verbreitung haben.

Und Googlebot identifiziert sich via User agent, ebenso wie Yahoo und alle andere Suchmaschinen die mir bekannt sind (habe ich bereits erwähnt). Außerdem schickt der Googlebot keine Formulare ab - also ist das uninteressant, den der Spam kommt nur über Post-Requests.

Ein Risiko ist immer dabei - auch das ist trivial. Mir geht es nicht darum das Risiko auszuschließen, sondern darum das Risiko abschätzen zu können. Damit - wenn man das Prinzip auf einem großen Firmenserver mit 10000-50000 Requests pro Tag einsetzen würde - ich vorausschauend sagen kann, mit wie vielen false positives ich rechnen muss und ob sich das dann noch lohnt.

Geändert von Marcusson (29-11-2006 um 12:48 Uhr)
Mit Zitat antworten
  #10 (permalink)  
Alt 29-11-2006, 12:51
TobiaZ
  Moderator
Links : Onlinestatus : TobiaZ ist offline
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
Blog-Einträge: 1
TobiaZ befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Logisch geht's um Kontaktformulare, Foren, et cetera und logisch kann man immer einen neuen, besseren Bot progen. Dass man JEDE Sperre mit entsprechendem Aufwand umgehen kann ist sonnenklar.
Mir geht es vielmehr darum, die real existierenden Bots vorübergehend auszusperren, als irgendwelche Fantasieprogramme, die es bis dato gar nicht gibt, oder die zur Zeit nur eine geringe Verbreitung haben.
es ist wohl keine Fantasie, dass Bots und Konsorten einen UA vorgaukeln.

Zitat:
Und Googlebot identifiziert sich via User agent, ebenso wie Yahoo und alle andere Suchmaschinen die mir bekannt sind (habe ich bereits erwähnt).
Dass du Logs hast, in denen es so ist, schließt nicht aus, dass es auch Fälle gibt, in denen es nicht so ist.

Zitat:
Außerdem schickt der Googlebot keine Formulare ab - also ist das uninteressant, den der Spam kommt nur über Post-Requests.
Deswegen die Nachfrage, was du sperren willst.
__________________
ERST LESEN: Unsere Regeln. | Ich hab schon Pferde kotzen sehn!

READ THIS: Strings richtig trennen/verbinden | JOINs, das leidige Thema | Wegwerf E-Mail Adressen

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #11 (permalink)  
Alt 29-11-2006, 18:22
Marcusson
 Registrierter Benutzer
Links : Onlinestatus : Marcusson ist offline
Registriert seit: Jan 2006
Beiträge: 241
Marcusson ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Dass du Logs hast, in denen es so ist, schließt nicht aus, dass es auch Fälle gibt, in denen es nicht so ist.
Okay - aber das musst du mir eigentlich nicht erzählen, denn das ist doch völlig trivial.

Mal ein Beispiel zum Verständnis:
Das ich 1000 rote Äpfel habe schließt selbstverständliche niemals aus, dass es auch einen blauen Apfel gibt. (das geht gar nicht bei Stichproben) Aber wen interessiert das? Die Frage (bezogen auf Äpfel) wäre ob man mit etwa 80% Sicherheit behaupten kann, dass mehr als 95% der Äpfel rot sind. Was interessiert mich also die theoretische Möglichkeit dass es 1 blauen Apfel gibt? Es interessiert mich nur dann, wenn du mit ausreichend hoher Sicherheit behaupten kannst, dass es die Anzahl der blauen Äpfel mindestens 1% der Gesamtmenge beträgt, weil erst die tatsächliche Existenz einen Einfluss hat. Dann müsste ich entweder eine größere Stichprobe nehmen und somit das Ergebnis absichern, oder aber die These verwerfen.

Das interessiert mich also nur in dem Moment, wo du mir ein Log zeigen kannst, in denen es nicht so war - bis dahin ist die Frage leider rein akademisch - theoretisch interessant, aber praktisch irrelevant.

Zitat:
Deswegen die Nachfrage, was du sperren willst.
Na, wenn es um Spam-Abwehr geht, ...
Natürlich Post-Requests an Formulare (hauptsächlich in Foren/Kontaktformularen/Gästebüchern). Und zwar solche Requests, die einen Referer senden, aber keinen User agent.

Dabei interessiert mich nicht die Theorie sondern die Praxis, denn theoretisch ist wie immer alles möglich. Also: ich will nicht wissen, was alles sein könnte, sondern was man tatsächlich in der Praxis beobachtet hat.

Ich fände es sehr nett und es würde viel helfen, wenn jemand in seine eigenen Server-Logs schauen könnte und hier postet, ob er meine Beobachtung, anhand seiner eigenen Logs bestätigen kann oder nicht. Zur Erinnerung, beobachtet hatte ich auf menem Server, dass Post-Requests mit Referer und ohne User Agent im Header zu fast 100% von Spam-Bots stammen.

Der Sinn dahinter ist gaaanz banal: wenn sich eine breite empirische Basis findet, welche diese Beobachtung bestätigt, dann lohnt es sich einen Filter darauf anzusetzen. Bestätigt sich die Beobachtung nicht, dann lohnt es nicht.

Das ist ein Aufwand von maximal 5-10 Minuten und es könnte mir und anderen Nutzern eventuell helfen, Spam-Angriffe auf einigen stark belasteten Servern zu reduzieren.

Selbstverständlich würden die bösen Jungs früher oder später nachrüsten, falls man das massenhaft filtern würde - aber nicht heute Abend, und selbst wenn es "nur" ein paar Monate dauert, hat man zumindest Zeit gewonnen und die Messlatte ein Stück höher gelegt.

Geändert von Marcusson (29-11-2006 um 18:36 Uhr)
Mit Zitat antworten
  #12 (permalink)  
Alt 29-11-2006, 18:43
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

"eine breite empirische Basis"? Ist ja lächerlich! Du redest hier von einem einfachen
if (count($_POST) && !empty($_SERVER['HTTP_REFERER'] && empty($_SERVER['HTTP_USER_AGENT'])).

Mit Spamerkennung hat das zwar nichts zu tun, denn Spam definiert sich über den Inhalt, aber wenn Headerdaten für dich ein Ausschlußkriterium sind, dann nutze es doch.

Massentauglich ist es keinesfalls, also kein Grund für mich, meine Logs zu sichten.
Mit Zitat antworten
  #13 (permalink)  
Alt 30-11-2006, 09:47
Marcusson
 Registrierter Benutzer
Links : Onlinestatus : Marcusson ist offline
Registriert seit: Jan 2006
Beiträge: 241
Marcusson ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Mein Gott - dann lass es eben bleiben. Kein Grund sich aufzuregen.

Selbstverständlich geht's nur um 1 zusätzliche Filtermöglichkeit und nicht um einen vollständigen Spam-Filter. Selbstverständlich definiert sich Spam über Inhalt - aber wer will bestreiten, dass der Inhalt mit technischen Mitteln erzeugt wird, die technischen Einschränkungen unterliegen?
Und warum sollte man das Wissen darüber welche Eigenschaften diese technischen Mittel aufweisen nicht vertiefen und ggf. auch ausnutzen?

Warum sollte die Menge an Code, die man dafür braucht, ein Kriterium sein? Wenn es mindestens 1 Fall gibt, in dem diese 1 Zeile bereits ausreicht um 100% der Spam-Requests auszusondern ohne auch nur einen einzigen false positive, dann ist das meiner Meinung nach lohnend näher untersucht zu werden. Und dass es leicht zu implementieren ist, betrachte ich eher als Bonus anstatt als Hindernis.
Mit Zitat antworten
  #14 (permalink)  
Alt 30-11-2006, 10:35
TobiaZ
  Moderator
Links : Onlinestatus : TobiaZ ist offline
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
Blog-Einträge: 1
TobiaZ befindet sich auf einem aufstrebenden Ast
Standard

Ich glaub so langsam hat hier jeder mitbekommen, dass du deine Methode schon als 100%ig ansiehst und nun unbedingt die Bestätigung haben willst. - die dir aber hier niemand so wirklich geben will.
Gründe haben wir genannt. Darauf eingehen willst du nicht. Gut.
__________________
ERST LESEN: Unsere Regeln. | Ich hab schon Pferde kotzen sehn!

READ THIS: Strings richtig trennen/verbinden | JOINs, das leidige Thema | Wegwerf E-Mail Adressen

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #15 (permalink)  
Alt 30-11-2006, 12:47
Marcusson
 Registrierter Benutzer
Links : Onlinestatus : Marcusson ist offline
Registriert seit: Jan 2006
Beiträge: 241
Marcusson ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Was ist so schwer daran?

Die Frage war, "kennt jemand einen Browser oder OS, dass den "User Agent" NICHT übermittelt" und aber einen Referer sendet bei einem Post-Request. Ganz einfach.

Die Antworten die ich bekam lassen sich kurz zusammenfassen als "könnte sein", "möglich wär's", "gibt's bestimmt" und "das interessiert mich sowieso nicht" gefolgt von "das ist lächerlich".

Was wäre denn so kompliziert gewesen an den Antworten "Nein, kenne ich nicht", oder "ja, denn: ich weiß der Browser X sendet mit OS Y einen Referer aber keinen User agent", oder vielleicht sogar: "ich wusste es nicht, habe aber in meinen Logs nachgesehen und keinen false positive finden können - die Idee könnte OK sein" bzw. "ich wusste es nicht, habe aber in meinen Logs nachgesehen und mindestens Z mal einen false positive gefunden - die Idee ist also Müll".
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 06:00 Uhr.