流行的编程语言 Rust 项目团队撤销了 crates.io 包 web app 的所有 API 密钥,原因是 Rust 的数据包系统中包含一个严重漏洞。
这个严重漏洞是由两个因素造成的:首先,Rust 开发人员了解到用于生成 crates.io 的通用 API 密钥或令牌的 PostgreSQL 随机函数并非“安全加密的”随机数生成器。计算机使用 API 密钥来验证用户或机器并控制它们的访问权限。Rust 项目团队表示,“从理论上将,攻击者通过观察足够多的随机值,能够判断随机数生成器的内部状态,借用该信息来判断上次数据库服务器重启之前创建过的 API 密钥。”第二个因素是,Rust 项目团队发现数据包的 API 密钥以明文形式存储。如攻击者攻陷了该数据库,那么他们就拥有所有当前令牌的 API 访问权限。Rust 项目团队目前已推出安全加密的随机数生成器,并在数据库存储令牌是执行了哈希函数。Rust 项目团队在安全公告中指出,“利用任何一个问题都会对实践产生巨大影响,我们未发现它们已遭利用的证据。然而,谨慎起见,我们选择撤销所有的已有 API 密钥。”已发布 crates 数据包的开发人员可在 crates.io 网站上生成新的 API 密钥。Crates.io 网站指出,4.3万个 crates 的总下载量已超过30亿次。Crates 是 Rust 编程语言的一个关键组成部分。Deno 是 Node.js 可能的继承者,由 Rust 编写,被视作 crate 的集合而非单块程序。7月11日,Rust 项目团队收到缺陷报告,7月14日迅速修复问题、撤销令牌并发布披露公告。
https://www.zdnet.com/article/rust-programming-language-crates-package-api-tokens-revoked-over-serious-security-flaw/
题图:Pixabay License
本文由奇安信代码卫士编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 www.codesafe.cn”。
奇安信代码卫士 (codesafe)
国内首个专注于软件开发安全的
产品线。
点个 “在看” ,加油鸭~