$_SERVER['HTTP_REFERER']
Jester
- php
Merhaba!
Gerade habe ich die (bittere) Erfahrung gemacht, dass ich mich
auf $_SERVER['HTTP_REFERER'] nicht unbedingt verlassen kann.
Gibt es ein verlässliches Äquivalent, anhand dessen man den
http-referer eindeutig bestimmen kann?
Gruß - Jester
Die Welt ist grau.
Und bunt.--
sh:( fo:| ch:? rl:? br:& n4:( ie:| mo:| va:) de:> zu:) fl:| ss:| ls:[ js:|
Hi,
Gerade habe ich die (bittere) Erfahrung gemacht, dass ich mich
auf $_SERVER['HTTP_REFERER'] nicht unbedingt verlassen kann.
Gibt es ein verlässliches Äquivalent, anhand dessen man den
http-referer eindeutig bestimmen kann?
nein, den jeder kann den referer verändern bzw. manipulieren! Wozu willst Du den eigentlich wissen?
ciao
romy
Merhaba!
Wozu willst Du den eigentlich wissen?
Von einer Seite X aus rufe ich ein PHP-mail-script auf
und will dabei sicherstellen, dass es von der Seite X
aufgerufen wurde, um dritte von der Benutzung des mailers
auszuschließen.
Die Welt ist grau.
Und bunt.
Hi,
Von einer Seite X aus rufe ich ein PHP-mail-script auf
und will dabei sicherstellen, dass es von der Seite X
aufgerufen wurde, um dritte von der Benutzung des mailers
auszuschließen.
nur so rumgesponnen, wenn Du von der Seite x aus irgendetwas mitverschickst, was nur von dort gekommen sein kann, hättest DU auch eine Identifizierungsmethode.
Irgendein Wert, der dann ausgewertet wird.
per Post oder so (Get wäre wahrscheinlich nicht hilfreich, da man dies ja dann sehen könnte und somit auch nachstellen -> ausser Du verschlüsselst es)
ciao
romy
Danke, Romy!
Du hast mir den entscheidenden Tipp gegeben:
Beim Aufruf des mailers benenne ich eine Dummy-Datei um
und überprüfe im mailer, ob sie entsprechend heißt.
Ollie
Danke, Romy!
Du hast mir den entscheidenden Tipp gegeben:
Beim Aufruf des mailers benenne ich eine Dummy-Datei um
und überprüfe im mailer, ob sie entsprechend heißt.Ollie
Das ist auch nicht "sicher".
Wer den referer fälscht, kommt der Methode noch schneller auf die Sprünge...
Mach es anders: Bein Aufruf der Seite erzeugst Du sowas wie eine ID. Zum Beispiel mit md(microtime()).
Die trägst Du jetzt in eine Tabelle (mysql) ein, schreibst die Daten in ein Hidden- Feld des Formmailers.
Nach Versand der Daten überprüfts Du die Deine ID, ob sie in der Datenbank ist, löschst diese und versendest die Nachricht.
Eines ist noch wichtig: niemals (niemals) übergib die Maildresse via Formularfeld. Versteckt oder nicht, solche Skripte werden zum spammen mißbraucht.
fastix®
nur so rumgesponnen, wenn Du von der Seite x aus irgendetwas mitverschickst, was nur von dort gekommen sein kann, hättest DU auch eine Identifizierungsmethode.
Irgendein Wert, der dann ausgewertet wird.per Post oder so (Get wäre wahrscheinlich nicht hilfreich, da man dies ja dann sehen könnte und somit auch nachstellen -> ausser Du verschlüsselst es)
was per POST in einem formular verschickt wird, bekomme ich auch durch einen kurzen blick in den quelltext heraus, und kann das formular damit nachbasteln.
deshalb ungeeignet.
Moin!
Von einer Seite X aus rufe ich ein PHP-mail-script auf
und will dabei sicherstellen, dass es von der Seite X
aufgerufen wurde, um dritte von der Benutzung des mailers
auszuschließen.
Das kannst du grundsätzlich nicht verhindern, nur komplizierter machen (aber auch nicht wirklich.
Alles das, was du auf der zweiten Seite prüfen kannst, mußt du auf der ersten Seite dem Benutzer mitgeschickt haben, damit er es dir wieder zurückschicken kann. Da du offensichtlich grundsätzlich allen Besuchern den Mailer anbietest, mußt du auch allen Besuchern, die mailen wollen, die zu prüfenden Daten schicken. Es hält niemanden davon ab, für den Mißbrauch erst deine Seite 1 anzufordern, die darin enthaltenen Informationen (versteckte Formulardaten, Cookies, etc.) zu entnehmen und dann an dein Mailer-Skript zurückzuschicken - inklusive der "Nutzdaten", die du nicht zulassen willst.
Es gibt als wirkliche Lösung leider nur Schwarz oder Weiß: Entweder akzeptierst du, dass du niemanden vom Mailen ausschließen kannst - dann solltest du die automatisierte Nutzung zwar irgendwie kompliziert machen, aber grundsätzlich verhindert das gar nichts -, oder du läßt nur eine geschlossene Benutzergruppe den Mailer benutzen, so dass du ein Passwort abfragen und somit mitloggen kannst, welcher Benutzer den Mailer wie häufig benutzt. Dann darf aber nicht mehr jeder Benutzer beliebig mailen.
- Sven Rautenberg
Merhaba!
Hmmm, Datei-Operationen schienen mir doch nicht ganz das
gelbe vom Ei zu sein, deswegen habe ich eine SessionID
benutzt.
Was sagen die Sicherheitsexperten?
http://www.tumalon.de/pages/flohmarkt.php
(Einzig der 'Bestellen'-Button sollte zum Formular weiterleiten,
direkte Adress-Eingabe soll zum exit führen)
Danke - Ollie