最近开发余遇到一个很棘手的问题 客户平台的安全级别很高
对文件上传那一块非常严格 平台内图片上传前端做了一个后缀的校验,
后台做的是用包头的方式做校验,但是文件的包头还是可以通过特定工具去修改
所以这种方式不可取,除了这两种还有别的方式校验文件吗 ,求大神指导呀
请修改文件头,替换为图片格式。
对文件头进行校验就好了
参考文档:https://blog.csdn.net/qq_29663071/article/details/79756381
最严格的就是用你已知的文件类型的解析程序分别解析,能解析的就算这个格式。
除此之外,别无办法。
如果是防外部用户的话,可以要求前端将图片转成base64位编码,然后进行一次加密,后端解密,然后重新生成图片文件;
如果是防内部用户的话,可以考虑后端使用图片编辑框架,尝试打开图片操作下,如果报错,即可判断不是图片文件