【发布时间】:2013-02-21 09:18:29
【问题描述】:
我希望为我网站的用户提供对 JAR 文件中提供的一些静态资源的访问权限。
我无法提供用户应该能够访问的所有文件的列表,但我可以确保它们都包含在 JAR 的子目录中,例如:
public-access/file-1
public-access/file-2
public-access/sub-dir/file-3
然后将通过以下方式访问文件:
this.getClass().getResource("/public-access/" + requestedFile);
有没有推荐的方法来防止路径遍历攻击?这是为了防止恶意用户请求名为例如的文件。 ../secret,或sub-dir/../../secret
【问题讨论】:
-
我也在寻找解决方案。有趣的是,我不能在路径中使用“../”来产生这样的攻击。也许它在过程中的某个地方被 Java 过滤掉了。您是否设法自己进行了攻击?
标签: java security jar static-resource