我正在寻找如何通过PHP检查上传的文件是否有病毒。存在哪些选项,每个选项的优缺点等。
ClamAV是一种免费的防病毒软件,通常用于服务器应用程序。
php-clamav 是将 ClamAV 绑定到 PHP 的扩展。您可以查看他们的文档。
我找到了一个关于如何使用 clamav 作为 Zend Framework Validator 的教程,其中已经包含了有关如何验证上传文件的说明。本教程还应该帮助您在其他框架或体系结构上使用它。
您也可以通过命令行界面使用 clamscan
调用 clamav 。这需要安装 clamav 而不是 PHP 扩展。在 PHP 端,您可以shell_exec('clamscan myuploadedfile.zip');
然后解析输出。以 OK
结尾的行是安全文件,以 FOUND
结尾的行是恶意文件。
您可以使用
VirusTotal.com,他们有一个可用于上传文件的API,他们将使用多个病毒扫描程序对其进行扫描。
https://www.virustotal.com/