导语:近日,年仅18岁的安全研究人员Jack Cable发现LinkedIn中的“自动填充”功能漏洞,允许攻击者收集用户数据。
近日,年仅18岁的安全研究人员Jack Cable发现LinkedIn中的“自动填充”功能漏洞,允许攻击者收集用户数据。
尽管安全专家和公众的视线仍然聚焦在Facebook泄密丑闻背后的Cambridge Analytica公司身上,但是近日,另一起引人担忧的泄露案件再次占据新闻头条。安全研究人员发现,私人情报机构LocalBlox将不安全的AWS存储桶公开暴露在网络上,其中包含从Facebook、LinkedIn和Twitter处收集的4800万条记录。
毫无疑问,数据收集已经成为一种司空见惯的做法,许多公司和情报机构都会出于各种不同的原因进行数据收集工作,很显然,我们发现的还只是冰山一角。
当然,除了出于主观意识的数据收集外,有时候,这种行为还会受到社交媒体平台功能实现漏洞的影响。
本月初,Facebook创始人马克·扎克伯格(Mark Zuckerberg)承认,英国数据分析公司Cambridge Analytica从2014年就开始收集Facebook用户的个人数据,据悉,这家公司最著名的工作就是曾协助美国总统特朗普的2016年总统竞选活动。而在此次Facebook“泄密门”事件中,该公司主要利用了Facebook搜索功能中的一个缺陷,该功能允许任何人通过他们的电子邮件地址或电话号码查找用户。
而如今,安全研究人员Jack Cable又在LinkedIn中发现了一个功能实现漏洞,据悉,这个漏洞的功能属于LinkedIn的“自动填充”功能,允许恶意行为者收集用户数据。该“自动填充”功能可以帮助用户快速填写LinkedIn个人资料中的数据,包括姓名、职位、公司、电子邮件地址、电话号码、所在城市、邮政编码以及所在州和国家等信息。
Cable解释称,恶意网站可以在页面中植入一个插件,只要用户登录LinkedIn时点击网页,就会触发隐藏的“根据LinkedIn信息自动填写”的按钮,最终导致用户数据泄露。以下是漏洞利用具体流程:
· 用户访问加载LinkedIn自动填充按钮插件的恶意网站;
· 该插件被设计为占据整个页面且对用户不可见;
· 当用户点击页面上的任何位置,LinkedIn都会将其理解为正在按下“自动填充”按钮,并通过postMessage将信息发送给恶意网站;
· 随后,该恶意网站通过以下代码收集用户的信息:
window.addEventListener("message", receiveMessage, false); function receiveMessage(event) { if (event.origin == 'https://www.linkedin.com') { let data = JSON.parse(event.data).data; if (data.email) { alert('Hi, ' + data.firstname + ' ' + data.lastname + '! Your email is ' + data.email + '. You work at ' + data.company + ' and you live in ' + data.city + ', ' + data.state + '.'); console.log(data); } } console.log(event) }
Cable指出,通过使用这一技巧,攻击者甚至可以滥用LinkedIn自动填充功能来访问非公开数据,尽管LinkedIn在其文档中声称只提供公开数据来填写表单。
据悉,Cable早在4月9日就已经发现了这一安全问题,并迅速将其提交给了LinkedIn。一开始,LinkedIn并没有将问题公之于众,而是选择在4月10日偷偷发布了补丁,将自动填充功能限制在公司白名单网站内。当然,这种方法根本无法真正解决该安全问题,因为只要这些网站存在漏洞,黑客一样有能力侵入白名单网站并继续从LinkedIn上收集数据。
直至4月19日,LinkedIn才最终发布了一个稳定的解决方案来应对该安全问题。LinkedIn回应称,没有证据表明,这一机制是用来搜集用户数据的。但是Cable回应称,其他公司完全有可能在领英不知情的情况下利用漏洞,因为领英服务器不会收到任何警报。