利用 mitigation/security 强化 Yocto 图像

Exploit mitigation/security hardening for Yocto images

Yocto/OE 提供什么来启用内核、工具链和用户空间中可用的现有漏洞利用缓解技术?诸如 ASLR、堆栈保护器、安全用户副本、禁用 ptrace 之类的东西...

我是否必须手动配置这些东西,或者 Yocto 中有什么东西可以帮助我吗?

可在此处找到解决我的问题的文档入口点: https://www.yoctoproject.org/docs/latest/dev-manual/dev-manual.html#making-images-more-secure

https://www.yoctoproject.org/docs/latest/dev-manual/dev-manual.html#security-flags 描述了如何使用更安全的编译器标志编译程序。

这些标志启用堆栈保护器、FORTIFY_SOURCE、位置无关代码(用于 ASLR)、字符串格式检查和只读重定位。它还维护一个已知不使用这些选项构建的包的黑名单。这些是用不太严格的标志编译的。这些标志影响用户 space.

Yocto 不提供在内核本身中启用 mitigations/hardening 的中央开关。这必须通过内核配置片段手动完成。

可以在此处找到包含用于强化图像的各种方法和工具的 Yocto 层: https://git.yoctoproject.org/cgit/cgit.cgi/meta-security/tree/README

在 meta-security/recipes-security 中有一些工具,例如 checksec(检查 elf、共享库等是否支持 aslr、relro、nx、pie)。您可以检查目录并可以使用工具来做这样的事情。