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,一般数据保护条例)。”