@ktretyak

Что я должен знать о безопасности хранилища картинок?

Хочу разрешить пользователям своего сайта сохранять картинки, собираюсь контролировать следующие параметры:
1. залогинен ли пользователь
2. какой размер картинки
3. какое количество уже загруженных картинок
4. разрешено ли расширение

Этого достаточно для безопасности работы хранилища? Нужно ли контролировать каким то способом наличие вирусов, или в случае картинок они не пройдут?
  • Вопрос задан
  • 90 просмотров
Пригласить эксперта
Ответы на вопрос 2
@eandr_67
web-программист (*AMP, Go, JavaScript, вёрстка).
Куда важнее проверять формат загружаемого файла, чем его расширение. Любому файлу можно сделать абсолютно любое расширение: например, присвоить скрипту удалённого доступа к файловой системе расширение jpg.
В общем, надо всегда проверять, что это действительно картинка, а не что-то, мимикрирующее под картинку.
Ответ написан
Кроме очевидных вещей, типа размера, и т.п., нужно брать и на стороне сервера пересоздавать картинку, например, средствами imagemagic. Иначе могут подсунуть rarjpeg, или png бомбу, или ещё что-то нехорошее.... Ну и следить за актуальностью версии компонентов сервера - сам веб-сервер, imagemagic и остальное - ведь могут какую-то дырку найти и использовать её. Таким образом, что бы не залил пользователь, на сервере будет храниться именно нормальная картинка, без всяких лишних вещей. Да, о загрузке сервера надо подумать, особенно если кто-то захочет серверу что-то тяжёлое скормить, что съест все ресурсы, и хостеру не понравится...
Ответ написан
Ваш ответ на вопрос

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

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