Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 浏览器是否容易通过隐藏在<;中的iframe加载网页;img>;数据?_Javascript_Php_Html_Css_Iframe - Fatal编程技术网

Javascript 浏览器是否容易通过隐藏在<;中的iframe加载网页;img>;数据?

Javascript 浏览器是否容易通过隐藏在<;中的iframe加载网页;img>;数据?,javascript,php,html,css,iframe,Javascript,Php,Html,Css,Iframe,我想在图片(png、jpg或gif)文件中放置iframe代码。这是可能的吗 我想放置此iframe代码,它以0X0像素加载网站: <iframe src="http://test.com" height="0" width="0" frameborder="0" scrolling="no"> </iframe> 我正在阅读这篇文章,其中描述了一个新的漏洞: 因此,基本上,我想要一个工作示例,当有人访问此图像url时,可以加载0X0像素的网站。如果您想要创建一个

我想在图片(png、jpg或gif)文件中放置iframe代码。这是可能的吗

我想放置此iframe代码,它以0X0像素加载网站:

<iframe src="http://test.com" height="0" width="0" frameborder="0" scrolling="no">
</iframe>

我正在阅读这篇文章,其中描述了一个新的漏洞:


因此,基本上,我想要一个工作示例,当有人访问此图像url时,可以加载0X0像素的网站。

如果您想要创建一个img文件,当通过
HTML标记加载时,可以在不运行任何其他帮助程序代码的情况下将任意Javascript或HTML代码插入到网站中

但简短的回答是“是”,如果网站已经有恶意或行为不良的代码来解码有效负载,您可以创建一个img文件来执行这些操作

考虑到任何可点击的
javascript:
链接都可能包含类似的字符串编码材料,本文中的报告既不是很新,也不是很有威胁性

本文中的示例要求网站已经加载了单一用途的Javascript帮助程序代码

我想在这里复制代码,但发布的链接包含代码的图像,而不是文本, 我们应该尊重他们材料的版权

该代码的第24行从img获取原始数据,第28-31行通过javascript将img数据中的文本有效负载解码为字符串
strData
,该字符串可能包含HTML iframe语句,并可能已将其添加到网页中,但在该代码中,会调用回调(第34行)或向其发出警报(第49行)因此看起来更像是一个演示而不是一次攻击

像这样的事情已经存在,尽管它们通常被重定向到垃圾邮件发送者的网站

这种有效载荷可以隐藏在任何长字符串中,并通过各种简单方法进行编码和解码


在网站中隐藏0x0 iframe听起来像是点击付费广告计划的点击欺诈,而不是直接欺诈消费者。加载iframe时,大多数服务器都会显示它嵌入的站点,看起来类似于单击链接

但在0x0像素时,用户将无法看到网站,它将只是在某个不必要的地方ping服务器。或者还有其他原因吗?您不能将iframe元素嵌入图像本身。您提供的链接中的代码将iframe数据编码为图像的字节。页面上的javascript然后从图像中提取恶意iframe代码并加载它。这本质上使恶意代码从页面源不可见。编辑:我也希望你的问题没有恶意。@dijive我以为它在图片元数据中,通常是无害的东西,如日期、时间、f-stop、快门、地理位置,可能是作者或标题。其想法是,可能有一些博客插件用于照片,这些照片从未想过会污染检查这些内容,并将其传递到浏览器的html。@Paul我可能会弄错,但代码似乎调用了
getImageData()
函数,该函数返回一个数组,其中包含每个像素的颜色和alpha信息。然后,它每4个整数循环一次,从每个像素读取数据并将其转换为字符。另外,我也不完全确定javascript是否能够访问那种元数据。嗯,没错,那是图像数据,而不是元数据。文章的摘要提到了元数据。但是解码依赖于javascript代码已经就位,因此网站或多或少都会受到黑客攻击或恶意攻击,或者使用黑客攻击或恶意攻击的东西。