Я думаю о сохранении загруженных документов в папку вне webroot и загрузке загрузок с помощью скрипта, используя readfile(file)
.
Однако мне интересно, будет ли достаточно следующего для устранения любых угроз:
$filename = basename($_FILES['uploaded_file']['name']);
$ext = substr($filename, strrpos($filename, '.') + 1);
if (($ext == "doc") && ($_FILES["uploaded_file"]["type"] == "application/msword"))
{
execute rest of the code
}
Я читал людей, которые рекомендовали использовать finfo_open()
, но мой сервер работает под php 5.3.0, поэтому я не могу его использовать. Я пытался использовать mime_content_type()
, но он всегда выдает мне «текст / обычный текст» с любым типом файла, через который я отправляю (я не знаю, делаю ли я что-то не так с этим).
Могу ли я добавить что-нибудь, чтобы сделать этот процесс более безопасным?