![]() |
Willkommen, Gast ( Anmelden | Registrierung )
![]() |
![]()
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 |
|
|
![]() |
![]()
Beitrag
#2
|
|
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 |
|
|
![]()
Beitrag
#3
|
|
____________________ ![]() 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?
|
|
|
![]()
Beitrag
#4
|
|
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 |
|
|
![]()
Beitrag
#5
|
|
____________________ ![]() 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 ![]() 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 |
|
|
![]() ![]() |
![]() |
Vereinfachte Darstellung | Aktuelles Datum: 12.07.2025 - 19:32 |