2016-09-19 2 views
1

В настоящее время мы используем blobstore для обработки пользовательских загрузок (и, скорее всего, перейдем к GCS). Наше решение позволяет пользователям загружать файлы, но недавно я обнаружил, что пользователи могут потенциально загружать вирус (сознательно или неосознанно). Чтобы смягчить этот риск, я рассматриваю ограничение типов файлов изображениями и/или PDF (это будет проверено на стороне сервера). Это предотвратит загрузку вируса или я также буду выполнять проверку вирусов в файлах после их загрузки? Если вы запускаете антивирусную проверку, есть ли простое решение для этого с GAE или мне нужен отдельный экземпляр облачных вычислений, который запускает собственную проверку на вирусы?Сканирование вирусов GCS и Blobstore и ограничение типов файлов

Благодаря Роб

+1

Для сканирования вирусов лучше всего использовать некоторые внешние API. Это действительно зависит от вашего варианта использования. Если вы можете разрешить пользователям загружать только фотографии и PDF - конечно, вы должны это сделать. –

ответ

1

Каждый раз, когда вы делегировать полномочия, чтобы загрузить объект ненадежного клиента, существует риск того, что клиент или вредоносный код создает, как клиент может загрузить вредоносный контент. Насколько мне известно, ни служба Blobstore Google App Engine, ни облако хранилищ Google не обеспечивают проверку на вирусы как услугу, поэтому вам придется принести свои собственные. Ограничение типов файлов фактически не препятствует загрузке плохого контента, так как некоторые браузеры будут игнорировать указанный тип файла после обнюхания содержимого файла и визуализации или выполнения вредоносного объекта.

Если вы хотите сделать это самостоятельно для загрузки Google Cloud Storage, наилучшей практикой было бы ограничить загрузку, чтобы иметь личный ACL, выполнить любую необходимую дезинфекцию, а если определено, что она действительна, измените ACL на разрешить более широкие разрешения.

/через Vinny P: Есть онлайн инструменты вирусов сканирования можно использовать программно, или вы можете запустить антивирусную двигатель на Compute Engine или в App Engine Flexible Environment. В качестве альтернативы, если они должны быть файлами, находящимися под управлением пользователя, не более 25 МБ, вы могли бы upload the files to Google Drive, которые будут обеспечивать антивирусное сканирование, и retrieve the files via the Drive API.

+0

Прохладный, думал о загрузке gdrive для обработки сканирования. –