Autor Zpráva
xlifer
Profil
Nevím z jakého důvodu, ale někdy se mi stává, že uživatelům chodí prázdný referer přes ověření

$_SERVER['HTTP_REFERER']


Nevím jak získat/ověřit referer, aby fungoval na 100% všude/všem?

Obecně mi lze o zabezpečení, abych ověřil, že požadavek ze skriptu přišel z webu,
nikoliv z venku.

Děkuji za rady a tipy na řešení.
fuckin
Profil
Jelikož to lze lehce podstrčit tak bych nato nevsázel.
Nox
Profil
xlifer:
Referer posílá prohlížeč a je na něm jestli ho pošle nebo co pošle.... když bys poslal sám http požadavek, tak si do něj můžeš napsat co chceš.... nelze na to spoléhat
xlifer
Profil
Aha, takže to je zase na straně klienta, resp. konfigurace prohlížeče?
Když vypnu nebo zablokuju podporu posílání hlavičky, tak mám smůlu?

Lze celou situaci tedy nějak řešit jinak spolehlivě?
ava
Profil *
xlifer:
Aha, takže to je zase na straně klienta, resp. konfigurace prohlížeče?
Když vypnu nebo zablokuju podporu posílání hlavičky, tak mám smůlu?
>
Lze celou situaci tedy nějak řešit jinak spolehlivě?

Přesně s tímto mám taky problém! Potřeboval bych přijímat pouze HTTP POŽADAVKY z vlastního serveru, ale REFERERA využívat nelze - opravdu se dá velmi lehce podstrčit modifikací hlaviček ještě před jejich odesláním..

Zatím mám jen toto:
SetEnvIf Referer "^https://www\.example\.com/" local_referal
<Directory /secure>
Order Deny,Allow
Deny from all
Allow from env=local_referal
</Directory>

Neví někdo metodu, jak toho bezpečně dosáhnout????
Alphard
Profil
ava:
Jak bylo uvedeno výše, referer závisí na ochotě uživatele ho posílat, já ho třeba mám zakázany.
Lepší bude napsat, o co přesně se snažíte. Jestli jde např. o bezpečnost, často se na „vstupní stránce pro akci“ generují tokeny, které se následně před provedením akce ověřují.
ava
Profil *
Alphard:
Je to mnohem složitější.....
Čili zkráceně, ale určitě Vás to donutí se zamyslet :D přemýšlim nad tím už pár týdnů..
Potřebuji, aby když mi z mého webu, na kterém prezentuji HTML5 video pomocí <video> tagu, někdo seekne (posune) video např. do půlky, což znamená, že pomocí Content-range začnu načítat zdroj MP4 od prostředka, jsem dokázal do právě tohoto HTTP REQUESTU, vyvolaného BOHUŽEL pomocí clienta prohlížeče, vtěstnat svůj vlastní ověřovací identifikátor (např. token) a pro response ho už jen ověřit. Za důsledek to má to, že pokud na daný MP4 soubor (doopravdy to není MP4 soubor ale PHP script!) mi někdo pošle http-request, data NEDOSTANE! Čili, mám problém s tím, že nedokážu modifikovat tento http požadavek, jelikož ho nevolám já ale client - a to i přesto, že videoplayer leží na mém serveru :(

Ideas? :P
Alphard
Profil
A ten token se musí měnit při posunu videa? Nemůže tam být od začátku v GET?
ava
Profil *
Potřebuju ho tam proto, že mi nejde jen o to zprostředkovat dané video danému jednomu člověku, ale přehrávat mu video, ke kterému on sám nemůže mít přístup (jinak nežli skrze můj videopřehrávač), tzn. video nesmí mít možnost nikdy začít stahovat.. Mám to velice dobře ošetřené pro spuštění videa (generování ticketu s platností 1 pomocí POST formuláře), nicméně při novém požadavku na jiný úsek videa nemám jak zasáhnout zřejmě :(
Díky za Váš čas a zamyšlení ;)

Vaše odpověď

Mohlo by se hodit

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: