【发布时间】:2026-01-24 13:25:01
【问题描述】:
我想让用户将图像和视频上传到我的网站。通常我会检查jpg 或png 扩展的图像扩展。但是我通过上传一个 shell 来破解它来测试我的 web 的安全性,所以我将 shell 的扩展名更改为.jpg。
遗憾的是它已经正常上传到主机的文件夹并显示了我所有的文件,所以如果有人知道最好的方法来确保这个文件是一个视频或者这个文件是一个真实的图像,然后再将它上传到@@的主机987654326@Asp.net 网络表单。
【问题讨论】:
-
因此您希望允许用户将 jpg 或 png 文件上传到您的网站,但不允许用户上传欺骗性或间接键入或格式化的文件。我的猜测是,您最好的选择是获得一个您信任其代码的图像解析器来尝试加载文件并查看它是否成功。如果您偏执,请将检查分派给具有锁定权限的辅助进程。
-
查看*.com/questions/58510/… 以获得实际答案。 @Flydog57 的评论也是一种可行的方法,如果它可以解析为图像,它就是图像。
标签: c# asp.net image security file-upload