Grsecurity/附录/系统资源
外观
< Grsecurity | 附录
此表列出了所有可以被 grsecurity 限制的系统资源。Grsecurity 支持所有Linux 支持的资源,但对它们使用略微不同的名称:TheRLIMIT前缀被替换为RES. 例如,Linux 资源RLIMIT_CPU在 grsecurity 中被称为RES_CPU.
有关 Linux 中资源的详细信息,请参见getrlimit 的手册页.
单个资源规则遵循以下语法
<resource name> <soft limit> <hard limit>
此语法的示例将是
RES_FSIZE 5K 5K
这将阻止进程创建大于 5 千字节 的文件。
使用unlimited对于软限制和硬限制都是有效的,表示无限资源。请注意,通过省略资源限制,将使用系统的默认限制(由 PAM 或应用程序本身设置)。如果在策略中指定了资源,则特定限制将覆盖给定主体对系统默认限制的覆盖。
在指定资源限制时,允许使用多个后缀。它们在下面描述。
后缀 | 含义 |
---|---|
s | 以秒为单位的时间量。 |
m | 以分钟为单位的时间量。 |
h | 以小时为单位的时间量。 |
d | 以天为单位的时间量。 |
K | 以千字节为单位的大小。 |
M | 以兆字节为单位的大小。 |
G | 以千兆字节为单位的大小。 |
下面提供了支持资源的完整列表。
资源名称 | 含义 |
---|---|
RES_AS | 进程虚拟内存(地址空间)的最大大小(以字节为单位)。 |
RES_CORE | 核心文件最大大小(以字节为单位)。当为 0 时,不创建核心转储文件。当不为零时,较大的转储将被截断为此大小。 |
RES_CPU | 以秒为单位的 CPU 时间限制。 |
RES_DATA | 进程数据段的最大大小(以字节为单位)(已初始化数据、未初始化数据和堆)。 |
RES_FSIZE | 进程可以创建的文件的最大大小(以字节为单位)。 |
RES_LOCKS | 对该进程可以建立的 flock() 锁和 fcntl() 租约的组合数量的限制。 |
RES_MEMLOCK | 可以锁定到 RAM 中的内存字节数的最大值。实际上,此限制被向下舍入到最接近的系统页面大小的倍数。 |
RES_MSGQUEUE | 指定可以为调用进程的实际用户 ID 分配用于 POSIX 消息队列的字节数的限制 |
RES_NICE | 指定进程的 nice 值可以使用 setpriority(2) 或 nice(2) 提高到的上限。 |
RES_NOFILE | 指定一个值,该值比该进程可以打开的最大文件描述符号大 1。 |
RES_NPROC | 可以为调用进程的实际用户 ID 创建的线程数的最大值。 |
RES_RSS | 指定进程驻留集(驻留在 RAM 中的虚拟页面数)的限制(以页面为单位)。此限制仅在 Linux 2.4.x,x < 30 中有效。 |
RES_RTPRIO | 指定可以使用 sched_setscheduler(2) 和 sched_setparam(2) 为该进程设置的实时优先级的上限。 |
RES_SIGPENDING | 指定可以为调用进程的实际用户 ID 排队的信号数的限制。为了检查此限制,标准信号和实时信号都被计算在内。 |
RES_STACK | 进程堆栈的最大大小(以字节为单位)。 |
RES_RTTIME | 指定在实时调度策略下调度进程的情况下,进程可以消耗的 CPU 时间量限制,而无需进行阻塞系统调用。为了限制此限制,每次进程进行阻塞系统调用时,其消耗的 CPU 时间计数都会重置为零。如果进程继续尝试使用 CPU 但被抢占,如果其时间片过期,或者如果它调用 sched_yield(2),则 CPU 时间计数不会重置。达到软限制后,进程将收到一个 SIGXCPU 信号。如果进程捕获或忽略此信号并继续消耗 CPU 时间,则每秒将生成一次 SIGXCPU,直到达到硬限制,此时进程将收到一个 SIGKILL 信号。此限制的预期用途是阻止失控的实时进程锁定系统。 |
RES_CRASH | 这是一个伪资源,仅由 RBAC 系统解释。此资源的软限制和硬限制的含义被覆盖。该资源的目的是能够针对给定主体对暴力破解攻击尝试进行限速。此资源的软限制是允许主体以暗示利用尝试的方式崩溃的次数。硬限制指定这些崩溃允许发生的持续时间。使用类似以下规则RES_CRASH 3 30m可以将特权二进制文件限制为每 10 分钟进行 3 次利用尝试,从而阻止暴力破解尝试。RBAC 系统积极响应超出此限制的暴力破解尝试。如果目标是 setuid 二进制文件,则攻击者的所有进程都将被杀死,并且攻击者将无法在配置的剩余时间内登录。如果目标是派生网络守护进程,则该守护进程将无法在配置的剩余时间内派生自身的其他副本。 |