Referrer mit PHP abfragen |
Willkommen, Gast ( Anmelden | Registrierung )
Referrer mit PHP abfragen |
14.09.2005 - 15:18
Beitrag
#1
|
|
____________________ Gruppe: Admin Beiträge: 1.220 Mitglied seit: 20.10.2001 Mitglieds-Nr.: 3 |
Hi,
kann ich per PHP irgendwie "verhindern", dass jemand ein Formular meiner Seite von extern aufruft und benutzt ohne es quasi händisch über meine Seite ausgefüllt zu haben? Ich überlege noch mit einem Hidden Feld zu arbeiten, welches ein Passwort aus einer includeten PHP Datei einbindet. Das sollte doch funktionieren, oder? Referrer auslesen habe ich versucht, aber wenn ich auf meine Seite abfrage, klappt es und die Seiten die das Formular extern benutzen haben keinen Referrer :-( Sowas kann aber auch bei "regulären" Benutzern vorkommen ... Hmm ... mit dem Passwort scheint mir eine brauchbare Lösung zu sein, die mir allerdings auch erst beim Posten dieses Artikels in den Sinn gekommen ist. Hm, lass ich mal hier stehen, vielleicht haben ja andere noch andere Ideen. Grüße Andreas |
|
|
14.09.2005 - 21:47
Beitrag
#2
|
|
Kommt Zeit, kommt Rat, kommt Conrad! Gruppe: Mods Beiträge: 1.169 Mitglied seit: 21.11.2001 Wohnort: Altenkirchen, Westerwald Mitglieds-Nr.: 42 |
Hi,
wie wär's mit einer htaccess Datei der ein Zugreifen über die Domaingrenze verhindert? cu Conny |
|
|
14.09.2005 - 22:07
Beitrag
#3
|
|
____________________ Gruppe: Admin Beiträge: 1.220 Mitglied seit: 20.10.2001 Mitglieds-Nr.: 3 |
ZITAT(Conny @ 14.09.2005 - 22:47) wie wär's mit einer htaccess Datei der ein Zugreifen über die Domaingrenze verhindert? Wenn ein Formular von extern die Seite aufruft, weiß ich nicht, ob das dadurch abgefangen wird. Immerhin soll die Seite ja aufgerufen werden können.Mal schauen ... im Moment ist Ruhe. Morgen komme ich nicht dazu ... Freitag mache ich das mit dem Passwort mal komfortabel. Grüße Andreas - müde :-/ |
|
|
15.09.2005 - 8:17
Beitrag
#4
|
|
looks good Gruppe: User Beiträge: 63 Mitglied seit: 06.02.2002 Wohnort: Köln Mitglieds-Nr.: 263 |
Mir kommt da noch die Möglichkeit in den Sinn, mit Sessions zu arbeiten.
Evtl. Nachteil: Deine Besucher müssen Cookies aktiviert haben. Sonst könntest Du auf der aufrufenden Seite eine Session starten, in der Session eine Variable mit einem bestimmten Wert definieren und diesen auf Deiner Formularseite abgleichen. Gruß Stephan |
|
|
15.09.2005 - 15:44
Beitrag
#5
|
|
Anwärter auf W3.org Mitgliedschaft Gruppe: User Beiträge: 550 Mitglied seit: 28.11.2001 Wohnort: Berlin Friedrichshain Mitglieds-Nr.: 107 |
Hallo Andreas
Hast du auch Probleme damit, dass jemand versucht herauszubekommen, ob sich dein Formular zum Versand von Emails eignet? Ich habe in den letzten 2 Wochen gelegentlich Einträge in der Linkliste einer von mir betreuten Seite, in denen jemand versucht, alle Felder des Formulars mit nichtexistenten Emailadressen der betreffenden Domain zu belegen und einen Emailheader anzuhängen, der im Bcc-Feld an die Adresse "bergkoch8@aol.com" weiterleiten soll. Das Auswerteskript versendet diesen Eintrag aber nicht, da es ihn ja nur in der DB ablegt und mich informiert, dass ein neuer Eintrag in die Link-DB eingefügt wurde. Das ganze ist also nicht mehr als lästig. Ich würde es aber auch gern verhindern, weiß aber nicht wie, da die Felder (außer dem für die URL) alles mögliche enthalten können dürfen (Text in verschiedenen Sprachen, Zahlen etc. pp.). Was ein im Formular mitgeschicktes Passwort betrifft: Wenn es aus einem Include kommt, ist es dann immer das gleiche Passwort? Dann schaut sich das Skript vielleicht im Quelltext um und erkennt das Passwort beim n-ten Aufruf des Formulars als solches. Wenn es dann selbiges in seine Übertragung einfügt, kannst du den Request wieder nicht von den gewünschten unterscheiden. Nur mal so zur "Bedacht". Tschö, Auge |
|
|
15.09.2005 - 21:07
Beitrag
#6
|
|
Kommt Zeit, kommt Rat, kommt Conrad! Gruppe: Mods Beiträge: 1.169 Mitglied seit: 21.11.2001 Wohnort: Altenkirchen, Westerwald Mitglieds-Nr.: 42 |
Hallo,
ZITAT ...da die Felder (außer dem für die URL) alles mögliche enthalten können dürfen... DAS könnte man doch entgegen wirken, zumindest für das @ Zeichen. Wenn eines der Felder (ausser e-Mail) ein @-Zeichen hat, wird das Formular nicht versendet. (Änlich wie bei 'nolongwords') cu Conny |
|
|
15.09.2005 - 21:23
Beitrag
#7
|
|
____________________ Gruppe: Admin Beiträge: 1.220 Mitglied seit: 20.10.2001 Mitglieds-Nr.: 3 |
ZITAT(Auge @ 15.09.2005 - 16:44) Wenn es aus einem Include kommt, ist es dann immer das gleiche Passwort? Dann schaut sich das Skript vielleicht im Quelltext um und erkennt das Passwort beim n-ten Aufruf des Formulars als solches. Wie soll es das machen, wenn es nur key="$passw" sieht und $passw in der include Datei benannt wird ... die das Script nicht auslesen kann?
|
|
|
15.09.2005 - 23:25
Beitrag
#8
|
|
Anwärter auf W3.org Mitgliedschaft Gruppe: User Beiträge: 550 Mitglied seit: 28.11.2001 Wohnort: Berlin Friedrichshain Mitglieds-Nr.: 107 |
ZITAT(Andreas @ 15.09.2005 - 21:23) ZITAT(Auge @ 15.09.2005 - 16:44) Wenn es aus einem Include kommt, ist es dann immer das gleiche Passwort? Dann schaut sich das Skript vielleicht im Quelltext um und erkennt das Passwort beim n-ten Aufruf des Formulars als solches. Wie soll es das machen, wenn es nur key="$passw" sieht und $passw in der include Datei benannt wird ... die das Script nicht auslesen kann?Du willst doch das Passwort in ein hidden-Feld eintragen. Damit ist dieses Feld mitsamt dem Passwort im HTML-Quelltext da und somit durch ein Skript grundsätzlich auslesbar. Wenn das Skript "gut" programmiert ist, merkt es sich, dass ein (dieses) Feld immer mit dem gleichen Wert vorbelegt ist. Dann wird es diesen Wert fürderhin auch mit übermitteln. Also, weil es das Passwort mitteilt, wird es in deinem Sinn gültig sein. Tschö, Auge Der Beitrag wurde von Auge bearbeitet: 15.09.2005 - 23:28 |
|
|
16.09.2005 - 6:47
Beitrag
#9
|
|
Weiss zuviel!! Gruppe: Mods Beiträge: 668 Mitglied seit: 19.04.2002 Wohnort: Grimmen Mitglieds-Nr.: 385 |
Hallo,
wenn ich das jetzt richtig verstehe, was bisher diskutiert wurde, dann geht es darum, dass niemand das aus einen Script (mal egal ob PHP oder ...) generierte Formular als HTML "klaut" und es benutzt, um gelinde gesagt Andreas' zu belästigen, oder? Das mit dem Passwort ist doch nicht so dumm. Ich sehe das so: 1. Möglichkeit eine Art Timestamp generieren, beim Auswerten der Daten eine Toleranz - sagen wir von 5 Minuten - einbauen und nur wenn der Timestamp die Toleranz bedient, dann wird das Formular verarbeitet 2. Möglichkeit sessionähnlich beim Aufruf den generierten Timestamp in einer Tabelle speichern, beim Auswerten auf Existenz prüfen, nach Verabeitung löschen, ggf. einen Verfallszeitraum einbauen, et voila, die große böse Masse ist draußen Ich glaube nicht, dass man einen lebenden Menschen von einem Bot unterscheiden könnte. |
|
|
16.09.2005 - 7:39
Beitrag
#10
|
|
____________________ Gruppe: Admin Beiträge: 1.220 Mitglied seit: 20.10.2001 Mitglieds-Nr.: 3 |
ZITAT(Auge @ 16.09.2005 - 0:25) mitsamt dem Passwort im HTML-Quelltext da und somit durch ein Skript grundsätzlich auslesbar. Stimmt, ich hatte wieder mal Tomaten auf den Augen und nicht daran gedacht, dass PHP (mit welchem das Formular erstellt wird) ja nur das HTML an den Browser/Script ausliefert ZITAT(Auge) eine Art Timestamp generieren, beim Auswerten der Daten eine Toleranz - sagen wir von 5 Minuten - einbauen Sowas habe ich mir gestern abend nach dem Lesen von Auges Beitrag auch gedacht. Mal schauen ob ich da heute beim Babysitten Zeit zu finde. MIt Sessions habe ich mich noch nicht beschäftigt ...Hintergrund ist, dass ich auf www.filmfacts.de Gewinnspiele anbiete (zur Zeit 2) und offensichtlich die Formulare automatisiert von externen Seiten ausgefüllt und abgeschickt werden. Erkennt man daran, dass man tausende von Mails innerhalb weniger Stunden erhält, aber die Zugriffszahlen nicht steigen Leider wird in diesen Fällen auch kein Referrer übertragen. Der Timestamp würde das Problem tatsächlich schon lösen, denke ich. Das Problem, welches Auge beschreibt ZITAT Hast du auch Probleme damit, dass jemand versucht herauszubekommen, ob sich dein Formular zum Versand von Emails eignet? kenne ich inzwischen auch. Bei eine Seite, die ich für einen Kollegen gebaut habe, wird das Gästebuch regelmäßig mit sowas zugemüllt. Da filtere ich auf Wörter wie "MIME" oder "boundary" ...Grüße Andreas |
|
|
Google Bot |
Beitrag
#
|
Google Ads |
|
|
|
Vereinfachte Darstellung | Aktuelles Datum: 26.04.2024 - 20:18 |