6.6 KiB
6.6 KiB
title, type, tags, sources, last_updated
| title | type | tags | sources | last_updated | ||||
|---|---|---|---|---|---|---|---|---|
| Security Engineering Concepts | concept |
|
|
2026-05-01 |
Aliases
- AppSec
- 安全工程概念集
Threat Modeling
定义:系统化识别、量化并优先排序系统潜在安全威胁的结构化方法论。通过回答"系统可能被如何攻击"前置发现风险,而非事后补救。
核心框架 — STRIDE(微软提出,六维度威胁分析):
| 维度 | 威胁描述 | 典型缓解措施 |
|---|---|---|
| Spoofing(欺骗) | 冒充他人身份 | MFA、Token binding、账户锁定 |
| Tampering(篡改) | 修改数据或代码 | HMAC 签名、输入验证、幂等键 |
| Repudiation(抵赖) | 否认执行过某操作 | 不可变审计日志、防篡改存储 |
| Info Disclosure(信息泄露) | 暴露敏感数据 | 加密、通用错误响应、访问控制 |
| DoS(拒绝服务) | 使服务不可用 | 限流、WAF、熔断器、请求大小限制 |
| Elevation of Privilege(权限提升) | 越权执行操作 | RBAC(服务端强制执行)、会话隔离 |
工作流:架构映射 → 数据流识别 → 信任边界编目 → STRIDE 逐组件分析 → 风险优先级排序(可能性 × 影响)
Defense in Depth(防御深度)
定义:不依赖单一保护层,假设任何一层均可能被绕过,通过多层独立控制叠加实现纵深防护的安全策略。
标准叠加链:
Internet → WAF → Rate Limiting → Input Validation → Parameterized Queries → Output Encoding → CSP
核心原则:
- 每层独立有效(单层失效不导致整体失效)
- 多层协同(纵深而非重复)
- 纵深优于广度(10 层各有差异的防御 > 3 层同类重复)
对比 Default Deny:Default Deny 是每层内部的策略选择(默认阻止一切、仅放行白名单),Defense in Depth 是整体架构策略(多层独立防御叠加)。
Zero Trust Architecture(零信任架构)
定义:永不隐式信任、始终验证每次访问请求的架构范式,无论访问来源是内网还是外网。
三大核心原则:
- 最小权限访问(Least Privilege):仅授予完成任务所需的最低权限
- 微隔离(Microsegmentation):网络级别细分隔离,防止横向移动
- 持续验证(Continuous Verification):每次请求均验证身份和权限
实现组件:
- 身份认证:OAuth 2.0 + PKCE、OpenID Connect、Passkeys/WebAuthn、MFA
- 授权模型:RBAC / ABAC / ReBAC(按需选型)
- 网络层:mTLS、服务网格策略(Istio/Linkerd)
- 密钥管理:HashiCorp Vault / AWS Secrets Manager / SOPS(带轮换策略)
CVSS 3.1(通用漏洞评分系统)
定义:标准化漏洞严重等级评估框架,0.0–10.0 分制量化漏洞威胁程度。
| 等级 | 分数区间 | 典型场景 |
|---|---|---|
| Critical | 9.0–10.0 | RCE、认证绕过、SQL注入(可访问数据) |
| High | 7.0–8.9 | 存储型XSS、IDOR(敏感数据暴露)、权限提升 |
| Medium | 4.0–6.9 | CSRF(状态变更操作)、缺少安全响应头 |
| Low | 0.1–3.9 | 非敏感页面点击劫持、轻度信息泄露 |
| Informational | 0.0 | 最佳实践偏差、防御深度改进建议 |
Security Engineer 的严重等级判定:Critical > High > Medium > Low > Informational,每级必须附可利用性证明和具体修复代码。
OWASP Top 10(2021+)
定义:Open Web Application Security Project 发布的 Web 应用十大最关键安全风险清单,是代码审查和漏洞评估的基准清单。
| 排名 | 风险名称 | 核心问题 |
|---|---|---|
| A01 | Broken Access Control(访问控制失效) | 授权检查缺失、IDOR、批量赋值 |
| A02 | Cryptographic Failures(加密失败) | 敏感数据暴露、弱加密/哈希 |
| A03 | Injection(注入) | SQLi、NoSQLi、CMDi、模板注入 |
| A04 | Insecure Design(不安全设计) | 缺失安全架构、威胁建模不足 |
| A05 | Security Misconfiguration(安全配置错误) | 错误配置、默认凭据、未修复组件 |
| A06 | Vulnerable Components(易受攻击组件) | 使用已知漏洞组件、组件停止维护 |
| A07 | Auth Failures(身份认证失效) | 会话管理缺陷、凭据填充 |
| A08 | Data Integrity Failures(数据完整性失效) | CI/CD 供应链攻击、未验证更新 |
| A09 | Logging & Monitoring Failures(日志监控缺失) | 未记录安全事件、无法检测入侵 |
| A10 | SSRF(服务器端请求伪造) | URL 验证缺失导致内网探测 |
Supply Chain Security(供应链安全)
定义:针对软件供应链(依赖项、CI/CD 管道、第三方组件)的系统性安全防护,覆盖从引入到部署的全链条。
核心实践:
- SBOM(软件物料清单):生成并监控所有直接和传递依赖的清单
- CVE 审计:持续扫描第三方包与已知漏洞数据库的匹配
- 包完整性校验:校验和、签名、lock 文件验证,防止注入
- 依赖混淆攻击检测:同名恶意包检测(typosquatting / dependency confusion)
- 可复现构建:确保构建结果可被独立验证,防供应链投毒
推荐工具:Trivy(容器/依赖扫描)、Semgrep(SAST)、Gitleaks(密钥检测)
Secrets Management(密钥管理)
定义:敏感凭据(API 密钥、数据库密码、TLS 证书、加密密钥)的全生命周期安全管理,覆盖创建、存储、轮换、审计和销毁。
核心原则:
- 永不硬编码(禁止源码/配置文件中的明文凭据)
- 永不日志记录(日志中禁止出现密钥内容)
- 永不客户端暴露(禁止前端/移动端直接持有密钥)
- 必须轮换策略(定期自动轮换 + 紧急撤销能力)
推荐方案:
- HashiCorp Vault:企业级,支持动态密钥、PKI、加密即服务
- AWS Secrets Manager:AWS 原生,支持自动轮换(与 RDS/Redshift 原生集成)
- SOPS(Secrets OPerationS):YAML/JSON 加密,支持 Age/GPG,云厂商 KMS 集成
Related Concepts
- engineering-security-engineer:以上所有概念的来源 Agent Personality
- engineering-threat-detection-engineer:威胁检测 Engineer(检测层),与预防层互补
- engineering-backend-architect:共享"安全优先"原则,侧重系统架构视角
- OWASP Top 10:Web 应用安全的基准清单
- Zero Trust Architecture:零信任是安全架构设计的核心理念