不久前,我开始了一个使用 3.2.10 内核的嵌入式项目。现在该项目应该投入生产了,稳定的内核是3.2.16。我不想升级任何东西以避免不兼容等问题,但如果严重的安全漏洞已从 3.2.10 到 3.2.16 被堵住,我就必须这样做。
在哪里可以找到两个版本之间是否已经修复了安全漏洞?我在 kernel.org 等显而易见的地方找不到答案。
答案1
答案2
大多数内核安全问题只能通过加载奇怪或很少使用的模块来利用。 (过去两年我一直在密切关注 Linux 内核 CVE,情况确实如此)。
示例模块:
- IPX
- 苹果谈话
- IPv6(这并不奇怪,但有很多功能)
- USB/ISDN 卡
因此,为了安全起见,最简单的方法是禁用热插拔和/或自动模块加载。这在嵌入式系统上应该很容易。
除此之外,您永远无法确定更新的功能 - 大多数 CVE 都以带来新功能的新模块为中心。
GLibC 是另一个存在严重安全问题的候选者。因此,如果您的嵌入式系统允许 shell,攻击者迟早会成为 root。