Я разрабатываю веб-приложение, используя java, где пользователь будет загружать zip-файл. Этот файл будет содержать файлы css, изображения, файлы javascript, флеш-файлы и т. Д. Zip-файл будет загружен в каталог webapp tomcat. Цель заключается в том, что пользователь будет загружать скин в виде zip-файла, и мой сервлет извлечет его в местоположение в webapp.Как защитить загрузку файлов в java
Моя забота заключается в том, как обращаться с безопасностью здесь. Пользователь может написать код атаки xss в файле js или другом файле. Все файлы находятся внутри zip-файла. Я могу проверить расширения или mime-тип zip-файла. Кроме того, какие другие действия я мог предпринять, чтобы предотвратить любую атаку. Любой пример, фрагмент кода будет высоко оценен.
Здесь существует неотъемлемый риск, который трудно смягчить (насколько я считаю) приемлемый уровень риска, когда вы имеете дело с «незащищенными» пользователями, то есть пользователями из большого большого дикого за пределами, а не с теми, кто имеет административные права для размещения любого типа файла на сервере. Здесь так много рисков. –
Итак, вы хотите проверить наличие атак из файла .js и возможных других? но мой первый вопрос заключается в том, почему бы не попробовать использовать антивирусный сканер с возможностями командной строки для сканирования файлов, поэтому вы сканируете каждый файл по мере его загрузки, если сканер вирусов не может быть и речи, возможно, посмотрите на онлайн-сканер VirusTotal.com , однако без надлежащего механизма эвристики новые атаки могут быть написаны и пройдут так же легко –
Вы уверены, что вам нужны они, чтобы иметь возможность загружать javascript и флеш-файлы? Не можете ли вы создать какой-то формат файла конфигурации, который они могут загрузить, и который потребляется вашим собственным кодом, чтобы обеспечить все, что им нужно? – greyfairer