考虑这样的网址请求的网络服务:
samplehost.com/here/comes/a/path
此后面的app将采用路径(在.com
后面)并查找具有相对于已定义本地目录的此路径的文件。
因此,假设此公共目录为/home/user/files
,上述网址将提供文件/home/user/files/here/comes/a/path
写这篇文章的时候,当有人请求网址时会遇到什么问题:
samplehost.com/../secret
卷曲和浏览器都不能发送此网址。或者更确切地说,在这两种情况下,webapp都会收到删除点点的路径:secret
这种机制在哪里实施?为了避免陷入这样的安全问题,我还需要确保其他事项吗?
答案 0 :(得分:1)
加载数据的应用程序必须确保只加载来自公共目录的数据。通过使用文件系统权限,可以进一步提高安全性。
您不应该依赖客户端检查,因为它们依赖于使用过的客户端。黑客可以在HTTP请求中编写所有内容。