PHP上传图片如何防止图片木马?
PHP上传图片如何防止图片木马?
其实识别图片木马是很困难的,可以在一张正常的图片里加入一句话木马。
但是只要做到图片不会被执行,你的web服务器没有古老的解析漏洞,你的web程序不存在简单的包含漏洞,那么图片木马是基本可以防止的。
题主可以参考这个问题:
《php的mime处理问题》
单纯通过后缀名判断上传文件的类型肯定是不安全的,可以采取 mime
类型判断或者读取文件头字节来判断是否为图片。更甚者,题主可以用 GD
库来处理上传的图片。
我们现在系统的操作方法是先通过 mime
判断上传文件类型,如果为图片则通过 GD
函数处理生成 thumbnail
,同时保存 origin
图片文件。
其实吧,你只要降低图像质量,重新压缩一下就好了,木马神马的就统统干掉鸟……
重新转化一下应该就没有问题了吧
可以用linux服务器上的木马扫描软件,比如 Clamav 支持命令行执行的,上传之后就扫一下,最可靠,
$last_line = system('php /var/bin/clamdscan upload.jpg');
根据扫描结果就可以判断了
上传直接重新转码。