加密货币交易所 Coinbase 日前披露一项潜在漏洞称,部分用户的账号密码以纯文本的信息被储存在内容记录系统中,受影响人数初步统计达 3,420 名潜在用户,所幸的是,这些信息并未被外界不正当访问。
CoinDesk 释出事后分析报告称,「非常特殊和罕见的错误情况下,我们的注册表格无法正常加载,这意味着在这些条件下尝试注册的新账户都将失败,这也意味着用户的姓名、电邮地址及其所提交的密码(如在美国则包含居住州)将被发送到我们的内部记录系统」。
官方表示,若用户在二次尝试注册新账号时使用相同的密码,虽可注册成功,但这也将导致这些密码与公司记录系统中的散列版本相匹配。
报告指出,由于 Coinbase 在注册页面上使用 React.js 服务端呈现,所以才会产生漏洞。换言之,当用户尝试注册帐户时,React 将帮助显示数据填写窗体。Coinbase 补充解释,「任何试图注册的用户都必须启用并以正确的方式加载 JavaScript,在这种情况下,React 将会协助用户处理窗体验证并提交给服务器。但是,在用户禁用 JavaScript 或浏览器加载时收到 React.js 报错的情况下,却同样会呈现预载的 HTML 页面,让用户不以为意,继续填写个人资料并尝试提交注册窗体。」
正常情况下,标准的 HTML 窗体皆由 <form> 卷标开始,结尾则是使用 </form> 卷标,两个卷标之间就是放置窗体元素的地方,form 会将网友填完的数据,传送至「action」所设定的数据传送目的地;而「method」是数据传递的方式,有 get 与 post 两种方式。
Coinbase 表示,由于没有设置到「action」和「method」的属性,因此在默认的情况下,会导致部分浏览器将数据传递方式设为「get」,意味着窗体中的数据将被编码成记录系统的一部分。
为了解决这个问题,Coinbase 现已将默认窗体方法切换为「post」,以确保系统不再记录用户数据,同时要求受影响的用户重置密码,并在登入时启用双重身份验证。此外,Coinbase 表示,「我们还在实施其他机制,以利检测和预防任何潜在疏漏」。
Coinbase 还提到,团队已追踪到可能存储用户数据的各个位置,并进行全面审查,目前尚未发现任何未经授权的侵入。
该交易所最后提醒道,「Coinbase 长期以来都在 HackerOne 上经营着一个活跃的漏洞赏金计划,迄今已支付超过 25 万美元。虽然这次的漏洞是由内部团队所发现,但仍我们欢迎外界安全研究人员能在他们系统中发现漏洞时,及时向我们通报错误。」
来源:区块客
声明:文章仅代表作者个人观点意见,不代表认知区块链观点和立场,所有内容及观点仅供参考,不构成投资建议。投资者应自行决策与交易,对投资者交易形成的直接间接损失作者及认知区块链将不承担任何责任。图文转载于网络的,版权归原作者所有,仅供学习参考之用。如有异议,请联系本站删除。