📜  未经验证的重定向和转发

📅  最后修改于: 2020-12-04 05:21:54             🧑  作者: Mango


互联网上的大多数Web应用程序经常将用户重定向并转发到其他页面或其他外部网站。但是,在不验证那些页面的信誉的情况下,黑客可以将受害者重定向到网络钓鱼或恶意软件站点,或者使用转发来访问未经授权的页面。

让我们借助简单的图表了解此漏洞的威胁代理,攻击媒介,安全漏洞,技术影响和业务影响。

unvalidated_redirects_and_forwards

未验证的重定向和转发的一些经典示例如下:

  • 让我们说应用程序有一个页面-redirect.jsp,它带有一个参数redirectrul 。黑客添加了一个恶意URL,该URL重定向执行钓鱼/安装恶意软件的用户。

http://www.mywebapp.com/redirect.jsp?redirectrul=hacker.com
  • 所有用于将用户转发到网站不同部分的Web应用程序。为了达到相同目的,某些页面使用参数来指示操作成功后应将用户重定向到的位置。攻击者设计了一个URL,该URL通过了应用程序的访问控制检查,然后将攻击者转发到攻击者无法访问的管理功能。

http://www.mywebapp.com/checkstatus.jsp?fwd=appadmin.jsp

预防机制

  • 最好避免使用重定向和转发。

  • 如果不可避免,则应在重定向目标时不涉及用户参数的情况下完成此操作。