【发布时间】:2012-05-26 11:28:54
【问题描述】:
我正在寻找如何通过 PHP 检查上传的文件是否有病毒。存在哪些选项,每个选项的优缺点等。
【问题讨论】:
-
只是避免文件上传中不需要的扩展名。检查如何限制文件扩展名stackoverflow.com/questions/10456113/…
-
避免不需要的扩展并不能避免病毒。
标签: php file-upload antivirus virus
我正在寻找如何通过 PHP 检查上传的文件是否有病毒。存在哪些选项,每个选项的优缺点等。
【问题讨论】:
标签: php file-upload antivirus virus
ClamAV 是一个免费的杀毒软件,常用于服务器应用程序。
php-clamav 是一个将 ClamAV 绑定到 PHP 的扩展。你可以查看他们的documentation。
我找到了tutorial on how to use clamav as a Zend Framework Validator,其中已经包含有关如何验证上传文件的说明。该教程还应该帮助您在其他框架或架构上使用它。
您也可以通过其命令行界面使用clamscan 调用clamav。这需要安装 clamav 而不是 PHP 扩展。在 PHP 端可以shell_exec('clamscan myuploadedfile.zip'); 然后解析输出。以OK 结尾的行是安全文件,以FOUND 结尾的行是恶意文件。
【讨论】:
您可以使用 VirusTotal.com,他们有一个 API 可用于上传文件,他们会使用多个病毒扫描程序对其进行扫描。
(不幸的是,他们的网站目前正在维护中,但我希望它会尽快备份)
【讨论】: