当random.bytes()运行却失效

When random.bytes() runs but doesn't work

当random.bytes()运行却失效

Core-Lightning开发者ddustin深入调查Coldcard固件漏洞,发现一个因开发者盲目修复编译错误而导致的严重随机数生成缺陷。在尝试覆盖变量时遭遇冲突,开发者为让代码编译通过,直接禁用了硬件RNG,却未意识到这导致random.bytes()调用了极不安全的Yasmarang算法。这一系列操作仅用“runs”作为提交信息,暴露了过度依赖Micropython而忽视底层C代码理解的致命风险。当关键安全代码被随意修改且缺乏文档,后果可能是用户资金的彻底损失。

Micropython制造了一种嵌入式开发者无需理解C语言、CPU或高级概念就能进行嵌入式编程的假象,但这是一种谎言,而这场灾难正是相信这种谎言的结果。
  1. londons_explore

    我开始对“随机数生成器实际上并没有返回随机数”这类漏洞感到怀疑了……

    这简直是某人试图“意外”让安全系统变得不安全的完美漏洞。

    我不禁在想,这里面是否涉及贿赂,或是某个三字母机构在幕后操纵?

  2. anonymousiam

    关于此处引用的问题,Twitter 上的安全通告 [1] 提到:

    >>> 致其他开发者:我们认为这是新 AI 范式下一个清醒的现实。AI 辅助的代码审查如今能以超越行业最资深专家的速度发现潜伏的漏洞。如果你的固件是开源的,或者曾经公开过,请默认它正同时被攻击者和防御者阅读。

    这简直把开源软件(OSS)的“众人之眼”原则给颠覆了,对吧?

    [1] https://x.com/nvk/status/2083216713693151552?s=61

  3. nullc

    这篇文章假设提交“runs”这个提交的人并非出于恶意。这一点已经确认了吗?文章里并没有提到。

同日更多故事

2026-08-02