当前位置: 首页 > 科技观察

渐进式Web应用程序:可能被忽视的阴暗面

时间:2023-03-17 00:12:17 科技观察

正如苹果公司将牛顿砸在头上改变了人们理解重力的方式一样,AugmentedWebApps通过在网络中提供类似应用程序的体验,正在改变人们理解应用程序的方式。EnhancedWebApps是Google的一项原创技术。“渐进式Web应用程序”一词最早由FrancesBerriman和AlexRussell于2015年创造。它是一种描述应用程序的方式,这些应用程序利用了现代浏览器支持的新功能,例如serviceworker和web应用程序清单,允许用户将web应用程序升级为Enhancedwebapplication。PWA也可以联网,谷歌称其具有以下特点:可靠性:加载速度快,即使在不确定的网络条件下也不会显示T-Rex(Chrome断开连接的界面)。快速:快速响应用户交互,动画流畅如丝,不卡顿。引人入胜:就像一个自然的设备应用程序,具有身临其境的用户体验。你可能读过PWA,每个人都认为它有前途。但您很可能没有意识到它也有不常被提及的阴暗面。隐患很多,但本文将主要关注一个:指纹识别。什么是指纹识别?“没有两个人的指纹是相同的,包括同卵双胞胎。”指纹使人类独一无二,并将他们彼此区分开来。类似地,指纹识别可以应用于其他实体以识别独特的个体。浏览器指纹识别就是一个例子。浏览器指纹识别是网站通过配置设置或其他显着属性识别或重新识别访问者、用户代理或设备的能力。浏览器指纹识别可用作安全措施,例如用户身份验证。在某些情况下,指纹识别可用于:识别用户跟踪和关联会话内和跨会话的用户浏览活动收集信息以推断有关用户等。可能造成什么危害?指纹识别最大的威胁是它可能威胁到用户隐私。(1)用户身份识别用户可能出于不同的原因需要匿名上网,例如害怕被监视和人身安全等。浏览器指纹识别可以与个人身份信息相关联,使应用程序或服务提供商可以轻松识别匿名或非匿名用户。(2)意外的浏览活动关联即使不需要个人信息识别,也会检测到浏览。Web平台可以根据浏览器指纹存储个人数据,所以这种场景是完全有可能的。这可能会导致在未经授权或内容的情况下跟踪用户,清除cookie等操作不会阻止或重置已通过浏览器指纹识别获得的关联。(3)对用户的推断即使不需要以上这些,也可以仅根据少数与浏览器指纹相关的特征对用户进行识别或分类。操作系统版本和设备详细信息可用于推断用户的购买力。如果用户是匿名用户,他们肯定不想使用这种扣费方式。例如,在某些情况下,Mac用户会因设备指纹识别而被定向到更昂贵的酒店。PWA如何帮助指纹识别?PWA需要一个清单文件,这是一个JSON格式的文件,其中包含描述应用程序各种特征的键。清单文件中的一个值是start_url。该值确定用户启动Web应用程序时应加载的首选URL(例如,当用户从设备的应用程序菜单或主屏幕点击Web应用程序的图标时)。W3C团队认为此机制包含设备或浏览器指纹识别以及与浏览器中的用户活动相关的潜在威胁。他们相信这将导致一种新的本地类似cookie的机制。start_url可能用于指示应用程序是从浏览器外部启动的(例如,"start_url":"index.html?launcher=homescreen")。这可能对分析或其他定制有用。但是,开发人员也可以将字符串编码为start_url以唯一标识用户(例如服务器分配的UUID)。这是用户可能不知道的指纹/隐私敏感信息。即使在撰写本文时,该问题仍在讨论中,尚未提出合适的解决方案。正如W3C团队所说,它甚至到了Github问题已经解决的地步。“我们同意,我在承认问题的同时关闭了这个问题,但这个问题无法解决,因为它是url中固有的。我们让实施者知道这是一个问题,并提供通过UI缓解它的可能性。”安全研究员LukaszOlejnik对前10,000个网页进行了研究,以检查网络指纹识别的使用情况。他的研究发现:1672个页面包含manifest.json828个使用了专用的start_url274个使用了参数没有页面使用随机生成的标识符用户。这个温和的测试结果是相当谨慎的:技术上可能的跟踪目前似乎没有被使用。虽然情况暂时缓解,但跟踪方法尚未在当前的PWA中实现。但它是一颗定时炸弹,因为正如我们所知,它可能很快就会成为用户隐私的无声杀手。Apple将如何反击?资料来源:unsplash一方面损失了产品,另一方面增加了系统的安全性,苹果更愿意替用户做决定,而不是用户自己做决定,因为PWAs尝试像本机应用程序一样执行操作,他们需要访问设备硬件功能,如蓝牙、NFC、磁场等。通过引入一些WebAPI,如WebBluetoothAPI、WebNFCAPI、MagnetometerAPI等,这已成为可能.提供这些功能。但Apple最近拒绝在其基于Safari的浏览器中使用16个WebAPI,表明它们提供了指纹识别途径并对用户隐私构成威胁。这些API已经在Chromium系统中实现了,还有一部分在Mozilla系统中实现了。Apple还声称,这些API可以被在线广告商和数据分析公司操纵,以对用户及其设备进行指纹识别。上述情况给PWA带来了麻烦,这将成为开发人员试图构建利用原生功能的应用程序的障碍。WebKit抵御指纹识别的第一道防线是不实现增加指纹识别可操作性的Web功能,也不使用安全方法来保护用户。苹果还表示,如果这些新技术中的任何一项“在未来减少指纹识别”,它会重新考虑将它们添加到Safari中。但PWA是一项很有前途的技术,上述隐私问题不应让客户远离根据他们的喜好提供F.I.R.E的PWA。