Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 15 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

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

Парни, написал небольшой скрипт который закачивает файл на мой сервер и возвращает ссылку на его скачивание
Код:

<?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 в 21:49.
niockasd вне форума   Ответить с цитированием
Старый 18.05.2019, 11:03   #2
ADSoft
Профессионал
 
Регистрация: 25.02.2007
Адрес: Татарстан
Сообщений: 3,396
Репутация: 914

icq: 303-206-418
skype: ad-soft.info
По умолчанию

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

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

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

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

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Движок обменника brownb PHP 1 07.11.2016 21:58
Создание файлового менеджера TatkaBoiko Паскаль 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


09:52.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru