大多数喜爱的编程语言生锈引发隐私问题

2021-04-03 23:53:21

在过去几年中,Rust开发商反复提出关注一个未解决的隐私问题。

Rust在开发人员中迅速获得了势头,专注于性能,安全性,安全并发,以及对C ++的类似语法。

但是,对于最长的时间开发人员被他们的生产困扰,构建泄漏可能敏感的调试信息。

2017年初,一个铁锈开发人员在ranc an' s github上提出了一个问题,"如何停止rustc [from],包括系统特定信息,如源代码的绝对文件路径' s从它生成的二进制文件中编译?"

这些绝对路径名称显示了开发人员' s系统用户名和目录的整体结构,包括主目录。

"如果它有帮助,您包括像这样的用户名违反GDPR ...所以这应该由Rust团队解决。"

"在2020年的人关心隐私,这可以像rust-lang / mdbook#847一样推迟,因为由于用户隐私,&#34的人们因不尊重而积极地从项目中工作。该开发人员表示,参考一个名为MDbook的锈病项目。

第一眼,这个"泄漏"用户名和绝对路径可能看起来微不足道。

然而,多年来,更多的开发人员感到惊讶地注意到不仅仅是在调试构建中所包含的信息,而且它们的生产生锈也是如此[1,2,3,4,......]并推动了改变。

BleepingComputer读者读者还向我们达到了一个以上的一次,分享了他们对这个问题的想法。

由于生锈项目,当时没有解决这个问题,社区成员提出了一些解决方法,例如使用"在恐慌和#34上中止;选项,但不幸的是这些都没有任何工作。

"我试图打开'中止'用于释放概况的恐慌。即使这导致了较小的二进制大小,它也不会从二进制文件中擦除源文件名,"在2020年8月举行的表达者Dmitry Zakablukov。

其他建议的解决方法包括不同参数,如系统时间,用户名,时区,语言环境,主机名等。

有趣的是,尽管是隐私风险,但无意中包含绝对路径等元数据可以帮助计算机取证专家和执法,因为路径可以揭示系统用户名。

当然,任何了解这个问题的开发人员都可以在容器内部来段落地构建其生锈应用程序,并使用伪用户名来最小化问题的影响。

本周,一个伪业开发人员Chemsaf3达到了BleepingComputer,重申了他们对这个问题的关注。

开发人员提交了标题为&#34的另一个问题;在二进制&#34中硬编码的注册表路径;在锈的项目中'吉特浴以关注重新关注这个问题。

" rust lang在编译的二进制文件中看起来不必要地泄漏敏感信息,例如系统路径和用户名。"

" [此]发生在释放(生产)模式下,而不仅仅是调试,而且[有]无法使用现有工具删除信息。"

"人们报告了这个问题,但没有动作或来自铁锈团队的沟通," Chemsaf3告诉BleepingComputer。

开发人员还表示,它仍然未知有多少开发人员运输生锈应用程序可能没有意识到他们的应用程序揭示其系统路径和用户名。

"生锈正变得越来越受欢迎,所以这可以开始影响更多的开发人员。"

"此行为未记录,也没有办法防止泄漏,"开发商进一步告诉我们。

开发人员提交的GitHub请求迅速跟踪Rust团队成员的回复:

"谢谢你的报告!它看起来你发现了几个与此相关的问题,所以我不清楚这个问题是否涵盖了任何新的东西。似乎#5505封面处理重新映射,你能澄清什么不同吗?"询问了生锈团队的埃德大声。

然而,最终,在reddit上重新处理后,谷歌团队成员alexis狩猎在生锈' s github问题上介入:

"我从Reddit链接了这个问题,我对个人有兴趣拥有良好的隐私保留默认值对我来说很重要。我与一些同事们互相讲话......"

亨特总结了一些开发人员'关注和分享了一些关于问题如何解决的想法。

"个人,我认为这很重要,应该快速解决,但我在目前的位置才能跟进并使这发生这种情况。 我希望其他人可以挑选这个," 继续狩猎。 要了解RUDER是否认为这是一个漏洞或计划在错误修复上,BLEEPINGCOMPUS将达到生锈核心团队进行评论。 "我们同意这是一个值得修复的错误,并将支持我们的团队解决它," Manish Goregaokar的铁锈团队和谷歌的高级软件工程师告诉BleepingComputer。 虽然此时,但尚不清楚如何或当生锈团队计划在解决这个问题时,从开发人员社区的增加的压力似乎是转向生锈维护者的可行方向。