问题标签 [path-traversal]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 防御路径遍历攻击的最佳方法是什么?
我有一个 Java 服务器实现(TFTP,如果对你很重要),我想确保它不会受到路径遍历攻击,允许访问不应该可用的文件和位置。
到目前为止,我最好的防御尝试是拒绝任何匹配的条目,File.isAbsolute()
然后依靠File.getCanonicalPath()
解析路径之外的任何../
和./
组件。最后,我确保生成的路径仍在我的服务器所需的根目录中:
是否存在遗漏的安全问题?是否有更好/更快可靠地实现相同结果?
代码需要在 Windows 和 Linux 上一致地工作。
java - JavaFX 中的嵌套路径转换
我试图让我的节点沿着圆的路径行进,同时让那个圆沿着矩形的路径行进。可能吗?
这是我到目前为止所拥有的:
java - 在 java 中传递声纳的 PT_RELATIVE_PATH_TRAVERSAL
我有两个让声纳感到难过的问题。具有相对路径遍历问题的代码行中的第一个,如下所示:
其中文件名是我从请求中获得的参数。第二行是关于绝对路径遍历问题,除了前面
没有MY_DIR之外,它看起来是一样的。
我在这些行之后添加了验证检查,该方法使用规范路径确保文件位于 MY_DIR 目录中,所以现在看起来像这样:
但是声纳仍然说我在这两条线上有一个漏洞。如何告诉它我找到了解决方案?
java - 过滤Java(或Scala)中的向上路径遍历
是否有任何标准库方法可以过滤掉包含特殊遍历序列的路径,例如../
向上目录遍历的所有其他复杂形式,以保护文件路径 API 输入不向上遍历给定的“根”路径?
我有一个包含根文件夹值成员的类,以及一个接受递归删除路径的成员函数。我的目标是使这个 API 安全,过滤掉提供给它的任何输入路径——这将转换为根文件夹值以上的路径。目的是该类将被广泛用于删除根路径下的文件,但它永远不会触及根路径之上的任何内容。
这类似于更广泛的路径遍历攻击。
过于严格的方法(即可能导致误报)可能适用于我的特定用例,如果这可以简化事情,而且我当前的需求是文件系统路径而不是 Web 路径(尽管,等效的 Web 模块清酒理论上可能在这里工作)。
security - ZAP 报告存在路径遍历漏洞。它是怎么找到的?
我正在使用 ZAP 测试一个 Web 应用程序,它报告了一个路径遍历漏洞。我了解它是如何工作的(至少,我是这么认为的),所以我查看了代码,测试了 URL,但我找不到修复漏洞的地方。我只从 ZAP 知道问题仅出在 URL/service/book
和参数category
中。有趣的是,该应用程序的其余部分没有相同的问题。
也许,如果我知道 ZAP 是如何找到它的,它会帮助我了解问题所在并修复应用程序。你知道我如何检查 ZAP 是如何检测漏洞的吗?
vb.net - VB.Net 中 File.Copy 方法中的 IBM AppScan Security PathTraversal 问题
我在 VB.Net 源上运行了 IBM AppScan 工具。我在路径遍历类别下的 File.Copy 方法中遇到了一个安全问题。
问题详细信息 - 漏洞类型 - PathTraversal 此 API 接受目录、文件名或两者。如果使用用户提供的数据来创建文件路径,则可以操纵该路径以指向不应被允许访问或可能包含恶意数据或代码的目录和文件。
我该如何解决这个问题?
asp.net-mvc - 在 Zap OWASP 中获取路径遍历标志,但参数完全有效
使用 OWASP Zap 进行的渗透测试发现了许多路径遍历“漏洞”,但要么报告没有告诉我整个故事,要么它们对我来说似乎完全安全。例如:
“2”是调用实体的id,我们的系统需要。很多地方显然都在使用同样的东西,但这是 Zap 唯一一次抱怨。它找到了一些示例,通常通过将 2 替换为另一个整数,或者在另一个参数“PressContacts”中传递一个完全有效的字符串。
在 MVC 中,这些绑定到整数和整数列表,据我所知,这些都是经过清理的。
我怎样才能确切地找出问题所在,或者告诉 Zap 它在叫错树?我们有不同的 MVC 操作来响应 GET 和 POST,报告并不清楚它击中的是哪一个。
如果我遗漏了一些非常明显的东西,请提前道歉。这是我第一次使用 Zap,所以也许我完全误解了一些东西。
java - 是否可以使用 Javas File 构造函数进行路径遍历?
我正在构建一个网络服务,用户可以在其中上传解压缩并保存到我们服务器的 zip 文件。
我创建了以下函数来打开指定路径中的文件:
但是安全扫描告诉我这是不安全的,因为它有路径遍历的可能性。提供参数(“../../notsafe”、“uploadfolder”)将允许恶意攻击者覆盖其他文件......
但是,在 File 类的文档中,我发现了以下内容:https://docs.oracle.com/javase/7/docs/api/java/io/File.html#File(java.io.File,%20java .lang.String)
否则,父抽象路径名被用来表示一个目录,而子路径名字符串被用来表示一个目录或一个文件。如果子路径名字符串是绝对的,那么它将以系统相关的方式转换为相对路径名。如果 parent 是空的抽象路径名,则通过将 child 转换为抽象路径名并根据系统相关的默认目录解析结果来创建新的 File 实例。否则,每个路径名字符串都将转换为抽象路径名,并且子抽象路径名将针对父级解析。
我解释为:不离开父文件夹。我是对还是错?这段代码安全吗?如果现在:解决此安全问题的最佳方法是什么?
angular - ZAP 似乎错误地报告了 Angular 应用程序中的路径遍历漏洞
我正在运行 OWASP ZAP 作为自动化 CI/CD 流程的一部分。我正在做蜘蛛和主动扫描。报告显示存在路径遍历错误。
首先,这是一个 Angular 2 站点,因此服务器上不会显示任何内容。其次,当我查看有问题的 URL 和没有“攻击”时,结果是一样的。此 URL 只是将 JavaScript 文件下载到浏览器,查询字符串被忽略。我们正在使用 webpack 进行捆绑。
https://mysite/js/vendor.ece5bf651436a14bea3e.bundle.js?query=c%3A%2F
如果是误报,我们如何标记它,以便后续运行不会继续将其标记为问题?我们正在为这个自动化过程使用每周的 docker 镜像。
security - 如何修复 aspx?Dir=http://externalwebsite.com IIS 8.5 漏洞
我使用开发和预生产 IIS 服务器来发布和测试我们开发的 Web 应用程序。一些道德黑客顾问来警告我们他们在我们的一些服务器中发现的一个漏洞:
http://www.ourserver.com/default_logged.aspx?Dir=http://www.anyexternalsite.com
此漏洞将用户从我们的网站重定向到外部网站,让他们成为网络钓鱼受害者。
我用谷歌搜索了这个漏洞(目录或路径遍历),我发现了这个链接:
https://www.cvedetails.com/cve/CVE-2014-4078/
我按照他们的建议从这个官方 MS 站点安装了一些更新(适用于 Windows Server 2012 R2):
https://technet.microsoft.com/library/security/ms14-076
但是问题仍然存在......如果有人知道它并告诉我如何解决它,我将非常感激。
提前致谢。