Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2019, 20:13   #1
niockasd
Пользователь
 
Регистрация: 01.12.2015
Сообщений: 82
По умолчанию Безопасность файлового обменника

Парни, написал небольшой скрипт который закачивает файл на мой сервер и возвращает ссылку на его скачивание
Код:
<?php
$unicfilename = uniqid('file_') . '.tmp';

$usergaent = $_SERVER['HTTP_USER_AGENT'] ;

$uploaddir = $_SERVER['DOCUMENT_ROOT'].'/transfer/files/';			
$blacklist = array(".phtml", ".php", ".php2", ".php3", ".php4", ".html", ".htm", ".cgi", ".pl", ".fcgi", ".fpl", ".shtml");
$size_maximum = 31457280;													

$uploadfile = $uploaddir . basename($_FILES['userfile']) . $unicfilename;
$size = $_FILES['userfile']['size'];

if ($size > $size_maximum) exit('filesize!');
if ($usergaent != 'UPLOADER_FILES') exit();

foreach ($blacklist as $item)
    if(preg_match("/$item\$/i", $_FILES['userfile']['name'])) exit('filetype!');
	
	
$siteload = 'http://site.ru/transfer/files/'.basename($_FILES['userfile']).$unicfilename; 

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile   ) ) {
echo '{"url":"'. $siteload .'"}';
} else {  
   echo "error";
}

?>
почитал про безопасность, решил отбросить все скрипты + сохранение файла под собственным расширением, насколько данный подход безопасен ?
На что еще нужно обратить внимание..

В теории я могу и проверку на расширение даже выкинуть?

Последний раз редактировалось niockasd; 17.05.2019 в 20:49.
niockasd вне форума Ответить с цитированием
Старый 18.05.2019, 10:03   #2
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,150
По умолчанию

И зальют тебе Шелл. Берём php файл, переименовывает ему расширение например в .crc или любое какое хотим и все...
ADSoft вне форума Ответить с цитированием
Старый 18.05.2019, 21:53   #3
niockasd
Пользователь
 
Регистрация: 01.12.2015
Сообщений: 82
По умолчанию

ну это хорошо, а как бороться....
Я так понимаю, если уже принудительное изменение расширения от шела не спасет то уже нечего не спасет...

В htaccess отключил скрипты в директории хранения файлов. Они как текст показываются. Но опять таки там все на расширение завязано.

Последний раз редактировалось niockasd; 18.05.2019 в 21:57.
niockasd вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Движок обменника brownb PHP 1 07.11.2016 20:58
Создание файлового менеджера TatkaBoiko Паскаль, Turbo Pascal, PascalABC.NET 3 10.09.2013 18:08
Ловля файлового пути саша40 Общие вопросы Delphi 3 20.12.2012 15:59
Выбор файлового менеджера Ibanez Wizard Свободное общение 29 22.11.2011 18:08
скрипт файлового менеджера ZGG PHP 1 11.04.2009 21:50