现在有很多网站都在执行此操作,这确实很烦人:


我在Android设备上访问了一个内容网站。
加载开始后10-15秒,网站暂停了几秒钟。
Google play store加载了预先选择的垃圾应用程序(通常是一些糟糕的FTP或没用的电池应用程序)。脚本(即在网页中运行的Javascript)能够以某种方式重定向我的设备,以打开到商店中应用程序的链接,而无需我直接选择它。

我认为这是严重的安全失败Android可以做到这一点,但是Iphone却做同样的事情(但是挂了更长的时间才能打开应用程序商店)。每次都会对Play商店重定向进行触发。

有什么办法可以阻止这种情况?我可以在商店或浏览器中设置任何选项来停止这种令人讨厌的行为吗?

我使用的是Nexus 7,但我在许多其他Android设备上也见过这种情况。

评论

需要明确的是,这是一个浏览器功能,将系统(Android)称为“挂钩”。

@ user66001这是一个有5年历史的问题,我很确定这是由于JS被允许执行非HTTP协议(无需用户交互),而该协议长期以来一直受到更好的CORS的阻止。在2014年,这是一次巨大的痛苦,我认为我已经好多年没有见到它了。

#1 楼

您不能停止网站将您重定向到其他站点:网络就是这样运作的。您可以做的就是在Play商店应用中打开指向Google Play上应用的链接。

Android 6(棉花糖):
从主要设备设置中转到应用,然后找到Google播放列表中的商店,依次单击“默认打开”,“打开支持的链接”和“不要在此应用中打开”。

旧版Android:
从主要设备设置中,转到“应用”,然后在列表中找到Play商店,然后点击清除默认设置。
下一次网站将您重定向到Google Play链接时,您会看到一个选择器,询问您是否在浏览器中打开它(它将为您提供)多种浏览器(如果已安装),或者使用Play商店应用。选择Web浏览器,然后单击始终。现在,将永远不会在Play商店应用中打开指向Google Play的链接。

请注意,无论您选择哪种行为,这都不是安全问题。 Web链接只能在以下情况下打开设备上的应用程序:(1)应用程序明确表示它可以理解/处理这种链接; (2)该应用明确表示可以安全地从网络上进行访问。该应用程序使用标记为可浏览类别的意图过滤器执行此操作。

评论


单击打开应用程序的链接就可以了-这很有用。我有一个问题是,当我没有选择它时,它会打开应用程序链接。这是一个安全问题,因为网页应该在没有用户干预的情况下不能进行跨域重定向(这就是恶意软件站点尝试单击劫持以实现类似效果的原因)。我认为这就是您的解决方法起作用的原因-Chrome(正确)禁止跨源Web请求,而Android(不正确)允许跨应用程序。

–基思
2014年1月30日14:16

然后,我会尝试使用Dan的方法,但最后一步会稍有不同:不用选择浏览器作为新的默认设置,只需在弹出窗口出现时单击“后退”按钮即可。那应该中止动作。副作用是您将始终拥有该弹出窗口,并且每次必须手动选择目标应用程序。唯一的其他方法是避开这些站点,并有选择地向网站站长/服务/所提供的内容留下相应的评论。

– Izzy♦
2014年1月30日14:33

@Keith网站重定向到另一个域是完全正常的。当您使用简短的URL或单击Google搜索结果时,也会发生相同的情况。仅当应用程序允许您从链接中采取某些操作(例如安装应用程序)而无需进一步干预时,这才是安全问题。

–丹·赫尔姆
2014年1月30日14:37

@DanHulme,当您单击由用户启动的操作的搜索结果时。 URL缩短服务将返回用于重定向浏览器的标头。这两个都没关系。但是,您无法在页面中加载脚本来将用户重定向到其他域上的另一个页面-如果您可以加载一个充满广告重定向的页面,则会启动新页面或弹出窗口的加载(例如糟糕的旧页面)天在PC上)。所有较新的浏览器都实施了某种CORS来避免这种情况。这是Android OS级别的CORS安全性失败。

–基思
2014年1月30日15:35

@Keith我不确定您为什么认为Android OS决定是否遵循该链接。这完全取决于网络浏览器。仅Web浏览器具有有关操作是否是用户发起的以及引用者和目标是否共享域的信息。

–丹·赫尔姆
2014年1月30日17:16

#2 楼

我之所以采取这种做法,是因为您从未提及它是无根的,并且使用的是常规浏览器(chrome)。

我能想到的解决方案,禁用javascript,安装其他浏览器,例如Firefox,该浏览器具有adblock插件,或将您的设备设为root,并使用adaway之类的东西。

评论


我已经开始考虑它,这已经够烦人了,但是我真的不想让平板电脑扎根。

–基思
2014年1月30日14:20在

没有生根,您就只能使用广告屏蔽选项。我会尝试其他浏览器路线。不幸的是,由于Google是一家依赖广告的公司,因此它已从Play商店中删除了所有广告拦截应用,而据我所知,他们的位置使移动浏览容易受到滥用行为的影响。希望您找到解决方案。

–mickc1306
2014年1月30日14:27



@ mickc1306是真的,他们收入的90%以上是广告,不允许您屏蔽广告并不符合他们的利益。我扎根的根本原因是AdAway。它还会从某些应用程序中删除广告框架,使它们再次成为美观且全屏显示。现在,我几乎可以立即使用。一旦您习惯删除过时的软件和广告,就很难回头了!

– RossC
2014年1月30日15:22

我来这里是因为android上的firefox遇到了相同的行为。

–他
19年4月12日在12:01

此行为与广告无关。该网站正在加载协议(即URL,CALLTO等),然后浏览器将其传递给系统(Android / iOS / etc)上的默认操作。停止浏览器对该协议执行任何操作(或不通过JS手段/不进行提示)或停止操作系统在协议和操作之间的关联(尽管后者将禁用使用相同功能的其他应用程序启动应用商店),而问题是解决了。

–user66001
19-09-12在16:21



#3 楼

您不需要root就可以阻止这种死路。

adblockplus.org

不在Play商店中。它是100%免费的,并且可以完美运行。有几种选择。能够阻止所有广告或仅阻止此类令人讨厌的广告重定向我们在此讨论的xploits。

这是浏览器安全问题,而不是android操作系统问题。

评论


这是一个Android OS问题。 -1

–HasH_BrowN
2014年12月11日下午16:56

对开发人员友好。默认情况下,设置为仅阻止类似此处讨论的侵入性广告。我只用它来阻止侵入性广告。而全屏广告会尝试点击千斤顶。很抱歉,如果您的开发人员在您的软件应用程序中使用了这种广告方法,但我的信念永远不变。

–marty3
15年1月4日在8:29

@RyanConrad我原则上同意广告,但是作为开发人员,您真的认为正在阅读FB文章(有趣的cats / txts /任何内容)的人实际上会对他们被迫重定向到中间的playstore感到满意。阅读?然后,他们必须回去并尝试找到自己的位置,并希望他们不会再被踢回……您认为这些人中的任何一个实际上是否有心情下载电池应用程序或F2P游戏?请记住,它不像传统网页上的广告

–本杰明
15年4月2日在13:39

究竟。 @本杰明而Adblockplus就是这样做的。它根本不像瑞安·康拉德(Ryan Conrad)所说的“窃取收入”。它只是停止了侵入性广告。点按千斤顶尝试。并且,如果您的开发人员隐瞒了这种恶意的广告宣传手段以赚取收益,则应予以射击。 Google在Play商店中没有任何广告拦截软件的原因是,它与Google的一切都背道而驰。您认为Google来自何处。大声笑。没有广告,谷歌什么都不是。广告是Google的主要收入来源。一直以来,一直将Google归咎于互联网上的此类广告。这不是一件坏事。

–marty3
15年8月10日在9:47

@RyanConrad我对广告很满意,这不是问题。问题是广告脚本会阻止我浏览,振动手机,弹出对话框,然后将我重定向到应用商店。我确实希望使用广告支持的模型来支持开发人员,但是在广告运行猖ramp的情况下,实际上并没有其他选择。这些暗模式必须适用于一些可怜的骗子,这些恶意骗子最终会安装恶意软件,但对我而言,使用这种脚本向我宣传的任何应用程序都保证我永远不会安装它,并且警告我的朋友也不要这样做。 Android需要关闭安全漏洞。

–基思
16年6月1日在6:46