ru.slanov 20 Опубликовано: 18 сентября 2011 Рассказать Опубликовано: 18 сентября 2011 Хочу залить файл на сервер с название manuals_php.pdf или phpmyadmin.jpg, вылетает ошибка Hacking attempt! Нашел фильтр на имена: if( stripos ( $image_name, "php" ) !== false ) die("Hacking attempt!"); if( stripos ( $image_name, "phtml" ) !== false ) die("Hacking attempt!"); if( stripos ( $imageurl, "php" ) !== false ) die("Hacking attempt!"); if( stripos ( $image_name, ".htaccess" ) !== false ) die("Hacking attempt!"); я понимаю проверка на расширение файла, но зачем проверку на название делать? Цитата Ссылка на сообщение Поделиться на других сайтах
Critical Error 155 Опубликовано: 18 сентября 2011 Рассказать Опубликовано: 18 сентября 2011 Как по мне так это плюс больше, чем минус. Вы создайте текстовый файл с расширением txt, напишите в нем код <?php echo "Привет мир!"; ?>[/CODE] закиньте на сервер через ftp и запустите. Тогда все поймете. Поэтому проверка идет не только на расширение, но и на наличие этих сочетаний букв. Но думаю это не спасет если в имени файла нету этих сочетаний. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
ru.slanov 20 Опубликовано: 18 сентября 2011 Рассказать Опубликовано: 18 сентября 2011 (изменено) Автор Как по мне так это плюс больше, чем минус. Вы создайте текстовый файл с расширением txt, напишите в нем код <?php echo "Привет мир!"; ?> закиньте на сервер через ftp и запустите. Тогда все поймете. Поэтому проверка идет не только на расширение, но и на наличие этих сочетаний букв. Но думаю это не спасет если в имени файла нету этих сочетаний. Forbidden You don't have permission to access /uploads/files/codetest.txt on this server. [/code] Все равно логики не вижу, содержание файла не проверяется, но проверяется название. Тогда нужно менять фильтр, сделать проверку на содержания и расширение, в названии файла запустить скрипт никак не получится, а значит и опасения здесь не оправданы. Изменено 18 сентября 2011 пользователем rSteLlMi Цитата Ссылка на сообщение Поделиться на других сайтах
WWW.ZEOS.IN 1 161 Опубликовано: 18 сентября 2011 Рассказать Опубликовано: 18 сентября 2011 /uploads/.htaccess<FilesMatch "\.([Pp][Hh][Pp]|[Cc][Gg][ii]|[Pp][Ll]|[Ph][Hh][Tt][Mm][Ll])\.?"> Order allow,deny Deny from all </FilesMatch>В названии файла не должно быть три буквы подряд php Цитата Ссылка на сообщение Поделиться на других сайтах
ru.slanov 20 Опубликовано: 18 сентября 2011 Рассказать Опубликовано: 18 сентября 2011 (изменено) Автор Все же правильнее будет сделать проверку именно расширение файла. if( stripos ( $serverfile, ".php" ) !== false ) die("Hacking attempt!"); Изменено 18 сентября 2011 пользователем rSteLlMi Цитата Ссылка на сообщение Поделиться на других сайтах
Adobe 111 Опубликовано: 18 сентября 2011 Рассказать Опубликовано: 18 сентября 2011 Да кстати, тоже столкнулся с подобной проблемой, посидел потупил, понять ниче не мог. Потом просто переименовал, залил, переименовал обратно + в базе новое имя Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.