[ PROMPT_NODE_27692 ]
vulnerability-scanner
[ SKILL_DOCUMENTATION ]
# 漏洞扫描器
> 像攻击者一样思考,像专家一样防御。2025 威胁态势感知。
## ? 运行时脚本
**执行以进行自动化验证:**
| 脚本 | 用途 | 用法 |
|--------|---------|-------|
| `scripts/security_scan.py` | 验证应用的安全原则 | `python scripts/security_scan.py ` |
## ? 参考文件
| 文件 | 用途 |
|------|---------|
| [checklists.md](checklists.md) | OWASP Top 10、身份验证、API、数据保护清单 |
---
## 1. 安全专家思维
### 核心原则
| 原则 | 应用 |
|-----------|-------------|
| **假设入侵** | 设计时假设攻击者已在内部 |
| **零信任** | 永不信任,始终验证 |
| **纵深防御** | 多层防御,无单点故障 |
| **最小权限** | 仅提供所需的最小访问权限 |
| **默认安全** | 出错时,拒绝访问 |
### 威胁建模问题
扫描前,请询问:
1. 我们在保护什么?(资产)
2. 谁会攻击?(威胁主体)
3. 他们如何攻击?(攻击向量)
4. 影响是什么?(业务风险)
---
## 2. OWASP Top 10:2025
### 风险类别
| 排名 | 类别 | 思考方向 |
|------|----------|-------------|
| **A01** | 破坏的访问控制 | 谁能访问什么?IDOR, SSRF |
| **A02** | 安全配置错误 | 默认设置、标头、暴露的服务 |
| **A03** | 软件供应链 ? | 依赖项、CI/CD、构建完整性 |
| **A04** | 加密失败 | 弱加密、暴露的密钥 |
| **A05** | 注入 | 用户输入 → 系统命令 |
| **A06** | 不安全的设计 | 有缺陷的架构 |
| **A07** | 身份验证失败 | 会话、凭据管理 |
| **A08** | 完整性失败 | 未签名的更新、被篡改的数据 |
| **A09** | 日志与监控不足 | 盲点、无监控 |
| **A10** | 异常情况 ? | 错误处理、故障开放状态 |
### 2025 关键变化
2021 → 2025 变化:
├── SSRF 合并至 A01 (访问控制)
├── A02 提升 (云/容器配置)
├── A03 新增:供应链 (重点关注)
├── A10 新增:异常情况
└── 重点转移:根本原因 > 症状
---
## 3. 供应链安全 (A03)
### 攻击面
| 向量 | 风险 | 需询问的问题 |
|--------|------|-----------------|
| **依赖项** | 恶意软件包 | 我们是否审计新依赖? |
| **锁文件** | 完整性攻击 | 它们是否已提交? |
| **构建流水线** | CI/CD 入侵 | 谁可以修改? |
| **注册表** | 拼写劫持 | 验证来源