谁在操控了我们的手机自动跳转第三方平台无法返回?
这个令人恼火的问题通常是由多种技术手段和利益主体共同造成的,而不是单一主体在“操控”。以下是主要的操控者和背后的原因:
- 恶意的APP开发者/嵌入的第三方SDK开发者: 嵌入广告SDK: 许多APP(尤其是免费游戏、工具类APP)会集成第三方广告联盟的软件开发工具包。这些SDK有时会包含恶意代码,或者开发者为了获取更高广告收益而主动配置具有强制性、欺骗性的广告展示方式,比如: 全屏插页广告滥用: 在用户操作(比如返回键、切换APP、进入新页面)时强制弹出全屏广告,且关闭按钮可能非常小、难点击、被故意延迟显示或设计成诱导点击广告的陷阱。 强制跳转: 广告SDK通过技术手段(如利用浏览器漏洞、重写返回栈)监听用户操作(尤其是返回键),检测到返回意图时,不退出应用或关闭广告页,而是强行启动浏览器或其他APP。 APP内有后门/恶意代码: APP本身可能在用户不知情的情况下,在后台执行跳转操作。
- 广告联盟/中间商: 放任或默许: 一些中小型或不太规范的广告联盟平台,为了追求业绩和广告展示量,可能对接入其SDK的开发者违规推送强迫跳转广告的行为监管不力,甚至在一定程度上默许。他们从广告主那里按点击、展示收费,跳转行为能带来收益。 聚合恶意广告源: 广告联盟平台可能接入了一些劣质的、存在强制跳转行为的次级广告源。
- 浏览器引擎漏洞: 一些APP内部使用的网页视图控件(如WebView),其背后的浏览器引擎可能存在未及时修补的安全漏洞。恶意广告可以通过这些漏洞触发跳转,或者劫持浏览器的导航行为(包括返回按钮)。
- 伪装/欺骗性链接: 在某些情况下(如网页、聊天信息、APP内通知),用户可能不小心点击了伪装成正常内容的链接(如“系统提示更新”、“恭喜中奖”、“领取福利”),这些链接会启动浏览器并跳转到恶意广告页面,这些页面本身设计得非常难以关闭或返回(使用history.pushState强制刷出大量历史记录)。 这不是纯粹的“自动跳转”,而是通过欺骗用户点击实现的。
- 特定推送技术: 如 deeplink + redirect: 一些合法的推广也会使用深度链接跳转到目标APP内的特定页面,但实现不当或被恶意利用时,过程可能很隐蔽,感觉像“自动”跳转,且返回路径不清晰。
为什么感觉“无法返回”?
- 恶意设计: 广告页面或目标APP的页面会故意通过JavaScript的 history.pushState() 或 history.replaceState() 方法篡改浏览器的历史记录堆栈,添加大量空页面或广告页面。当你点击返回按钮时,看似在后退,实际是在浏览广告商创建的历史记录栈,很难一次性退回到真正的起点。
- 劫持返回键: 更流氓的广告SDK会直接拦截并覆盖设备的物理或屏幕返回键的默认行为,使其不关闭当前页面或APP,而是执行广告跳转。
- 延迟关闭按钮: 广告显示后,关闭按钮延迟很久才出现,或者非常小、位置隐蔽、颜色混淆,迫使用户点错。
- 退出陷阱: 广告页面故意设计一些假的关闭按钮(),点击后会触发新的跳转,而不是关闭广告。
如何应对?
- 优先识别来源APP: 当跳转发生时,注意看手机顶部状态栏的提示信息(短暂显示启动者应用图标),或者在最近任务/多任务界面查看是哪个APP触发了浏览器。
- 限制广告APP权限(安卓): 进入手机设置 -> 应用管理 -> 找到可疑APP(常发生跳转的来源APP) -> 权限管理 -> 撤销其“安装未知应用”、“打开其他应用”、“显示在其他应用上层”等敏感权限(尤其是后台弹出界面权限!)。
- 卸载或重置可疑APP: 如果确认某个APP是频繁跳转的元凶,卸载它是最直接的方法。如果不想卸载,可以尝试清除其数据和缓存(在应用信息里),但这可能让你丢失APP内设置和数据。
- 安装广告拦截器: 浏览器: 使用带有强大广告拦截功能(如 uBlock Origin, AdGuard)的浏览器(Firefox, Kiwi Browser等,支持扩展)。 网络级拦截: 使用类似 AdGuard, Blokada 等工具进行系统级或VPN级广告拦截,可有效阻止APP内部分广告跳转。
- 谨慎安装来源不明的APP: 从官方应用商店(Google Play, App Store,国内手机厂商应用商店)下载APP风险相对较低。避免下载小众论坛、短信链接里的所谓“破解版”、“纯净版”、“福利版”APP。
- 保持系统和APP更新: 及时更新手机操作系统、浏览器引擎和常用APP,修复已知安全漏洞。
- 警惕诱导性链接: 不要点击不明来源的“福利”、“领奖”、“系统更新”等链接。
- 安卓开发者选项小技巧(高级): 在安卓开发者选项里,可以开启“关闭直接返回”选项(不同系统名称可能不同,如“Don't keep activities”、“恢复默认行为”等选项可能起反作用,需要小心实验)。
总结
所谓“操控”,核心在于 恶意的APP开发者(借助问题广告SDK) 和 不规范/唯利是图的广告联盟平台及其劣质广告源。他们利用技术手段(恶意代码、篡改历史记录、劫持按钮)设计强制跳转并阻断用户的返回操作,目的是增加广告展示量和收益。普通用户可以通过限制权限、安装拦截工具、卸载可疑APP、保持更新来大幅减少这种情况。