【问题标题】:Why almost every command is trying to read urandom?为什么几乎每个命令都试图读取 urandom?
【发布时间】:2020-03-07 12:21:43
【问题描述】:

在用于嵌入式系统(mips/MT7628/busybox,如果重要的话)的最新内核 (5.x)/rootfs 中,我看到吨数:

random: mount: uninitialized urandom read (4 bytes read)
random: fsck.vfat: uninitialized urandom read (4 bytes read)
random: tar: uninitialized urandom read (4 bytes read)
...

过了一会儿(~10 分钟!!)我终于看到了:

[  562.001438] random: crng init done

两个问题:

  1. 为什么初始化 /dev/urandom 需要这么长时间?
  2. 出于什么原因mounttar 应该首先尝试使用它?

注意:旧内核 (3.x) 没有这个问题。

【问题讨论】:

    标签: random linux-kernel boot


    【解决方案1】:

    答案来自另一个来源(感谢 Alessandro Rubini);我在这里将其关联起来以供将来参考。

    1. 如果在编译内核时选择了“加密性强”随机数,这是预期的(没有专门硬件的随机化,仅使用中断时间需要很多时间);如果不需要(如我的情况),请取消选择“加密 RNG”。
    2. 这与一般的实际命令或特别是 Barebox 无关;似乎加载程序随机化了虚拟空间中的堆栈位置,以加强对缓冲区溢出漏洞的攻击。

    【讨论】:

      猜你喜欢
      • 2020-10-17
      • 2021-01-25
      • 1970-01-01
      • 2013-08-19
      • 2018-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多