IG、TikTok 为何注入 JS 代码,开发者推出开源工具一探究竟
本周,一件有关 iOS 隐私安全的事件在国外引发了热议,事件的起因是安全研究员 Felix Krause 发现 Meta 公司旗下的多款软件(Facebook、Instagram、Messenger)通过使用应用内网络浏览器(in-app web browser)和注入的 JavaScript 代码来跟踪用户数据,能够获得的数据包括访问的网站、屏幕点击、键盘输入,以及文本选择等内容。
除了 Meta,之后 Felix Krause 还发现 TikTok 也会采用类似的方式来收集用户数据。
为了让所有用户都可以清楚地看到通过应用内浏览器注入的 JavaScript 代码,安全研究员 Felix Krause 推出了一个全新的开源工具 —— InAppBrowser,这个工具使用起来毫无门槛(稍后会介绍),用户可以使用它来检查嵌入在应用程序中的网络浏览器如何注入 JavaScript 代码来跟踪用户。
对于那些不熟悉应用内浏览器的人来说,这是还是先解释一下。应用内浏览器通常在用户点击应用内的一个 URL 时开始运作,通常都是通过创建 WebViews 的实例,并将公共 URL 或应用资源中的一些内容加载到这个实例中。这样应用程序就会直接显示网页,而不必将用户重定向到外部浏览器。iOS 和 Android 的应用内浏览器在很多方面都很相似,当然两者也提供了各自的平台特定方法,用于启用/禁用一些功能。
以此次安全研究员 Felix Krause 的发现为例,尽管 Meta 和 TikTok 应用内浏览器使用的是基于 iOS 上的 Safari WebKit,但开发者可以修改它们来运行自己的 JavaScript 代码。因此,用户更容易在不知情的情况下被追踪。例如,一个应用程序可以使用自定义的应用内浏览器来收集网页上的所有点击、键盘输入、网站标题等等。
通过收集这些数据,这些应用可以创建用户的数字指纹,并以此为基础向用户推送更加有针对性的广告、视频和帖子等。除此之外,由于可以监测用户屏幕点击和键盘输入,如果用户在应用内浏览器中输入了银行账号、身份信息等敏感内容,面临的风险将会更高。Krause 指出,InAppBrowser 目前还不能检测所有的 JavaScript 代码,但它仍然可以让用户更深入地了解应用程序正在收集哪些数据。
如何使用 InAppBrowser 工具
使用 InAppBrowser 工具是非常简单的。首先打开一个你想分析的应用程序,然后在应用内的某个地方分享这个 URL(https://InAppBrowser.com,例如将 URL 以私信的方式发送给朋友),最后在应用内点击这个链接打开它,就可以得到一份关于 JavaScript 注入代码的报告。
当然开发者还指出,并不是每个将 JavaScript 代码注入应用内浏览器的应用都是出于恶意的,因为 JavaScript 是许多网络功能的基础。
InAppBrowser 已在 GitHub 开源,并以 MIT 协议分发。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Zellij —— 终端多路复用器
Zellij 是一个终端工作区。它具有终端多路复用器的基本功能(类似于tmux或screen),但包含许多内置功能,允许用户对其进行扩展并创建自己的个性化环境。 像其他多路复用器一样,Zellij允许用户将他们的终端分成不同的窗格和标签: Zellij 包含一个布局引擎,允许用户在 yaml 文件中定义窗格图,并在启动应用程序时加载它。这样,你可以按照自己想要的方式布置窗格,而无需进行所有设置工作。 Zellij 还有一些不是终端的特殊窗格。这些窗格称为插件。Zellij 带有一些预构建的插件,例如Strider 文件资源管理器。Zellij 使用 Webassembly 和 WASI 来加载这些窗格并允许它们访问主机,因此它们可以用任何编译语言编写。要了解更多信息,可参阅插件文档。
- 下一篇
Qt 收购德国企业软件开发商 Axivion GmbH
Qt 宣布收购了Axivion GmbH,后者是一家德国专有软件开发商,专注于为企业提供软件静态分析工具和其他 QA 商业产品。 Qt 在公告介绍称,自成立以来,Axivion 一直是软件架构和静态代码分析领域的下一代技术领导者。除了经典的静态代码分析(通常被理解为一种检测错误的方法)之外,它还检查标准编码指南,例如 MISRA、AUTOSAR C++14 和常规代码指标。此外,Axivion Suite 还能检查软件架构的合规性。 从 Qt 首席执行官 Juha Varelius 的发言来看,双方希望通过此次结合来分享共同的庞大市场和客户群,因为这两家老牌企业均在嵌入式领域深耕了许久。Juha Varelius 认为,随着静态代码分析和架构分析日益成为软件开发中整个生命周期的重要组成部分,Qt 和优秀 QA 产品的牵手将会是强强联合,为客户提供更丰富和完整的服务。 至于加入 Qt 的 Axivion 是否也会拥抱开源,目前来看没有此迹象。
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS关闭SELinux安全模块
- Hadoop3单机部署,实现最简伪集群
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2全家桶,快速入门学习开发网站教程
- SpringBoot2配置默认Tomcat设置,开启更多高级功能