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