Я смотрю, как я могу проверить, есть ли у загруженного файла вирус или нет через PHP. Какие существуют варианты, плюсы и минусы каждого и т.д.
Каковы мои возможности проверять наличие вирусов при загрузке PHP?
Ответ 1
ClamAV - бесплатный антивирус, обычно используемый в серверных приложениях.
php-clamav является расширением для привязки ClamAV к PHP. Вы можете проверить документацию .
Я нашел учебник о том, как использовать clamav в качестве Zend Framework Validator, который уже содержит инструкции по проверке загрузки файлов. Учебное пособие также должно помочь вам использовать его в других инфраструктурах или архитектурах.
Вы также можете вызвать clamav по интерфейсу командной строки с помощью clamscan
. Это требует установки clamav, но не расширения PHP. На стороне PHP вы можете shell_exec('clamscan myuploadedfile.zip');
затем проанализировать вывод. Линии, заканчивающиеся на OK
, являются безопасными файлами, строки, заканчивающиеся на FOUND
, являются вредоносными файлами.
Ответ 2
Вы можете использовать VirusTotal.com, у них есть API, который вы можете использовать для загрузки файлов, и они будут сканировать их с помощью нескольких антивирусных сканеров.
(к сожалению, их веб-сайт в настоящее время находится под техническим обслуживанием, но я ожидаю, что он скоро вернется)