• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Referer verschwindet über window.open?

kolibri

New member
hallo zusammen..

ich schütze ein unterverzeichnis auf dem server durch folgende einträge im .htaccess...


Code:
<Limit GET>
SetEnvIfNoCase Referer domain1\.de access_is_ok
SetEnvIfNoCase Referer domain2\.de access_is_ok
SetEnvIfNoCase Referer domain3\.com access_is_ok
SetEnvIfNoCase Referer domain4\.com access_is_ok
order deny,allow
deny from all
allow from env=access_is_ok
</Limit>

sofern ich nun einen direkten link von einer dieser 4 domains auf dieses verzeichnis schicke, wird auch der inhalt angezeigt..ganz so wie es sein soll..

da ich aber zusätzlich noch ein downloaden der grafiken verhindern möchte, muss ich den rechtsklick und seite/quelltext sicher ausschalten.. dies bewerkstellige ich mit einer ausgabe durch ein perl-programm welches ich über <script language="javascript" src="programm.pl"></script> im quelltext aufrufe.. dieses wiederum gibt einen javascript quelltext aus...

Code:
document.write('<a href="#" onclick=\\'window.open("$d","","width=900, height=700 toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,copyhistory=no");\\'>$l</a>');


$d und $l sind jeweils der dateiname und der linktext der vom programm ausgegeben wird..

klicke ich nun auf den ausgegebenen link, erhalte ich einen request denied.. es wird also kein referer mit an den apache übergeben.. oder nicht der korrekte.. wie auch immer..

ich habe auch bereits versucht, testweise das document.write als direkten code auf die verweisende html-seite zu schreiben, da ich dachte, daß das dazwischengeschaltete perlprogramm den referer vielleicht verändert/nicht durchschleift.. was eigentlich unsinn ist.. aber probieren geht über studieren..
auch dies hatte nicht geholfen.. deswegen nun meine frage..

wird bei window.open der referer nicht übergeben? verändert? oder hat jemand eine idee, warum mir kein einlass gewährt wird???

herzlichen dank im voraus..

ps. das doppelte entwerden der hochkommas ist kein fehler.. es muss geschehen, da einmal perl entwerten muss und einmal javascript... selbstverständlich habe ich beim direkten html-test die korrekten angaben gemacht.. alle programme liegen selbstverständlich auf dem selben server in der selben domain.. um diesem tip vorzubeugen.. *lol*
 
Du kannst deinen Quelltext nicht schützen, rechtsklick hin oder her. Man kommt immer an deine Bilder oder den Quelltext wenn man will. Ich denke du machst dir da unnötig mühe.
 
Du kannst deinen Quelltext nicht schützen, rechtsklick hin oder her. Man kommt immer an deine Bilder oder den Quelltext wenn man will. Ich denke du machst dir da unnötig mühe.

lieber tom...

danke für deine sorge, aber lass es doch bitte meine sorge sein, ob die mühe unnötig ist oder nicht... wenn dieser referer übergeben werden würde, dann wäre der quelltext weitestgehend geschützt und man käme nur mit grösserer mühe heran.. und genau dies ist mein ziel!

also? niemand eine idee, warum der referer verloren geht?????
 
lieber tom...

danke für deine sorge, aber lass es doch bitte meine sorge sein, ob die mühe unnötig ist oder nicht... wenn dieser referer übergeben werden würde, dann wäre der quelltext weitestgehend geschützt und man käme nur mit grösserer mühe heran.. und genau dies ist mein ziel!

also? niemand eine idee, warum der referer verloren geht?????

wenn du meinst :D

Aber ich würde mal ein \ wegnehmen vor den Hochkommas. Des Weiteren solltest du dir mal deinen Quelltext anschauen den der Browser ausgibt, aso dass soll ja nicht gehen.
 
wenn du meinst :D

Aber ich würde mal ein \ wegnehmen vor den Hochkommas. Des Weiteren solltest du dir mal deinen Quelltext anschauen den der Browser ausgibt, aso dass soll ja nicht gehen.

*lach* ich sehe, du hast meinen beitrag nicht aufmerksam genug gelesen..

die beiden querstriche sind nötig, da dieser js-quelltext über ein perl-programm auf die seite ausgegeben wird... erster querstrich: dequote für perl, zweiter querstrich: dequote fürs ausführende javascript auf der seite.. mit nur einem querstrich gehts nicht, weil perl den ersten querstrich "frisst".. dann erhalte ich eine fehlermeldung vom ausführenden javascript... .

les weiter in meinem beitrag und du wirst sehen, daß ich auch bereits den quelltext auch auf einer nackten html-seite benutzt und getestet habe (natürlich dann ohne jegliche querstriche)... auch dieser verweis in das geschützte verzeichnis funktioniert nicht!!!! es liegt also eindeutig am javascript..

der ausgegebene quelltext ist in ordnung.. keinerlei fehler.. er ruft das popup auf und springt ins verzeichnis.. nur apache macht halt zicken und lässt mich nicht rein.. kann also nur ein fehlender/falscher referer sein!

gruss
 
tom.. um deine ungläubigkeit noch ein wenig zu füttern:

der schutz entsteht nachher durch eine mischung zwischen unwissenheit und nicht aufrufbarkeit...

die aufrufende seite wird erst im popup geöffnet und kann nicht per rechtsklick geöffnet werden (body oncontextmenu="return false"............), bei ausgeschaltetem javascript öffnet sich ja garnicht erst das popup.. :)

der teil unwissenheit entsteht dadurch, daß derjenige am ende nicht weiss, aus welchem verzeichnis die seite überhaupt aufgerufen wurde... das perl-script gibt erst zur laufzeit sein javascript frei, das popup zeigt lediglich den direkten link in das verzeichnis.. das aufrufende popup öffnet einen frame und leitet in diesem noch einmal weiter in ein anderes - geschütztes - verzeichnis..

derjenige der auf den code zugreifen möchte, muss schon einiges an erfahrung mitbringen, um heranzukommen! die klientel, die meine seite grösstenteils besucht, gehört nicht zu diesem personenkreis...
 

oh das wär schön, wenn ich dann imstande wäre, das zu testen. setzt es doch voraus, daß diese seite überhaupt erst geöffnet wird.. :) ich werde bei zugriff auf das verzeichnis direkt abgewiesen..

aber ich versuchs mal auf einer html-datei ausserhalb dieses verzeichnisses.. vielleicht sieht man dann schon was..
 
aber ich versuchs mal auf einer html-datei ausserhalb dieses verzeichnisses.. vielleicht sieht man dann schon was..

Ah, wie schlau. Türlich nicht mit der abgewiesenen Seite, es sei denn du öffnest sie in der .htaccess vorher. Es geht aber um die Funktion die ja falsch sein soll und den Referer schluckt.
 
Zurück
Oben