Мне нужно сканировать загруженные файлы на наличие вирусов на сервере Linux, но я не знаю, как это сделать.
Какие у меня есть варианты, если они есть? Меня также интересует, как работают сканеры, когда несколько пользователей отправляют несколько файлов одновременно.
Больше похоже на проверку файлов документов, отправленных пользователем. Если кто-то отправляет zip-файл через форму ввода, я хотел бы иметь возможность проверить его, прежде чем позволить ему появиться, например, на доске обсуждений.





Я бы посмотрел на Антивирус моллюска. Он предоставляет программу clamscan, которая может сканировать данный файл и возвращать индикацию прохождения / непрохождения. Это бесплатно и регулярно автоматически обновляет свою базу данных.
Что касается интеграции такого продукта в процесс загрузки файлов, это будет зависеть от того, какой процесс загрузки файлов вы действительно используете.
Clamav отлично работал, и его было на удивление легко заставить играть вместе с python.
Если вас беспокоит производительность, подумайте об использовании clamd / clamdscan в качестве своей реализации. clamd работает как демон, поэтому все затраты на инициализацию выполняются только один раз. Когда вы затем сканируете файл с помощью clamdscan, он просто передает файл в разветвленный clamd для фактического сканирования. Если у вас тонна трафика, это намного эффективнее.
Если у вас есть проблемы с производительностью, вам следует подумать об использовании коммерческого продукта. В наши дни у большинства крупных игроков есть версии для Linux / Unix.
Я думаю, что Yahoo использует Symantec для почты. Думаю, Hotmail пошел с Trend. Я попробую clamd / clamscan сейчас и попытаюсь получить совет от F-Secure, поскольку это практически единственная финская компания, которая занимается подобными вещами.
Вам следует попытаться найти поставщика антивируса, у которого есть общедоступный API для его сканера. Таким образом вы можете программно сканировать файл. В конечном итоге это значительно упростит задачу, чем пытаться возиться с другими процессами через сценарий загрузки.
Точно, есть идеи, кто из них может быть?
связанный с комментарием iDisposable, OPSWAT также имеет API для сканирования файлов (включая zip-архивы и другие архивы)
Вот мои результаты для ClamAV при тестировании на известные вирусы (проблема в ничего из этого не должно было пройти):
+-----------+------------------------------+
| Results | File |
+-----------+------------------------------+
| infected | AdvancedXPFixerInstaller.exe |
| pass | auto.exe |
| pass | cartao.exe |
| infected | cartoes_natal.exe |
| pass | codec.exe |
| pass | e421.exe |
| pass | fixtool.exe |
| infected | flash_install.exe |
| infected | issj.exe |
| infected | iwmdo.exe |
| infected | jobxxc.exe |
| infected | kbmt.exe |
| pass | killer_cdj.exe |
| pass | killer_javqhc.exe |
| infected | killer_rodog.exe |
| infected | kl.exe |
| infected | MacromediaFlash.exe |
| infected | MacromediaFlashPlayer.exe |
| infected | paraense.exe |
| infected | pibzero.exe |
| pass | scan.exe |
| pass | uaqxtg.exe |
| pass | vejkcfu.exe |
| infected | VIDeoSS.exe |
| infected | wujowpq.exe |
| pass | X-IrCBOT.exe |
+-----------+------------------------------+
Вы запускали их через коммерческие сканеры? Раньше я был администратором продукта, который параллельно запускал файлы через 4 коммерческих сканера. У меня был тестовый корпус из нескольких сотен вирусов, и ни один коммерческий сканер не смог их найти ...
Еще нет. Этот тестовый пакет был рекомендован местным антивирусным сообществом, поэтому я предполагаю, что они представляют самые последние и наиболее распространенные вирусы. Я знаю, что уровень обнаружения обычно составляет от 20% до 80%, что на самом деле не так уж и хорошо.
Вы должны посмотреть МетаСкан opswat. Этот инструмент управляет обновлением и сканированием файлов на нескольких ядрах. Он входит в состав AVG, CA eTrust ™. ClamWin, ESET NOD32 Antivirus Engine, MicroWorld eScan Engine, Norman Virus Control и VirusBuster EDK. Кроме того, он вызовет нортоны и тому подобное. Преимущество состоит в том, что вы запускаете несколько движков для работы с файлом.
Clamscan будет сканировать файлы после того, как они будут сохранены, и не предотвратит загрузку или скачивание зараженного файла.
У меня есть кальмар (https + cache) <-> HAVP (с clamAV) <-> Настройка обратного прокси Tomcat. HAVP (http://www.server-side.de/) - это способ сканировать http-трафик через ClamAV или любое другое коммерческое антивирусное программное обеспечение. Это предотвратит загрузку зараженных файлов пользователями.
Тем не менее, он не работает при загрузке, поэтому он не препятствует хранению файлов на серверах, но предотвращает загрузку файлов и, следовательно, их распространение. Так что используйте его с обычным сканированием файлов (например, clamscan)
Вы хотите сканировать общие файловые системы или почтовый трафик на MTA?