上传文件时过滤脚本,哈希验证成功则可下载文件

1、过滤脚本(及过滤脚本拓展名)

   //脚本过滤结束
     if(array_search("html",$arr) ||array_search("php",$arr) ||array_search("js",

     $arr)||array_search("css",$arr) ||array_search("htm",$arr) ){
     echo "<script>alert('非法文件');history.go(-1);</script>";

2、上传时将文件进行哈希

  hash_file(arg1,arg2);//arg1:哈希算法/arg2:文件路径

  输出哈希值

3、下载时先验证哈希值

  下载前先将文件进行哈希,再与上传时的哈希值进行比对。若哈希值相同,则说明问价名及文件内容没有被恶意篡改过,文件可被下载;若文件哈希值匹配不上,则弹出警告。

    原理:  hash_file函数将文件内容进行哈希,若文件内容改变,则哈希值改变。若文件内容改变则哈希值改变,可利用此函数防止恶意篡改文本及脚本的注入。

posted @ 2015-07-25 21:09  程序媛墨禾  阅读(242)  评论(0编辑  收藏  举报