Atom 是 GitHub 专门为程序员推出的一个跨平台文本编辑器。昨日,有用户给 Atom 提 issue 称其未经同意收集用户数据。
“首次启动 Atom 时,它会在未经同意的情况下联系在 Amazon 服务器上运行的 Microsoft/GitHub 进程,并将我的 IP 地址和时间戳泄露给制造商,把我使用 Atom 的事实(通过出站请求)传输给成千上万的其他人和组织。”
这位名为 Jeffrey Paul 的用户表示是在首次启动 Atom 时遇到了该问题。他发现在自己的信息已经被收集并发送出去之后,主应用程序窗口才打开是否连接服务器的询问对话框。而这一问题 100% 能够复现,也就是说并非偶然事故。
Paul 指出,用户的 IP 地址以及跟踪/遥测/分析/自动更新目标主机 IP 等信息都在首次启动时被传输出去,前两个数据中还包括时间戳。“该元组(用户源 IP,atom.io 目标 ip,TCP 端口,TLS SNI 主机名,时间戳记)从用户计算机发送时,其使用情况信息就会泄漏给成千上万的不同人:ISP,托管提供商,网络交换,情报服务者,Microsoft 内部系统管理员,GitHub 系统管理员和 Amazon 网络管理员。用户根本没有机会选择退出,或是阻止它,甚至没有意识到它的发生。”
为此,Paul 感到气愤,并依照“间谍软件”的定义——间谍软件是一种软件,有时甚至在其不知情的情况下收集有关个人或组织的信息,并在未经用户同意的情况下将此类信息发送给另一个实体——将 Atom 归为间谍软件。
他还提到,这种情况的出现意味着 PR #12281 上的工作尚未完成。这是 2016 年 Atom 团队提出的“添加遥测同意设置”,该设置用于确定是否收集用户的使用信息。而目前,根据 Paul 的描述,甚至没有出现同意对话框,数据就已经被上传了。
Atom 团队的 Arcanemagus 随后在下方回复,表示“Atom 设计为在连接网络的环境中运行,可以执行诸如检查更新之类的操作而不会提示用户……您当然可以自由地阻止网络访问,并且如果您愿意,Atom 也可以在脱机模式下运行。”
但显然,这一说法不够有说服力,Paul 提出反击:“没有人说它不应该使用网络,它只是在用户授予其权限之前不应该使用网络,否则会造成数据泄漏,这就是同意对话框存在的意义。”
Arcanemagus 仍然认为阻止网络访问即可,还说,“这不是 Atom 团队当前有兴趣更改的东西”。
来自 Atom 团队的 Lee Dohm 发表了最终回应,承认遥测程序包不应该在单击按钮之前发送信息,并将调查它与 central.github.com 的过早连接。但另一方面,他坚持 Atom 的设计模式如此,剩下的部分,特别是自动更新检查,仍保留当前的设计方式。以及,再次表明,“如果您想要一个可以完全脱机工作且没有任何网络连接的编辑器,则 Atom 不适合您。”
此外,经过复现实验,Paul 还提出了另一个 issue,他发现即便明确拒绝同意并退出遥测,遥测信息还是会被发送。这一情况的复现率也为 100%。
在 2016 年那条添加遥测同意设置的 PR 下,又有网友展开了新的讨论。其中一名用户说道,“按目前的情况,这可能违反了 GDPR(General Data Protection Regulation,一般数据保护条例)。”
领取专属 10元无门槛券
私享最新 技术干货