gpt4 book ai didi

javascript - 用js处理url中的xss

转载 作者:行者123 更新时间:2023-11-29 18:04:50 25 4
gpt4 key购买 nike

我有一个 url 参数可以是:“http://www.example.net”或者:javascript:alert(document.cookie)

如果我使用 encodeURIComponent 来避免 xss 攻击,合法的 url 就会被破坏,如果我使用 encodeURIComponent,则不会处理 xss 攻击(冒号通过)。避免 xss 攻击并保持 url 有效的最佳方法是什么?

最佳答案

在我看来,主要有两个选择:

  1. 您可以将允许的参数列入白名单,而不必为实际传递的实际 url 做任何事情而烦恼。换句话说,如果它在白名单中,您将执行类似 ?url=example 的操作并将其重定向到 http://www.example.com。需要明确的是,这些是别名,而不是您只假定站点的前缀和顶级域名的规则。这有助于确保您不会受到 open-redirects 的攻击和 XSS。

  2. 如果维护这样的列表不可行,您可以制定一个规则,规定您只能使用某些域(可能只是与站点相同的域)。至少你可以验证该方案是 http|https,但你仍然容易受到开放重定向的攻击,但至少他们无法通过该参数对你的页面进行 XSS 攻击.

关于javascript - 用js处理url中的xss,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32205173/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com