Ako sa da zmenit/zistit meno uploadovaneho suboru.

Nazdar.
Nevie niekto, ci sa da zistit/nastavit meno uploadovaneho suboru?
priklad:
je nebezpecna stranka, ktora includuje subory
include($_GET["filename"]);
ak by sa mi podarilo nastavit filename na meno suboru v tmp adresari, tak by som includol moj php skript, a tym by som sa dostal do systemu.

Nevie niekto o tom?

dik
To nejde. Jméno TMP souboru je přístupné v jakési proměnné $_FILE['userfile']['tmp_name'], nebo $HTTP_POST_FILES['userfile']['tmp_name'], či tak nějak, to najdeš v manuálu. Nicméně ten soubor je po dokončení běhu skriptu automaticky smazán. Takže ho tam už nenajdeš. Viz. http://php.ftp.cvut.cz/manual/cs/features.file-upload.php
no dobre, suhlasim, ale ak spravne uhadnem to filename, tak sa to naincluduje za behu toho programu, a ak budem mat v mojom.. vytvor subor tam a tam, co mi bude mat moznost vytvorit dalsi, tak som v systeme.

ten tmp subor je priblizne v tvare php? (alebo dakom podobne) ja potrebujem pozmenit tie otazniky na moje daco.

Teoreticky v rovnaky cas na 2 roznych serveroch by to nemohlo vygenerovat ten isty string?

pripadne skusat tych 50^6 kombinacii asi nieje velmi rozumna cesta, ak ked tade by asi cesta viedla.. (len za aky cas)

A btw nechapem preco pouzivas php manual z cvut.cz. Na php.net mas o 8 mesiacov novsi.
Jaký používám manuál je moje věc. To jméno tmp souboru je zcela náhodný řetězec. I kdyby ten skript běžel setinu sekundy, nevím jak bys stihnul uhádnout jméno toho souboru.
prepac za ten manual, je to iba moj maly postreh. myslel som to v dobrom

to nahodne meno nieje az take nahodne.
teoreticky aj session id sa generuje nahodne.

ak mas 2 pocitace, nastavis v ccku seed na rovnake cislo, tak random ti hadze rovnake cisla.

ak by som uhadol seed npr. zo session id, tak by sa mozno dalo zistit meno toho suboru dopredu.

postup by mozno mohol vyzerat takto>
vygenerujeme stranku, zobrazime session id, najdeme seed, vygenerujeme meno noveho tmp suboru, nacitame stranku s predopkladanym menom suboru (metodou post aj so suborom), skriptik sa prevedie a ja som v systeme...

alebo kludne by to mozno mohlo byt aj takto ..
ak apache (PHP) ma daku funkciu, cez ktoru sa da nastavit tmp meno uploadovaneho suboru, tak nieje problem to spravit.

dik za reakciu
No o tom zdali má nebo nemá Apache možnost nastavení tmp jména souboru nic nevím, takže neporadím. Nicméně tvoje teorie je vpodstatě správná až na jeden detail. Ten tmp soubor tam je opravdu jen velmi krátkou dobu než ho skript spracuje a bylo by velmi nesnadné ho zavolat z prohlížeče i kdybychom jeho jméno znali a věděli kdy ho posíláme. Museli bychom server bombardovat požadavky pomocí nějakého cyklu abychom se trefili. Navíc je otázka zdali je adresář kam se ukládají tmp soubory přístupný zvenku pomocí prohlížeče. Bych řekl že není a pokud by byl, dá se to zakázat.
ty si ma asi nepochopil.

ja predpokladam ze ex. stranka na ktorej je nieco taketo:
include $_REQUEST["stranka"];

ak na tuto stranku poslem poziadavok
POST /?straka=/tmp/php? HTTP/1.1
host: ..
User-agent: ..
a prilozim tam este subor

tak ten subor je tam ulozeny na tu dobu, kym ide ten skript. S tym ja problem nemam.

nepredpokladam ze niekto ma nastavenu cestu, kde sa ukladaju upl. subory do cesty kde je webstranka.


nevie niekto nahodou, kde by bolo dake forum, ktore by bolo na takuto temu viac kvalifikovane? (moze byt aj en)

dik
No dobrý, ale co myslíš tím "existuje stránka ... Je to tvoje stránka? Jestli jo tak jí předělej ať nepředáváš jméno souboru přes GET a máš po problému.
nie ta stranka je serveru, ktory mam LEGALNE naburat
Jo ták, tos měl říct hned že se snažíš něco zbourat. Já si myslel, že se snažíš odstarnit problém u sebe.

V tom případě ale je třeba zkoušet, zkoušet a zase zkoušet :o)
tak nikto nepozna dake forum, na ktore chodi viac odbornikov?

napriklad dake forum v anglictine..
?