Refrer schutz bei einer per js includeten PHP

breytex

Mitglied
Hallo zusammen.

Kurzes Problem...
Das Szenario:
Eine HTML datei includet eine JS Datei.
Diese wiederrum gibt den code für eine Grafik aus, welche aus einer php datei besteht.
(<img src="datei.php" />)

Ich möchte NICHT, dass die .php Datei alleine ohne die zwischen geschaltete .js ausgegeben werden kann.

daher hab ichs mit nem "die" in der php Datei versucht.
( if($_SERVER['HTTP_REFERER']!="http://localhost/test/test.js") die('cheater'); )

So.. Das Problem: HTTP_REFRER gibt nicht die JS datei sondern die HTML Datei aus, welche die JS includet.
Somit funktioniert das ganze nicht.

Da die htmldatei auf vielen websites eingebunden wird, kann ich das nicht einfach mit einem "für jedes neue Refrermöglichkeit einsetzen" umgehen.
Hat jemand eine Lösung`?

mfG
 
Du könntest es wie folgt machen: Generiere mit JavaScript einen zufälligen Schlüssel und sende diesen an den Webserver, der ihn in einer Sitzung speichert. Wird nun „datei.php“ aufgerufen, wird geprüft, ob ein Schlüssel vorhanden ist und dieser aus der Sitzung gelöscht; ist keiner vorhanden, war der Aufruf unerlaubt.
Ein wirklicher Schutz ist das allerdings auch nicht.
 
Also um es genauer zu sagen geht es um einen Counter, der per JS eingebunden wird.
D.h. es würde als schutz reichen, denn keiner versucht sowas zu cracken, nur um einmal einen hit per direkter PHP-datei auszuführen.

Das Rroblem ist jetzt, dass ich wirklich nur basic JS kann...
Funktioniert das Server session per JS genau so wie das per PHP?
Mit anderen Worten: speichert es die session gleich?
Oder muss ich dafür wieder eine PHPdatei beanspruchen, die den key in die session schreibt?
 
Zurück