PayPal 的 Braintree 支付服 的衰落和客户 务如何体现基于 iframe 的安全性的根本缺陷
网上付款是一件棘手的事情
对于商家来说,处理在线付款并保持支付卡行业数据安全标准(通常称为 PCI-DSS)规定的标准是一项艰巨的任务。由于维护安全、合规且有利可图的支付流程非常复杂,大多数在线商家都依赖外部支付处理器(例如 Paypal、Square 和 Stripe 等)来外包与接受付款相关的成本和时间。
这些支付处理器使用各种先进的技术来确保支付信息在交易过程中保持安全。这一点至关重要,因为黑客和像 Magecart 这样的黑客组织非常热衷于寻找窃取这些信息的方法,从而对访客、商家和品牌造成伤害。
使用 iframe 进行合规外包
据报道,2020 年 4 月,一位使 手机号码数据 用 PayPal 的 BrainTree 服务提供的“托管字段”解决方案的在线商家遭到入侵,这在以前被认为是不可能的。
简而言之,这种安全技术依赖于支付处理器提供一个 JavaScript 文件,该文件包含在商家的网站中,可动态构建托管字段以接受支付数据。输入字段(简称字段)是文本框,购物者可以在其中输入信息到网页中,例如产品的尺寸或数量,或支付信息以完成交易。
对于托管字段,输入框并不真正存在于商家的网页上,而是由支付处理器的技术创建的,与店面网页保持分离。它们对购物者可见,并且与页面上的任何其他元素没有区别。它们还消除了确保商家遵守 PCI-DSS 的负担。这是通过一种称为 iframe 的技术实现的,该技术可以指示 Web 浏览器将内容放入框中,并允许其与主网页分开工作。
那么,即使使用 iframe 保护访问者的支付数据,攻击者如何能够窃取数据呢?答案在于 JavaScript,特别是第三方 JavaScript,以及它在 Web 浏览器中可以发挥的巨大作用。
JavaScript 让一切皆有可能
JavaScript 是一种使网页 问题背后的问题是什么:搜索意图优化 具有交互性的语言,它没有固有的安全控制、权限或限制,无法与网页、购物者的体验或数据进行交互。第一方 JavaScript(例如商家自己编写的 JavaScript 或他们可能集成到其网站中的由支付处理器提供的代码)和第三方 JavaScript(在网页加载时从互联网上的其他地方检索)都是如此。
在此特定案例中,攻击者能够通过第三方 JavaScript 引入恶意代码,将支付处理器提供的“安全”字段替换为攻击者控制的精确副本。从购物者的角度来看,页面上似乎没有任何不同。
除此之外,攻击者还构建了虚假的支付字段,这样输入的信息也会被支付处理器接受,就好像这些信息是由支付处理器自己的技术提供的一样。交易看起来是合法的,付款将成功完成,商家将收到他们的钱。
综合所有这些因素,最终结果是购物者将收到他们的商品,商家将获得交易付款,而攻击者将窃取另一张信用卡用于直接欺诈或在暗网上转售。
对于网上商家来说,这是一个必不可少但不安全的工具
JavaScript 是当今网络 广告数据 运作方式不可或缺的一部分,而第三方 JavaScript 是任何以客户为导向的网站不可或缺的一部分。通过提供分析、社交媒体集成、客户互动工具和大量其他功能等关键服务,第三方服务是在线商家可用的最常见和最有益的工具之一。
不幸的是,这种必不可少的工具也为黑客提供了大规模犯罪的绝佳机会,并且具有巨大的获利潜力。正因为如此,他们才会想出更新、更创新的方法来窃取网站数据,即使这些网站受到久经考验且广受信赖的技术(如本文所述)的保护。
当商家、支付处理商以及任何负责在线商务安全的人评估我们今天面临的挑战时,重新评估旧观念并考虑网络浏览器本身的风险至关重要。随着网络对企业越来越重要,安全保护也越来越复杂,必须考虑不仅保护组织内系统部分的安全解决方案,而且还要考虑能够将这种安全性扩展到客户端的解决方案。