Files
wonder 70e368e235
Deploy Examination / deploy (push) Successful in 7s
feat: add cybersecurity topic with 6 subtopics (204 questions)
New topic group: 网络安全专题 (cybersecurity)
Subtopics:
- web-security: Web 安全基础 (34 questions)
- crypto-basics: 密码学基础 (34 questions)
- buffer-overflow: 缓冲区溢出与漏洞利用 (34 questions)
- os-security: 操作系统安全 (34 questions)
- network-attack: 网络攻防 (34 questions)
- secure-coding: 安全编程实践 (34 questions)

Question types per subtopic:
- single_choice × 20
- true_false × 10
- short_answer × 3
- code_reading × 1

Difficulty range: 1-3 (基础)
2026-09-17 13:33:04 +08:00

85 lines
5.2 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"topic": "os-security",
"type": "short_answer",
"schema_version": "1.0.0",
"generated": "2026-09-17T00:00:00+08:00",
"questions": [
{
"id": "sa-001",
"type": "short_answer",
"difficulty": 2,
"tags": [
"操作系统安全",
"权限模型"
],
"question": "简述 Linux 中 DAC(自主访问控制)、MAC(强制访问控制)和 Capabilities 三种权限机制的区别和适用场景。",
"answer": "DAC 基于文件所有者自行设置权限(如 rwx 权限位和 ACL),灵活性高但安全性依赖于用户配置,适用于一般桌面和服务器环境。MAC 由系统安全策略统一强制执行,用户无法覆盖(如 SELinux 的安全上下文),适用于高安全需求环境如政府、军事系统。Capabilities 将 root 的超级权限拆分为细粒度的独立特权(如 CAP_NET_BIND_SERVICE),允许进程仅获得所需特权,适用于需要最小特权原则的服务进程和容器环境。三者可组合使用:DAC 作为基础权限控制,MAC 提供强制策略,Capabilities 实现精细特权分配。",
"keywords": [
"DAC",
"MAC",
"Capabilities",
"自主访问控制",
"强制访问控制",
"SELinux",
"最小特权",
"ACL",
"权限"
],
"scoring_rubric": "满分标准:正确区分三种机制(3分);说明 DAC 基于所有者自主控制(1分);说明 MAC 由系统策略强制执行(1分);说明 Capabilities 将 root 权限细粒化(1分);提及各自适用场景(2分);说明三者可组合使用(1分)。部分正确酌情给分。",
"source": null,
"related": [],
"explanation": ""
},
{
"id": "sa-002",
"type": "short_answer",
"difficulty": 2,
"tags": [
"操作系统安全",
"沙箱"
],
"question": "解释 Linux 容器技术中 Namespace 和 Cgroup 各自的作用,并说明它们如何协同工作实现容器的安全隔离。",
"answer": "Namespace 负责资源隔离:每种 Namespace(PID、NET、MNT、UTS、IPC、USER、Cgroup)隔离一类系统资源,使容器内的进程只能看到属于该容器命名空间的资源,如同拥有独立的系统视图。Cgroup(Control Groups)负责资源限制:通过配置文件限制进程组可使用的 CPU 时间、内存、磁盘 I/O、网络带宽等资源上限,防止单个容器耗尽宿主机资源。两者协同工作:Namespace 提供'看不见彼此'的隔离,Cgroup 提供'用不了太多'的限制。同时结合 seccomp 限制系统调用、AppArmor/SELinux 提供强制访问控制,构成完整的容器安全体系。",
"keywords": [
"Namespace",
"Cgroup",
"隔离",
"资源限制",
"PID",
"NET",
"容器",
"seccomp"
],
"scoring_rubric": "满分标准:正确描述 Namespace 的隔离作用(2分);列举至少 3 种 Namespace 类型(1分);正确描述 Cgroup 的资源限制作用(2分);说明两者的协同关系(2分);提及额外的安全层如 seccomp(1分)。部分正确酌情给分。",
"source": null,
"related": [],
"explanation": ""
},
{
"id": "sa-003",
"type": "short_answer",
"difficulty": 3,
"tags": [
"操作系统安全",
"windows安全",
"win32api"
],
"question": "描述 Windows 安全子系统在一次文件访问请求中的完整检查流程,包括涉及的关键组件(如 Access Token、Security Descriptor、DACL 等)。",
"answer": "当进程尝试访问一个文件时,Windows 安全子系统的检查流程如下:1)进程调用如 CreateFile() 的 Win32 API;2)内核安全引用监视器(Security Reference Monitor)介入;3)系统获取进程的 Access Token(包含用户 SID、组 SID 列表和特权);4)获取文件的 Security Descriptor(包含 Owner SID、DACL 和 SACL);5)安全引用监视器遍历 DACL 中的 ACE(访问控制条目),将请求的访问掩码与每个 ACE 中的允许/拒绝权限进行匹配;6)如果遇到拒绝 ACE 立即拒绝;如果所有匹配的 ACE 都允许则放行;如果没有匹配的 ACE 且 DACL 不存在则拒绝(NULL DACL 除外,此时允许所有人完全访问);7)若 SACL 中有审计条目,生成安全审计事件;8)检查进程特权(如 SeBackupPrivilege 可绕过部分 DACL 检查);9)返回允许或拒绝的结果给调用者。",
"keywords": [
"Access Token",
"Security Descriptor",
"DACL",
"SACL",
"ACE",
"Security Reference Monitor",
"SID",
"访问掩码"
],
"scoring_rubric": "满分标准:提及安全引用监视器(1分);正确描述 Access Token 的内容和作用(2分);正确描述 Security Descriptor 及其组成(2分);说明 DACL/ACE 的匹配逻辑(拒绝优先)(2分);提及 SACL 审计功能(1分);提及特权检查(1分);流程描述完整连贯(1分)。部分正确酌情给分。",
"source": null,
"related": [],
"explanation": ""
}
]
}