iFrame注入是一种非常常见的跨站点脚本(或XSS)***。它由一个或多个iFrame标签组成,这些标签已插入页面或帖子的内容中,并且通常会下载可执行程序或执行其他危害网站访问者计算机的操作。在最佳情况下,Google可能将网站标记为“恶意”。最坏的情况是网站所有者和访问者最终都感染了恶意软件。
(1)iFram注入,当易受***的网页上的框架通过用户可控制的输入显示另一个网页时发生。
GET/search.jsp?query=%3Ciframe%20src=%22https://google.com/?%22%3E%3C/iframe%3E HTTP / 1.1
Host:****.net
(IE)
(Firefox, Chrome, Safari)
![](https://s4.51cto.com/images/blog/202007/16/911bfbb5625abfbb961b34f6c72ad04f.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
(IE)
(IE)
(Firefox, Chrome, Safari)
(Firefox, Chrome, Safari)
http://target.com/something.jsp?query=#alert(1)
接受用户提供的数据作为iframe源URL可能会导致在Visualforce页面中加载恶意内容。
出现以下情况时,会发生欺骗漏洞:
- 数据通过不受信任的来源进入Web应用程序。
- 数据iframe未经验证即用作URL。
这样,如果***者向受害者提供iframesrc了恶意网站的参数集,则将使用恶意网站的内容来渲染框架。
<iframe src =“ http://evildomain.com/”>
(2)重定向(基于DOM)
基于DOM的开放重定向漏洞。当通过用户控制的输入将网页重定向到另一个域中的另一个URL时,就会发生打开重定向。
URL: https://*******.net/index.htm?url=http://evil.com/?orignal_url/
Parameter Name :url
Parameter Type :GET
Pattern :http://evil.com/?orignalurl/
影响:
***者可以利用此漏洞将用户重定向到其他恶意网站,这些网站可以用于网络钓鱼和类似***。
附加:
尽可能不要将用户输入的内容用作URL。
如果您确实需要动态URL,请使用白名单。列出有效的,可接受的URL,而不接受其他URL。
确保仅接受位于受信任域上的URL。
外部参考:
http参数可能包含URL值,并且可能导致Web应用程序将请求重定向到指定的URL。通过将URL值修改为恶意站点,***者可以成功启动网络钓鱼诈骗并窃取用户凭据。由于修改后的链接中的服务器名称与原始站点相同,因此网络钓鱼尝试具有更可信赖的外观。
翻译自https://url.cn/5V7dJlo*