我阅读了很多关于这个主题的文章,包括OWASP PAGE和关于开放重定向的谷歌博客文章......我还在堆栈溢出
时
发现了这个关于开放重定向的问题,但它是一个不同的问题
我知道为什么我不应该重定向......这对我来说完全有意义。
但我真的不明白:重定向和将其放入普通<a href
链接之间到底有什么区别?
也许有些用户正在查看状态栏,但我认为他们中的大多数人在单击链接时并没有真正查看状态栏。
这真的是唯一的原因吗?就像在这篇文章中他们写道:
<a href="http://bank.example.com/redirect?url=http://attacker.example.net">Click here to log in</a>
用户可能会认为该链接是安全的,因为 URL 以他们信任的银行 bank.example.com 开头。但是,用户随后将被重定向到攻击者的网站 (attacker.example.net),攻击者可能使该网站看起来与 bank.example.com 非常相似。然后,用户可能会在不知情的情况下将凭据输入攻击者的网页并危及他们的银行帐户。Java servlet 永远不应在未验证重定向地址是否为受信任站点的情况下将用户重定向到 URL。
因此,如果您有类似留言簿之类的东西,用户可以在其中放置指向其主页的链接,那么唯一的区别是链接不会被重定向,但它仍然会转到邪恶的网页。
我看到这个问题了吗?