sorry_i_noob
@sorry_i_noob

Может ли злоумышленник, например, через форму для загрузки фоток на сайте загрузить вредносное ПО?

Здравствуйте. Я не силен в безопасности. Меня интересует такой вопрос. Может ли злоумышленник, например, через форму для загрузки фоток на сайте загрузить вредносное ПО? И если да, то как это происходит? Загрузил он какой-либо файл, а дальше что? Этот файл лежит там и никому не мешает. Если я и открываю его, то через специальные программы, например, ImageMagick. Которые не каждый файл могут открыть, а только изображения.

Если такое возможно, то поможет ли мне валидация на тип? Тип, который идет после точки в названии файла. Или это просто изменение названия? И ничего толком не дает в плане защиты? Если так, то как защищаться?
  • Вопрос задан
  • 184 просмотра
Решения вопроса 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Может. Надо проверять "тело" файла на корректность того, что это - именно файл изображения. Банально - попробовать получить размер изображения с помощью функций для используемого языка программирования.
Например, для PHP: функция GD-библиотеки getimagesize().

Также, нужно недопускать запуск всего подряд из папок-хранилищ!
(из-за админов - я не могу линк запостить сюда...)
Для понимания, сделайте поиск в гугл (вместе с кавычками!):
"Надежная защита веб-сайта от большинства видов атак"
и почитайте по 1-й ссылке.

-------------------------------------------------

Добавлю ещё, что можно изначально сохранять в "отстойник"/"хранилище" - директорию выше webroot и недоступную из-вне (т.е. веб-сервер никак не сможет вернуть содержимое файла или сделать его запуск).

Далее, 2 варианта:
1. Если это "отстойник" - проверяем и переносим куда нужно
2. Если "хранилище" - проверяем и оставляем там, потом читаем скриптами веб-сервера прям из той директории.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
CityCat4
@CityCat4 Куратор тега Информационная безопасность
Внимание! Изменился адрес почты!
Не только может, а непременно так и сделает, если ему дать такую возможность ;)
Ответ написан
POS_troi
@POS_troi
СадоМазо Админ, флудер, троль.
Выше xmoonlight и CityCat4 уже всё сказали.
Хочу только добавить что в каталоге куда загружаются "например фотки" должно быть запрещено запуск чего либо, как на уровне php так и самой системы.
Ответ написан
gobananas
@gobananas
finishhim.ru
Может. Надо проверять всё в файле - расширение, тип. Работает это так, что он сначала загружает файл фото, потом смотрит откуда эта картинка стала открываться, загружает php-файл, например, с командой удалить всё в этой папке, на папку выше или ещё что-то и набирает его адрес в браузере, таким образом запуская его.
Ещё для защиты неплохо бы запретить исполнение любых файлов в директории с фото, например с помощью htaccess
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы