Zabránění stahování souborů z webu – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Zabránění stahování souborů z webu – PHP – Fórum – Programujte.comZabránění stahování souborů z webu – PHP – Fórum – Programujte.com

 

Honza
~ Anonymní uživatel
451 příspěvků
11. 11. 2009   #1
-
0
-

Potřeboval bych poradit:
Jak zabránit tomu, aby nebylo možné stahovat soubory z webu?
Konkrétně - mám v adresáři na webu soubory videa (swf,flv, avi, wmv,...) a ty jsou na webu návštěníkům přehrávány přehrávačem. Ve zdrojovém kódu je však možno dohledat, kde je přehrávaný soubor umístěn a jaký má název. Přímým zadáním adresy souboru pak je možné soubor z webu stáhnout. Je možno tomu nějak zabránit pomocí PHP?
Díky za případné náměty.
Honza

Nahlásit jako SPAM
IP: 83.208.25.–
z_moravec
~ Redaktor
+3
Posthunter
11. 11. 2009   #2
-
0
-
Nahlásit jako SPAM
IP: 147.251.29.–
Spát lze čtyři hodiny denně, spát déle je nemístný přepych.
Thomas Alva Edison
KIIV
~ Moderátor
+43
God of flame
11. 11. 2009   #3
-
0
-

To z_moravec : jenze to se k tomu nedostane ani prehravac

Nahlásit jako SPAM
IP: 80.188.94.–
Program vždy dělá to co naprogramujete, ne to co chcete...
new_pope0
Newbie
11. 11. 2009   #4
-
0
-

No da sa to vyriesit nejakym riadenim pristupu v "specifickych pripadoch", ale pokial sa ma dostat k tomu prehravac ako pisal KIIV tak to nejak jednoduch asi vyriesit nejde. ale pokial na nieco prides tak napis, aby sme vedeli do buducna :smile3:

Nahlásit jako SPAM
IP: 82.119.109.–
z_moravec
~ Redaktor
+3
Posthunter
11. 11. 2009   #5
-
0
-

To KIIV : Ajo, jsem si neuvědomil, že přehrávač na to bude šahat přes http.

Nahlásit jako SPAM
IP: 147.251.29.–
Spát lze čtyři hodiny denně, spát déle je nemístný přepych.
Thomas Alva Edison
insider0
Věrný člen
11. 11. 2009   #6
-
0
-

ted mozna placnu blbost, ale dalo by se to udelat pres php soubor - "nacti-video.php?video=asdfg", kde uzivatel neuvidi zdroj souboru a v php pak osetrit, zda k tomu nejak pristupuje primo ... (coz me ted nenapada jak, mozna pres referer)
v tom souboru pak bude mimo kontroly napr file_get_contents, nebo fread ...

Nahlásit jako SPAM
IP: 147.32.96.–
I don't want to see you go,[br] The sky is over[br] Even though we can't afford[br] The sky is over,[br] The sky is over us.[br][br] CIVILIZATION IS OVER
bukaj_0010
Věrný člen
11. 11. 2009   #7
-
0
-

Honza
Jestliže má mít uživatel možnost si video nějakým způsobem (Flash, <video>, …) přehrát, video se musí vždy minimálně jednou k němu stáhnout. Tomuto jednomu stažení zabránit nemůžeš. Navrhované řešení: přehrávač bude k videu přistupovat přes „proxy“ skript (á la ), kterému se předloží token vygenerovaný při odesílání stránky s vloženým videem. Tenhle token bude taky uložený na serveru a poté, co PHP skript pošle video, token na serveru smaže (nebo nějak „zneplatní“). Video bude odesláno pouze tehdy, existuje-li token a zároveň je platný.

Když si uložíš k tokenu i referer, UA string apod. a budeš je kontrolovat, nebude jednoduché to video získat přímo a většina lidí to vzdá. Ale některé prohlížeče neposílají referer (a některé nevím, kdy přesně apod.), některé zase UA string, takže zase se na tyhle věci nedá spoléhat a bude to chtít hodně zkoušení.

Myslím si, že většinu lidí od přímého stažení odradí už jen to, že video půjde stáhnout jen jednou, takže budou muset stopnout prohlížeč ve vykreslování stránky, aniž by podnikl požadavek na to video (protože to zneplatní token a budou-li chtít zadat URL videa do prohlížeče, tak je budeš moci hezky poslat do těch správných míst :-)).

Nahlásit jako SPAM
IP: 88.101.128.–
Jak se správně ptát? -> http://www.hash.cz/inferno/otazky.html[br][br] Po programování je člověk hladovej.
marioff0
Expert
14. 11. 2009   #8
-
0
-

a nieco take ako vygenerovat nahodny string, ulozit ho do db pre daneho uzivatela v jeho sedeni, nasledne ho poslat ako premennu do flash prehravaca (toto neviem ako sa robi, o flashi neviem skoro nic), ktory ziska zase cez nejaky script presnu adresu (samozrejme za pomoci stringu ktory mu bol zaslany) a okamzite zmaze string z db... video sa ale musi potom nahrat do toho flash prehliadaca, nie ako samostatny flv subor... len neviem ci sa to da... pokial by niekto stiahol prehravac s videom asi sa neda len tak dekompilovat? cize je takmer nemozne (aspon robotmi) zistit priamy link...

alebo sa mylim... mozno by vediel niekto moju myslienku rozviest...

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
KIIV
~ Moderátor
+43
God of flame
14. 11. 2009   #9
-
0
-

To marioff : porad si muzes tu stranku stahnout, vytahnout odkaz a ten stahnout samostatne.. nejspis budes muset delat i nejakou kontrolu user-agenta a i to se da obejit.. nevim jestli ten prehravac posila i nejake dalsi info..
mozna testnout treba hodit to na link pres dejme tomu deset redirectu.. a pocitat s tim ze ma na redirect treba jen 5sekund..
ale nemusi to umet prehravac nasledovat.. taky by se clovek mohl trefit nad limit.. a roboti to samozrejme obejdou :)
mozna k tomu brat jeste referera ale to zase nemusi prehravac posilat, scripty to budou posilat jen kdyz se to naprogramuje

Nahlásit jako SPAM
IP: 80.250.1.–
Program vždy dělá to co naprogramujete, ne to co chcete...
KIIV
~ Moderátor
+43
God of flame
14. 11. 2009   #10
-
0
-

mozna prehravaci jen predat odkaz kde to je, ale musel by jeste poslat nejake heslo .. treba vhodne generovane z odkazu ..
problem je v tom, ze ten flash ma clovek fyzicky na kompu a muze si ho dekompilovat...

Nahlásit jako SPAM
IP: 80.250.1.–
Program vždy dělá to co naprogramujete, ne to co chcete...
marioff0
Expert
14. 11. 2009   #11
-
0
-

To KIIV : no ale myslel som tak ze ci sa neda nejakym sposobom napr poslat do prehravaca premenna trebars nieco ako ?kod=56fa4sdr45a4we5f4we64f ktory prehravac zase posle inemu scriptu (resp. priamo na db) ktory za pomoci odoslaneho kodu zisti url videa... to vsetko by sa dialo vo "vnutornostiach" toho prehravaca... cize bude si moct stiahnut iba prehravac priamo s videom... a to mu bude asi nanic...


ano bude musiet dekompilovat... ale nato sa urcite vykasle... a pojde vykradat inde :D

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
d.mostek0
Návštěvník
14. 11. 2009   #12
-
0
-

Nejlepší je pole mě řešení, které psal bukaj_001. Sám se podobné řešení použil v jiné situaci. Ale napadla mě ještě jedna věc. Asi je to blbost a je to spíš jít na komára s tankem, ale proč ne.
Co to video převést na base64 a dá ho do texťáku. Samozřejmě, že šikovnější člověk si všimne toho že je to base64, ale tak někoho to možná odradí. A pak v tom přehrávači to dekódovat zpět a přehrávat. Je to dost neefektivní na výkon, ale třeba se toho někdo chytne vylepší to.

Nahlásit jako SPAM
IP: 88.146.211.–
www.dominik-mostek.cz
bukaj_0010
Věrný člen
14. 11. 2009   #13
-
0
-

marioff
Token (kód) pouze s určitou platností, viz moje řešení .

marioff & KIIV
Myslím, že jakkoli to zesložiťovat redirecty apod. ve výsledku moc nemá cenu. Jelikož je HTTP bezstavový protokol, každý požadavek se dá napodobit, a tak ať nějaký flashplayer, či cokoli něco do požadavku přidá, dá se to odchytit, zanalyzovat, ,,napodobit``.

Osobně, když to určité videu budu tak nutně chtít mít uložené na disku (což nevím, jestli je v dnešní době, kdy je připojení na každém rohu pro lidi až tak důležité) a nebudu ho moci sehnat někde jinde, vezmu nějaký nástroj na snímání obrazovky a natočím si to. Nepředpokládám, že by kvalita výchozího videa takto umisťovaného na stránkách byla o moc větší než to, co nasnímám.

Nahlásit jako SPAM
IP: 88.101.128.–
Jak se správně ptát? -> http://www.hash.cz/inferno/otazky.html[br][br] Po programování je člověk hladovej.
Lordest0
Super člen
14. 11. 2009   #14
-
0
-

sorry ale tato tema podla mna nema zmysel..
ako povedali ludia nadomnou, video sa takcitak raz musi stiahnut a to znamena ze aj urcite sa da nejako uchovat do hdd
btw.: vsak youtube co je celosvetovy sa myslim o to pokusal a predsa sa to nepodarilo :)..

Nahlásit jako SPAM
IP: 85.216.242.–
Vrfy
~ Anonymní uživatel
1 příspěvek
29. 11. 2009   #15
-
0
-

Obávám se, že přes všechny možné obrany daný soubor vždy půjde nějak uložit, ať už ho někdo najde v tempu, či použije nějaký doplněk firefoxu...

Nahlásit jako SPAM
IP: 90.180.200.–
w3m0
Grafoman
29. 11. 2009   #16
-
0
-

Myslím též, že to zabezpečit nelze. Cokoli vidí uživatel, to se k němu nějakým způsobem odeslalo a odchytit to půjde vždycky. Tuším, že Youtube se o to taky snaží, přesto algoritmus už je známý stejně jako pouhý javascript kód, jak video stáhnout.

Nahlásit jako SPAM
IP: 84.42.151.–
Sa Nata A Na. Howgh
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 33 hostů

Podobná vlákna

Stahovaní souboru — založil svobodicz

C# - Stahovani souboru — založil Habl

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý