互联网上的大多数Web应用程序经常将用户重定向并转发到其他页面或其他外部网站。但是,如果不验证这些页面的可信度,黑客可以将受害者重定向到网络钓鱼或恶意软件站点,或者使用转发来访问未经授权的页面。
让我们来了解这个漏洞的威胁代理,攻击向量,安全弱点,技术影响和业务影响。
未经验证的重定向和转发的一些经典示例如下 -
假设应用程序有一个页面 - redirect.jsp
,它接受一个参数redirectrul
。黑客添加了一个恶意URL,用于重定向执行网络钓鱼/安装恶意软件的用户。
http://www.mywebapp.com/redirect.jsp?redirectrul=hacker.com
所有Web应用程序用于将用户转发到站点的不同部分。为了实现相同的目的,一些页面使用参数来指示如果操作成功则应该将用户重定向到何处。攻击者制作一个URL,该URL通过应用程序的访问控制检查,然后将攻击者转发给攻击者无法访问的管理功能。
http://www.mywebapp.com/checkstatus.jsp?fwd=appadmin.jsp