替换/操作 url 中的“主机名”而不重定向到它
Posted
技术标签:
【中文标题】替换/操作 url 中的“主机名”而不重定向到它【英文标题】:replace/manipulate "hostname" in url without redirecting to it 【发布时间】:2021-11-04 22:23:56 【问题描述】:有什么办法可以替换 url 中的主机名,但我不希望浏览器加载/重定向/打开替换的主机名,它应该只是在地址栏中显示它与它无关。
场景:
我正在测试一个网站(合法),我发现它只是检查 URL 中的 top.location.hostname
,如果它等于 self.location.hostname
,那么它的行为正常,否则它会引发警报,这就是我猜测的原因如果我可以替换地址栏中的主机名,可能会发生点击劫持
如果可以通过 JS 完成,那就太棒了,我可以在 iframe 域命中之前加载我的更改名称的脚本
【问题讨论】:
不是主机名。 History.replaceState() 可用于更改 URL 的路径,但出于安全原因不能更改来源。 这就是我需要知道的...网站没有启用 CORS 策略,因此服务器端没有问题,但在客户端应该有一些东西 【参考方案1】:双帧是最早针对破坏帧的 javascript 的攻击之一。这对于所使用的确切代码来说总是非常主观的,但是您应该在此处检查是否有任何攻击相关。
https://owasp.org/www-pdf-archive//OWASP_AppSec_Research_2010_Busting_Frame_Busting_by_Rydstedt.pdf
如果这是一个专业的参与,我会提出这个问题,无论你是否可以绕过框架破坏器。 X-Frame-Options
是最强大的点击劫持缓解措施,并且永远不会依赖 JavaScript 来做到这一点。
【讨论】:
以上是关于替换/操作 url 中的“主机名”而不重定向到它的主要内容,如果未能解决你的问题,请参考以下文章
Spring Security:会话过期而不重定向到过期网址?