内核隔离与防御

共 18 题
#

1. Landlock LSM 与 seccomp-BPF 在文件系统路径访问控制上的能力对比,组合使用时的限制是什么?

A Landlock 能控制网络访问
B seccomp 能按路径区分文件访问权限
C Landlock 需要 root 权限才能使用
D Landlock 基于路径做文件系统访问控制,seccomp 做系统调用级过滤 ✓ 正确答案
#

2. ptrace 跨进程附加在 user namespace、YAMA LSM 和容器运行时中的权限收敛策略?

A 容器运行时默认开放 ptrace 以便调试
B user namespace 使进程总能附加到任意宿主进程
C YAMA 的 ptrace_scope 限制同 uid 之外进程的附加 ✓ 正确答案
D ptrace 无法读取进程内存
#

3. kernel.unprivileged_bpf_disabled 与 net.core.bpf_jit_harden 在 eBPF 子系统权限收敛中的作用?

A eBPF 加载不需要任何权限
B bpf_jit_harden 用于扩大 JIT 缓冲区
C unprivileged_bpf_disabled=1 禁用无特权用户的 eBPF 加载 ✓ 正确答案
D bpf_jit_harden 与 JIT spraying 无关
#

4. io_uring 与 seccomp 的冲突,为什么 io_uring 的某些操作不受 seccomp 过滤器约束,内核如何限制未授权 io_uring 使用?

A seccomp 能完整过滤 io_uring 的所有操作
B io_uring_disabled 会扩大 io_uring 权限
C io_uring 的部分异步操作可绕过 seccomp 逐条系统调用过滤 ✓ 正确答案
D io_uring 与传统系统调用路径完全相同
#

5. seccomp-BPF 返回 KILL、ERRNO、TRAP、USER_NOTIF 时分别适用于什么防御场景?

A USER_NOTIF 把系统调用转发给用户态监督进程裁决 ✓ 正确答案
B KILL 动作让系统调用返回错误码
C ERRNO 直接终止违规进程
D TRAP 动作不产生任何信号
#

6. Linux 5.x 引入的 Kernel Lockdown 与 Secure Boot 在内核模块加载与 /dev/mem 访问上的限制差异?

A Kernel Lockdown 限制 root 运行时加载未签名模块与访问 /dev/mem ✓ 正确答案
B Secure Boot 是内核运行期的策略
C Kernel Lockdown 与 Secure Boot 完全等价
D /dev/mem 访问不受 Lockdown 限制
#

7. 容器逃逸风险评审中,应如何核对特权模式、设备节点、宿主目录、capabilities 与 LSM 策略?

A --cap-drop ALL 会扩大权限
B 挂载 /dev/sda 只影响容器内
C --privileged 容器禁用大部分隔离并授予全部 capabilities,逃逸风险最高 ✓ 正确答案
D LSM 策略缺失不会增加逃逸风险
#

8. Spectre v1/v2 缓解(IBRS、STIBP、retpoline、LFENCE)在云厂商镜像中的默认开关与性能影响?

A retpoline 在编译期用返回指令替代间接跳转,缓解 Spectre v2 且开销较小 ✓ 正确答案
B STIBP 只影响单核性能
C 云厂商默认关闭所有 Spectre 缓解以提升性能
D LFENCE 用于缓解溢出攻击
#

9. TPM 2.0 与 PCR 扩展链在远程证明(remote attestation)与内核完整性度量中的协作模式?

A PCR 值可以被攻击者自由改写
B PCR 通过扩展运算形成不可篡改的度量链,TPM 用 AK 签名生成证明 ✓ 正确答案
C 远程证明不用 nonce 防重放
D TPM 只用于加密文件
#

10. user、mount、PID、network namespace 分别隔离哪些对象,user namespace 映射为何影响其他 namespace 权限?

A PID namespace 隔离网络栈
B user namespace 通过 uid/gid 映射把容器内 root 的能力限定在自身命名空间内 ✓ 正确答案
C network namespace 隔离文件系统挂载
D mount namespace 隔离进程 ID
#

11. 内核隔离机制,namespaces/cgroups 与 seccomp/LSM 如何配合?

A LSM 只做视图隔离
B seccomp 用于资源配额
C cgroups 限制 CPU/内存等资源上限,namespaces 提供资源视图隔离 ✓ 正确答案
D namespaces 限制资源使用量
#

12. 内核模块签名验证如何阻止加载未签名模块,与 Kernel Lockdown 的 lockdown=integrity/confidentiality 模式的关系?

A Lockdown 的 confidentiality 模式允许读取内核内存
B 模块签名验证在加载时拒绝未签名模块,Lockdown 的 integrity 模式强制该要求 ✓ 正确答案
C 模块签名验证与内核完整性无关
D Lockdown 只限制用户态应用
#

13. kptr_restrict 与 dmesg_restrict 如何防止内核地址泄漏,为什么 /proc/kallsyms 默认对普通用户隐藏真实地址?

A 内核地址泄露不影响 KASLR
B dmesg_restrict 让所有用户都能读内核日志
C kallsyms 显示真实地址是安全默认
D kptr_restrict 限制内核指针显示,kallsyms 对普通用户隐藏真实地址以保护 KASLR ✓ 正确答案
#

14. 在 RISC-V 与 ARM64 平台上 MTE(Memory Tagging Extension)如何检测 use-after-free 与 buffer overflow?

A MTE 无法检测 use-after-free
B MTE 只检测逻辑错误
C MTE 通过校验指针标签与内存标签一致性,检测越界与悬垂指针访问 ✓ 正确答案
D MTE 标签碰撞不影响检测
#

15. cgroup v2 的资源控制与 namespace 的视图隔离有何不同,两者为何不能互相替代?

A namespace 能限制资源使用量
B cgroup 提供资源视图隔离
C cgroup 限制资源使用量,namespace 隔离资源视图,二者互补不可替代 ✓ 正确答案
D 两者功能相同可以互相替代
#

16. AppArmor 与 SELinux 在策略表达力(type enforcement vs path-based)与运维成本上的取舍?

A AppArmor 基于路径策略易于编写,SELinux 基于类型强制表达力更强但运维成本高 ✓ 正确答案
B SELinux 基于路径做 MAC
C AppArmor 的细粒度高于 SELinux
D 两者策略完全相同
#

17. 内核安全防御,KASLR、SMEP/SMAP 与漏洞缓解如何实施?

A SMEP 禁止内核执行用户态代码,SMAP 禁止内核读写用户态数据 ✓ 正确答案
B KASLR 固定内核基址
C SMAP 允许内核访问用户态数据
D SMEP 与内核利用无关
#

18. namespaces 的类型,PID/网络/挂载命名空间如何区分?

A mount namespace 隔离进程 ID
B PID namespace 隔离网络栈
C network namespace 隔离独立的网络栈(接口、路由、防火墙) ✓ 正确答案
D UTS namespace 隔离用户 ID