对应教材第9章。本知识域关注操作系统、系统攻击、恶意代码、应用和数据五个层面的运行环境安全。
一、知识结构总览
text
计算环境安全
├─ 9.1 操作系统安全
├─ 9.2 信息收集与系统攻击
├─ 9.3 恶意代码防护
├─ 9.4 应用安全
└─ 9.5 数据安全
二、知识子域 9.1:操作系统安全
9.1.1 安全机制
1. 标识与鉴别
- 为用户、进程和设备分配唯一标识,并验证认证凭据。
- Windows 常结合本地账户、域账户、SID、密码/令牌及组策略。
- Linux 使用 UID/GID、口令哈希、PAM 等实现身份和认证策略。
- 重点:禁用默认/无用账户、唯一身份、强认证、失败限制和凭据安全存储。
2. 访问控制
- 根据主体、客体、权限和策略控制文件、进程、设备和系统资源。
- Windows 使用访问令牌、ACL 等;Linux 使用所有者/组/其他权限、ACL 及扩展强制访问控制。
- 默认拒绝、最小权限、职责分离,避免普通业务以管理员/root 运行。
3. 权限管理
- 特权账号数量最小化,管理操作使用单独身份并强化审计。
- 定期复核权限、清理休眠账户、控制提权工具和服务账户。
- 权限应随入职、调岗和离职及时变更。
4. 信道保护
- 正常信道:使用认证和加密保护远程管理、进程间通信与网络连接。
- 隐蔽信道:利用系统资源状态或时间等非预期方式传递信息;通过最小共享、资源隔离、流量分析和限制精度降低风险。
5. 安全审计
- 记录登录、权限使用、策略变更、对象访问和系统事件。
- 日志应时间同步、集中保护、限制访问、监控异常并按期限保存。
- 审计记录过少无法追责,过多则产生性能、存储和分析负担,应依据风险配置。
9.1.2 安全配置要点
- 安全补丁:资产识别、风险排序、测试、部署、验证和例外管理。
- 最小化部署:删除无用软件、服务、端口、账户和协议。
- 远程访问:限制来源,使用加密和 MFA,禁用不安全协议,记录管理活动。
- 账户和口令:强策略、锁定/限速、特权隔离、服务账户管理和定期复核。
- 审计:关键事件全覆盖、集中存储、防篡改和告警。
- 其他:文件权限、主机防火墙、安全启动、反恶意代码、备份、基线核查。
三、知识子域 9.2:信息收集与系统攻击
9.2.1 信息收集
- 目标:了解组织、人员、域名、地址、系统、端口、服务、版本和信任关系,为攻击或防御建模。
- 公开渠道:搜索引擎、网站、社交平台、招聘信息、代码仓库、DNS 和公开文档元数据。
- 网络服务:主机发现、端口扫描、服务识别、操作系统判断、目录和账号枚举。
- 防范:最少公开、清理元数据、资产暴露管理、关闭无用服务、访问控制、速率限制、欺骗信息谨慎使用和异常探测。
- 合法边界:主动扫描和枚举只能对明确授权目标进行。
9.2.2 缓冲区溢出
- 缓冲区是存放数据的连续内存区域;写入超过边界会覆盖相邻数据、控制信息或返回地址。
- 攻击者通过精心构造输入改变程序控制流、执行代码、提升权限或使程序崩溃。
- 类型包括栈溢出、堆溢出、整数溢出导致的长度计算错误和格式化字符串等。
- 防护:边界检查、安全语言/库、编译器保护、栈保护、DEP/NX、ASLR、控制流保护、最小权限、模糊测试和代码审查。
- 单一缓解机制不能替代修复根本编码缺陷。
四、知识子域 9.3:恶意代码防护
9.3.1 预防
传播路径
- 文件传播:文档宏、可执行文件、移动介质和共享目录。
- 网络传播:漏洞利用、恶意链接、邮件、即时通信和蠕虫扫描。
- 软件部署:供应链、捆绑软件、伪造安装包和被劫持更新。
防护策略
- 安全策略:允许软件清单、权限限制、邮件与下载控制、介质管理。
- 减少漏洞:补丁、最小服务、安全配置和应用控制。
- 减轻威胁:分区隔离、过滤、EDR/反病毒、备份、用户培训和威胁情报。
9.3.2 检测与分析
- 特征码扫描:匹配已知字节或规则,速度快、对已知样本准确,但易被变形绕过。
- 行为检测:监控进程、文件、注册表、网络和系统调用,能发现未知行为但可能误报。
- 静态分析:不运行样本,检查格式、字符串、导入、代码和混淆,安全但看不到运行时行为。
- 动态分析:在隔离沙箱运行,观察文件、进程、网络和持久化,需防逃逸与环境识别。
- 实践中结合静态、动态、内存、网络和情报分析。
9.3.3 清除
- 引导区型:从可信介质启动,修复引导记录并检查磁盘。
- 文件依附型:识别受感染文件,清除、隔离或以可信版本替换。
- 独立型:终止恶意进程,删除文件、服务、任务和持久化项。
- 嵌入型:修复被修改的文档、脚本、固件或应用组件。
- 对高风险入侵,重建可信系统通常比"只删除恶意文件"更可靠;清除后应修复入口、轮换凭据并持续监控。
9.3.4 互联网恶意代码防护
- 邮件、Web、DNS、终端和网络多层过滤。
- 浏览器和插件及时更新,限制脚本和下载执行。
- 对外服务加固、漏洞管理、应用白名单、沙箱和隔离。
- 快速共享 IOC、阻断通信、追踪横向移动并从可信备份恢复。
五、知识子域 9.4:应用安全
9.4.1 Web 应用安全
Web 架构风险
- HTTP 天然是明文、无状态协议;明文传输、弱认证和状态跟踪不当会形成风险。
- 服务端包含 Web 服务器、应用、框架、API 和数据库;客户端包含浏览器、脚本、插件和本地存储。
- 信任边界上的所有输入都应视为不可信。
常见漏洞
| 漏洞 | 原因 | 主要防护 |
|---|---|---|
| SQL 注入 | 将输入拼接进查询 | 参数化查询、最小数据库权限 |
| XSS | 不可信数据进入页面解释上下文 | 上下文输出编码、模板安全、CSP |
| 认证/会话失效 | 凭据、令牌和会话管理不当 | MFA、安全 Cookie、轮换和超时 |
| 不安全对象引用 | 只凭客户端对象标识授权 | 每次请求做服务端对象级授权 |
| CSRF | 浏览器自动携带凭据执行伪造请求 | CSRF Token、SameSite、二次确认 |
| 配置不安全 | 默认账户、调试、目录和错误权限 | 安全基线、自动核查、最小化 |
| 密码存储不安全 | 明文、弱哈希或密钥管理不当 | 加盐慢哈希、密钥管理和轮换 |
| 访问控制错误 | 服务端未强制执行权限 | 集中策略、默认拒绝、测试 |
| 传输保护不足 | 弱协议、证书校验或混合内容 | 正确配置 TLS、HSTS |
| 开放重定向 | 未验证跳转目标 | 允许列表或内部标识映射 |
| 异常处理不当 | 泄露堆栈、绕过事务 | 统一错误、日志和安全失败 |
| DoS | 资源无界消耗 | 限额、限速、队列、降级和扩展 |
防护技术
- WAF 在应用前识别和阻断部分恶意请求,可缓解常见攻击,但不能替代安全编码。
- 网页防篡改通过完整性监控、受控发布和恢复机制保护静态或动态内容。
- 根本措施是安全需求、设计、编码、测试、部署和监控全生命周期协同。
9.4.2 电子邮件安全
- 工作链路:客户端提交 → 邮件服务器传输 → 对方服务器接收 → 用户读取。
- 风险:伪造、钓鱼、恶意附件、垃圾邮件、窃听、篡改、账号接管和隐私泄露。
- S/MIME:基于证书为邮件提供加密和数字签名。
- PGP:基于公钥密码和信任模型保护邮件或文件。
- TLS 可保护服务器间或客户端到服务器的传输,但不等同于端到端内容加密。
9.4.3 其他互联网应用
- 远程接入:强认证、加密、设备健康检查、最小权限、会话审计和及时撤销。
- DNS:防缓存污染、劫持、隧道和 DDoS,采用访问限制、DNSSEC、冗余和监控。
- 即时通信:防账号冒用、恶意文件、链接、信息误发和历史记录泄露。
六、知识子域 9.5:数据安全
9.5.1 数据库安全
- 要求:机密性、完整性、可用性、真实性、可追责和隐私合规。
- 控制:强身份鉴别、角色与最小权限、职责分离、参数化访问、网络隔离、传输/存储加密、审计和数据库活动监控。
- 运维:补丁、配置基线、备份恢复、脱敏、密钥管理、容量和高可用。
- 管理员权限也应受审批和审计,应用账户不得拥有不必要的结构或管理权限。
9.5.2 数据泄漏防护
- DLP 识别敏感数据并监控其在终端、网络、邮件、云和存储中的使用与流动。
- 数据状态:静态数据、传输中数据、使用中数据。
- 基本过程:发现与分类 → 定义策略 → 监测 → 阻断/隔离/加密 → 告警调查 → 调优和度量。
- DLP 需要准确分类、业务例外和隐私边界;过度阻断会影响业务,误报无人处置也无法降低风险。
七、关键关系与易混点
| 概念 | 关键区别 |
|---|---|
| 漏洞扫描 | 自动发现已知弱点 |
| 信息收集 | 构建目标资产和暴露画像 |
| 静态恶意代码分析 | 不执行样本查看结构与代码 |
| 动态恶意代码分析 | 隔离执行并观察行为 |
| WAF | 运行时过滤 Web 请求 |
| 安全编码 | 从根源减少应用漏洞 |
| DLP | 识别和控制敏感数据外流,不等同于备份 |
八、英文缩写解释
| 缩写 | 英文全称 | 中文含义 |
|---|---|---|
| SID | Security Identifier | Windows 安全标识符 |
| UID/GID | User Identifier / Group Identifier | 用户/组标识符 |
| PAM | Pluggable Authentication Modules | 可插拔认证模块 |
| ACL | Access Control List | 访问控制列表 |
| MFA | Multi-Factor Authentication | 多因素鉴别 |
| DEP/NX | Data Execution Prevention / No Execute | 数据执行保护/不可执行位 |
| ASLR | Address Space Layout Randomization | 地址空间布局随机化 |
| EDR | Endpoint Detection and Response | 终端检测与响应 |
| IOC | Indicator of Compromise | 失陷指标 |
| HTTP | Hypertext Transfer Protocol | 超文本传输协议 |
| SQL | Structured Query Language | 结构化查询语言 |
| XSS | Cross-Site Scripting | 跨站脚本 |
| CSRF | Cross-Site Request Forgery | 跨站请求伪造 |
| CSP | Content Security Policy | 内容安全策略 |
| TLS | Transport Layer Security | 传输层安全协议 |
| HSTS | HTTP Strict Transport Security | HTTP 严格传输安全 |
| WAF | Web Application Firewall | Web 应用防火墙 |
| S/MIME | Secure/Multipurpose Internet Mail Extensions | 安全多用途互联网邮件扩展 |
| PGP | Pretty Good Privacy | PGP 加密体系 |
| DNSSEC | Domain Name System Security Extensions | 域名系统安全扩展 |
| DLP | Data Loss Prevention | 数据泄漏防护 |