Представляют ли угрозу вредоносные файлы, загруженные с помощью форм, перед сохранением на диск?

#python #django #security #ubuntu

#python #django #Безопасность #ubuntu

Вопрос:

В настоящее время у меня есть форма, которая позволяет пользователям загружать фотографии с помощью Python / Django. Я хочу обойти все проблемы, связанные с обработкой вредоносных файлов, и просто загрузить их прямо в корзину S3. Теперь мой вопрос: безопасно ли для меня

  1. Принять СООБЩЕНИЕ
  2. Вместо сохранения на диск просто загрузите фотографию прямо в корзину S3 в серверной части

Или я все равно подвергну свой сервер риску, просто приняв запрос POST?

Ответ №1:

Это зависит от того, о какой вредоносности вы беспокоитесь.

  • Если вы обеспокоены тем, что ваш сервер заражен вирусом или чем-то еще, то, вероятно, да.

  • Если вас беспокоят «изображения», которые позже могут быть переданы другим пользователям вашим веб-приложением… а затем потенциально заражают компьютер пользователя, тогда определенно нет.

Комментарии:

1. Спасибо, Стивен! Вы случайно не знаете, как тогда защитить мой сервер?

2. Если вы беспокоитесь, используйте средство проверки на вирусы. Но если серьезно, вам нужно четко представлять, кого или что вы пытаетесь защитить.

3. Я пытаюсь защитить сервер от запуска вредоносного файла.

4. Ну, в Linux файлы не выполняются спонтанно. И для предотвращения случайного выполнения, вероятно, достаточно убедиться, что в файловом режиме нет «исполняемых» битов. Но также полезно запустить средство проверки на вирусы, чтобы выявить вещи, которые могут повредить другие работающие системы (например) Windows.

5. Конечно, это также зависит от вашего уровня паранойи 🙂

Ответ №2:

Файл malicius может быть использован хакером после загрузки на сервер из-за того, что он прост (иногда к нему можно получить доступ через браузер).Обычно, если полученный вами файл не имеет права на выполнение, риска нет. но если вы все еще беспокоитесь о самом файле, вы можете сделать это: 1. проверьте формат файла.(получать только jpg, png и т. Д.) 2. проверьте заголовок файла 3. не возвращайте реальный путь к файлу.

Комментарии:

1. Привет, Тиао, спасибо за ваш вклад. Итак, если я правильно понимаю, пока он никогда не выполняется, со мной все будет в порядке, и, следовательно, даже если я не пройду упомянутые вами проверки, все будет в порядке, пока я не записываю на диск?

2. не давайте файлу разрешение на выполнение, и все будет в порядке.

3. Понял. Большое спасибо, Тиао!