PAX-UTILS.ECLASS

章节: eclass-manpages (5)
更新: 2024 年 11 月
索引 返回主目录

名称

pax-utils.eclass - 为加固内核提供 PaX 标记的功能

描述

此 eclass 提供对 ELF 二进制文件上的 PaX 标记进行操作的支持,无论系统是使用旧的 PT_PAX 标记还是较新的 XATTR_PAX。eclass 封装了 paxctl-ng、paxctl、set/getattr 和 scanelf 实用程序的使用,根据构建主机上安装的内容以及我们是否使用 PT_PAX、XATTR_PAX 或两者,决定使用哪个。不再支持旧的 PT_PAX 标记。

要控制进行哪些标记,请在 /etc/portage/make.conf 中设置 PAX_MARKINGS,使其包含 "PT"、"XT" 或 "none"。默认值为 none

支持的 EAPIS

7 8

函数

pax-mark <flags> <ELF 文件>
使用提供的 PaX <flags> 标记 <ELF 文件>

标志直接传递给实用程序,不会更改。

        p: disable PAGEEXEC             P: enable PAGEEXEC
        e: disable EMUTRAMP             E: enable EMUTRAMP
        m: disable MPROTECT             M: enable MPROTECT
        r: disable RANDMMAP             R: enable RANDMMAP
        s: disable SEGMEXEC             S: enable SEGMEXEC

默认标志为 'PeMRS',这是最严格的设置。有关这些标志的详细信息,请参阅 https://pax.grsecurity.net/

请与 Gentoo Hardened 团队确认任何限制放松。您可以在 gentoo-hardened 邮件列表中询问,或在错误报告中 CC/分配给 [email protected]

返回值: 如果成功,则为 shell true,否则为 shell false

list-paxables <文件>
将所有适合进行 PaX 标志标记的 <文件> 打印到标准输出,即从文件列表中过滤出 ELF 可执行文件或共享对象。这对于将通配符列表传递给 pax-mark 很有用,尽管通常情况下,ebuild 最好列出要标记的特定 ELF。通常并非一个软件包安装的所有 ELF 都需要重新标记。

返回值: <文件> 的子集,这些子集是 ELF 可执行文件或共享对象

host-is-pax
这用于构建过程必须根据主机是否启用了 PaX 而有条件地进行修改。它不用于确定最终二进制文件是否需要 PaX 标记。注意: 如果 procfs 没有安装在 /proc 上,则返回 shell false(例如 Gentoo/FreeBSD)。

返回值: 如果构建过程启用了 PaX,则为 shell true,否则为 shell false

ECLASS 变量

PAX_MARKINGS = ${PAX_MARKINGS:="none"}
控制进行哪些标记: PT = PT_PAX 标记,XT = XATTR_PAX 标记 默认情况下不进行标记。

作者

作者: Kevin F. Quinn <[email protected]>
作者: Anthony G. Basile <[email protected]>

维护者

Gentoo Linux Hardened 团队 <[email protected]>

报告错误

请通过 https://bugs.gentoo.org/ 报告错误

文件

pax-utils.eclass

参见

ebuild(5)
https://gitweb.gentoo.org/repo/gentoo.git/log/eclass/pax-utils.eclass


索引

名称
描述
支持的 EAPIS
函数
ECLASS 变量
作者
维护者
报告错误
文件
参见

本手册使用 man2html 生成。
时间: 2024 年 11 月 12 日格林威治标准时间 03:27:01