move_uploaded_file( $_FILES["images"]["tmp_name"][$key], "img/" . $_FILES['images']['name'][$key])
上面的代码显示我的图片的新位置是
"img/" . $_FILES['images']['name'][$key]).
如何将其存储在变量中,以便我可以在mysql数据库中传递此位置以检索图像。
答案 0 :(得分:0)
因为name
值中设置的文件名是基于用户提供的文件名,并且因为您没有对内容或名称进行任何明显的清理,所以用户可以上传可由apache执行的文件并给它一个名字:
../../../wickedevilnaughtyfile
并将它放在主机系统的根目录或它不属于的类似讨厌的地方,它可以从Web浏览器执行,因为http服务器(apache或whatevs)可以访问它,因为它创建了文件。
这不是一个真正的答案,但正如评论中所要求的那样,安全威胁需要超过600个字符才能解释
顺便说一句,如果我在这个有点简洁的解释中错过任何内容或者出错了,请随时在答案中编辑并签名。