【问题标题】:Help with security doubt (PHP MYSQL APACHE Windows)帮助解决安全问题(PHP MYSQL APACHE Windows)
【发布时间】:2010-07-05 16:10:33
【问题描述】:

例如,我有这个 url:http://localhost/miSite/uploads/,通过这样做:
http://localhost/miSite/uploads/../includes/,这会导致目录(包含)linsting。

如果你能告诉我解决这个问题的方法,那就太好了。

【问题讨论】:

  • 如果您真的不希望人们访问这些文件,您应该查看 .htaccess 或更好地从根目录移动它们。当然,您仍然可以使用 -Indexes,但这只会造成错误的安全感。

标签: php mysql windows apache


【解决方案1】:

目录索引

您还可以使用 .htaccess 来禁用索引或目录浏览。默认情况下,此选项在服务器的配置文件中处于打开状态。要禁用此功能,请将此行添加到您的 .htaccess 文件中:

Options -Indexes

【讨论】:

  • 如果这解决了问题,那么将来有问题的人有机会接受答案。谢谢
【解决方案2】:

使用相对引用的可能性不是一个真正的问题:

http://localhost/miSite/uploads/../includes/

解决

http://localhost/miSite/includes/

无论如何都可以直接解决。如果你有敏感文件,你应该把它们移到网络根目录之外,或者阻止目录列表。

真正的问题是以下是否可行:

http://localhost/../miSite/includes/

它将在文档根目录之外提供文件。但这不会发生在最新的网络服务器上。

【讨论】:

  • 感谢您的帮助,这不是什么大问题 :)
【解决方案3】:

您可以做 3 件事,从最不安全到最安全。

  1. 按照@Lizard 的建议禁用索引
  2. 在 htaccess 文件中制定规则以拒绝访问不允许人们访问的文件夹
  3. 将不应访问的文件移到 DocumentRoot 之外。

【讨论】:

    猜你喜欢
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-30
    相关资源
    最近更新 更多