【发布时间】:2012-05-08 00:52:31
【问题描述】:
背景:我有一个网站,人们可以在其中存储交易。作为交易的一部分,他们可以根据需要附上收据。
问题:如果允许用户将任何类型的文件扩展名上传到我的网站,是否存在安全风险?
信息:
- 用户将是唯一可以重新下载相同文件的人
- 用户将没有机会“运行”该文件
- 他们只能将其下载回给自己。
- 其他用户将永远无法访问其他用户的文件
- say 会有大小限制(比如 2mb)
更多信息:我最初打算将文件限制为“pdf/doc/docx” - 但后来意识到有些人可能想要存储 jpg 或 .xls 等 - 并意识到他们“可能”想要存储的文件列表非常大......
编辑:该文件将存储在 public_html 之外 - 并通过接受文件名(不是路径)的“readfile()”函数提供服务 - 所以有什么可以“扰乱”readfile ()?
【问题讨论】:
-
文件扩展名毫无意义 - 它真的不会告诉您有关文件的任何信息,尤其是因为用户可以轻松更改它。
-
确保您进行了基本的清理工作,这样用户就无法使用“myimage/../../../php.ini”之类的文件名
标签: php security codeigniter file-upload