PHP cкрипт загрузки файлов на сервер. Как избежать уязвимости скрипта ?

123
edogs software
На сайте с 15.12.2005
Offline
775
#11
S.E.O:
Он записывает файлы на сервер и тутже выводит ссылку на файл...Вы наверно не внимательно смотрели..

Мы посмотрели внимательно. Просто Вы не поняли о чем мы сказали.

Если Ваша задача в том что бы любой файл загрузить на сервер и положить его на сервер, то никаких "дыр" в Вашем скрипте быть не может, скрипт будет исправно загружать файлы на сервер и класть их на сервер.

Если Вас беспокоило что загрузят какие-нибудь скрипты или загрузят файлов на 1Гб или еще что-нибудь, то Вам следовало упомянуть об этом... и спросить как избежать этого. А в текущей задаче (читайте своё первое сообщение) Вы не говорите о том, что загрузка скриптов или больших файлов или еще что-нибудь Вас беспокоит, а скрипты для загрузки файлов используют с совершенно разными целями.

DIMON-UA:
$_FILES['filename']['type']

Грубейшая ошибка. Эта переменная совершенно не обязательно будет содержать тип файла, на нее нельзя полагаться. Это просто заголовок посылаемый клиентом.

S.E.O:
Как лучше делать то? Как я написал или как вы предложили ?

По разрешению...

Разработка крупных и средних проектов. Можно с криптой. Разумные цены. Хорошее качество. Адекватный подход. Продаем lenovo legion в спб, дешевле магазинов, новые, запечатанные. Есть разные. skype: edogssoft
SE
На сайте с 11.02.2007
Offline
13
#12
edogs:
По разрешению...

То есть как я написал ?

Обмен ссылками Авто-Мото, Пишу PHP скрипты любой сложности, Продажа Запчастей на Японские Авто и Спецтехнику
edogs software
На сайте с 15.12.2005
Offline
775
#13
S.E.O:
То есть как я написал ?

Так как Вы написали - код работать не будет в принципе, поэтому "нет, не так как Вы написали".

Может Вы всё-таки скажите фильтр на что Вам необходимо добавить к Вашему скрипту? Фильтров разных может быть много...

SE
На сайте с 11.02.2007
Offline
13
#14
edogs:
Так как Вы написали - код работать не будет в принципе

Поясните плиз почему так как я написал работать в принципе не будет ??????

SE
На сайте с 11.02.2007
Offline
13
#15
S.E.O:
Фильтров разных может быть много...

Согласен . Нужно чтоб пользователь мог загрузить только картинку

DU
На сайте с 20.10.2006
Offline
105
#16
edogs:

Грубейшая ошибка. Эта переменная совершенно не обязательно будет содержать тип файла, на нее нельзя полагаться. Это просто заголовок посылаемый клиентом.

Ух ты, а что еще может содержать кроме mime. Единственное, что может сделать злоумышленик это загрузить любой файл с расширением картинки. Но запустить в нем скрипт всеравно не получится. Согласен, если это только картинки, лучше проверять разрешение рисунка. Я писал это для случая если пользователь может загружать не только картинки, но и любые файлы которые разрешит администратор.

SE
На сайте с 11.02.2007
Offline
13
#17
DIMON-UA:
Единственное, что может сделать злоумышленик это загрузить любой файл с расширением картинки.

А давайте посмотрим что нам на это скажет товарищь edogs, будет очень интересно..

edogs software
На сайте с 15.12.2005
Offline
775
#18
S.E.O:
Поясните плиз почему так как я написал работать в принципе не будет ??????

Уже потому, что Вы так и не исправили ошибки.

DIMON-UA:
Ух ты, а что еще может содержать кроме mime.

Все что угодно.

$_FILES['filename']['type'] создается не на сервере, эта переменная просто берется из заголовков посылаемых пользователем при загрузке файла.

Вы действительно считаете что на информацию посылаемую пользователем в отношении типа файла можно полагаться?

SE
На сайте с 11.02.2007
Offline
13
#19
edogs:
Уже потому, что Вы так и не исправили ошибки.

Да нет там ошибок....

Напишите фильтр а не юлозьте на месте...

В достойной литературе написано совсем не то что вы здесь советуете, а точнее даже только критикуете не написав ни одной строчки кода... Ответ на поставленный мной вопрос я знаю заранее, а вы здесь честно занимаетесь туфтологией...

Докажите что это не так напишите свой скрипт и выложите его .... а там посмотрим , кто из нас чего стоит ...

edogs software
На сайте с 15.12.2005
Offline
775
#20
S.E.O:
Да нет там ошибок....

Даже не смешно. Скопируйте свой код в php файл да запустите... может интерпретатору поверите.

S.E.O:
Напишите фильтр а не юлозьте на месте...

Вы до сих пор не предьявили требования к фильтру, за все 2 страницы. Писать фильтр не зная что он должен делать это как минимум странно. Сформулируйте четко что Вы хотите отфильтровать - тогда можно будет четко ответить как это сделать.

S.E.O:
В достойной литературе написано совсем не то что вы здесь советуете, а точнее даже только критикуете не написав ни одной строчки кода... Ответ на поставленный мной вопрос я знаю заранее, а вы здесь честно занимаетесь туфтологией...

В общем Вы уже начитались "достойной" литературы, заранее знаете все ответы, а сюда пришли пофлудить?

S.E.O:
Докажите что это не так напишите свой скрипт и выложите его .... а там посмотрим , кто из нас чего стоит ...

Мы дали Вам информацию - сможете - воспользуетесь ей, не сможете - не воспользуетесь.

123

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий