今年,英国航空公司报吿了两次重大的数据泄露,初次报吿是在9月,涉及8月和9月的24.4万笔信用卡交易,进一步披露是在10月,涉及从4月到7月的另外18.5万笔交易。
位于旧金山的网络安全公司RiskIQ提供了一个详细的分析,英国航空公司安全漏洞的出现是通过恶意注入JavaScript源代码,并配置服务器基础设施,使其看上去和英国航空公司有关。
据RiskIQ报道,遭到破坏的源代码是英国航空公司使用的Modernizr和jQuery,其中被注入了22行JavaScript源代码。不管是Modernizr,还是jQuery,并不是它们本身不安全,但是,添加到英国航空公司网站所用版本中的脚本,会在支付时从信用卡表单读取数据,除了会向英国航空公司的后端正确地发送数据外,它还会发送该数据的副本到“baways.com”,一个被认为是属于攻击者的网站。这种攻击得以完成的罪魁祸首是修改了英国航空公司网站的生产源代码。
RiskIQ把安全入侵归罪于Magecart,该团队还要为Ticketmaster和新蛋网的数据泄露负责:
自2016年以来,RiskIQ就报道了由威胁集团Magecart运营的基于网络的“盗卡器(card skimmer)”的使用。传统上,犯罪分子使用被称为盗卡器的设备——隐藏在ATM机、油泵和其他供人们每天用信用卡支付的机器上的信用卡读卡器中——窃取信用卡数据,供犯罪分子后续收集,或者自己使用,或者卖给其他人。Magecart使用了这些设备的数字变体。
Magecart注入的脚本旨在窃取消费者输入的在线支付表单的敏感数据,这些数据可能是直接在电商网站上输入的,也可能是通过这些网站使用的遭到入侵的第三方供应商输入的。最近,Magecart作业人员通过对第三方功能的入侵,在Ticketmaster网站上放置了一个这样的数字盗卡器,导致了引人注目的Ticketmaster客户数据泄露。基于最近的证据,Magecart现在将目光投向了英国最大的航空公司——英国航空公司。
数据泄露影响了Web浏览器和移动应用的信用卡交易,因为它们利用了相同的遭到破坏的源代码。对于第一次报吿的数据泄露事件,最初报吿的38万笔被泄露交易后来被英国航空公司减少到24.4万笔。
目前还不清楚第二次数据泄露的机制。据报道,数据泄露是在奖励机票预订时发生的,而在进行交易前是需要用户身份验证的。如此说来,在数据泄露期间查看源代码的公共存档并不是那么简单。
针对这种攻击的第一道防线是检测对基础设施的入侵。然而据报道,在这起事件中,英国航空公司并不知道有人入侵。下一道防线是验证生产JavaScript源代码没有被意外修改。一种解决方案是实现一个外部监控系统,该系统可以检测到对公开源代码的任何更改,并验证任何报告的更改是否是有意更改。此验证可以通过验证校验和自动实现。
最近,最终定稿的W3C子资源完整性标准(由Edge、Chrome、Firefox和Safari支持)也可能有助于防止此类攻击,特别是针对第三方脚本。然而,在英国航空公司被黑客攻击的情况下,攻击者可能还会更改加载了遭到破坏的JavaScript源代码的脚本标签中的完整性散列。
查看英文原文:British Airways Data Breach Conducted via Malicious JavaScript Injection