Maison  >  Article  >  développement back-end  >  PHP判断图片是否为标准图片(防止篡改图片下传)

PHP判断图片是否为标准图片(防止篡改图片下传)

WBOY
WBOYoriginal
2016-06-13 11:03:28846parcourir

PHP判断图片是否为标准图片(防止篡改图片上传)

在项目安检时发现,某系项目中图片上传只是对后缀名进行了检查,导致含有某些代码的‘图片’也能上传到服务器,有重大隐患。写了一个方法,检验图片的正确性。(此方法无法完全验证,将图片源码中加了代码无法判断,不过将图片处理比如加水印以后,含有代码的图片在当作php执行时会失效)

?

/* *判断上传的图片是否为标准图片 *$file $FILES['']获取的值 *return 正常图片 true ;  异常图片 false; */function isimage($file){	if ($file["type"] == "image/gif") {		@$im = imagecreatefromgif($file['tmp_name']);	} elseif ($file["type"] == "image/png" || $file["type"] == "image/x-png") {		@$im = imagecreatefrompng($file['tmp_name']);	} else {		@$im = imagecreatefromjpeg($file['tmp_name']);	}	if($im==false){		return false;	}else{		return true;	}}
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn