用途
缺陷分类知识库用于在源代码审查过程中提供统一的缺陷分类与检测参考。它综合了 MITRE CWE、OWASP Top 10、NASA Power of 10、IBM ODC、IEEE 1044 以及 Beizer 分类法,将源码失效模式整理为可操作的检测依据,帮助审查者系统性地识别、归类并映射缺陷。
主要能力
该知识库包含 16 个宏观类别和 140 多个子类别,覆盖以下缺陷模式领域:
- 并发与状态:并发/并行代码、共享状态、异步模式、闭包、变量作用域。
- 逻辑与类型:比较、布尔逻辑、类型转换、泛型、序列化。
- 内存与资源:内存管理(C/C++/Rust)、资源生命周期、错误处理、性能瓶颈。
- 安全:注入、认证、加密、密钥、CORS、SSRF、输入验证。
- 分布式与集成:微服务、API、分布式状态、消息队列、服务网格、迁移。
- 数据设计与运维:数据库/ORM、设计模式、构建/部署、测试、可观测性。
此外还提供跨领域的检测矩阵,包含每个类别的检测通道、按语言加权的关注点以及 ROI 优先级排序。审查框架参考文件包含认知模型、失效流方法、反模式清单、心智模型以及严重性/评分系统。
使用方式
- 识别待审查代码的语言和领域。
- 加载 review-frameworks.md 参考文件(用于 code-auditor 代理)。
- 加载 1 至 3 个与语言/领域匹配的分类参考文件。注意不要加载全部文件,只选择适用的部分。
- 在分析过程中应用已加载参考文件中的检测策略。
- 在适用的情况下将发现映射到 CWE 标识符。
- 使用 detection-matrix.md 确定检测方法的优先级。
按语言加权的类别关注点如下:
- C/C++:concurrency-state.md + memory-resources.md(类别 1、5)。
- JVM(Java/Kotlin/Scala):concurrency-state.md + logic-types.md + memory-resources.md(类别 2、7、8)。
- JavaScript/TypeScript:concurrency-state.md + logic-types.md + security.md(类别 2、4、6)。
- Python:logic-types.md + security.md + memory-resources.md(类别 4、6、7)。
- Go/Rust:concurrency-state.md + memory-resources.md(类别 1、5、7)。
- 微服务(任意语言):distributed-integration.md + data-design-ops.md(类别 8-12)。
适用场景
适用于代码审查、安全审计、缺陷分类与映射、按语言或领域组织的缺陷检测优先级规划,以及需要将发现关联到 CWE 或 OWASP 标准的工作流。
限制
该知识库为参考性资料,具体检测效果取决于审查者是否正确选择并应用相关参考文件。资料中未提供关于收费、价格、平台支持范围或具体使用步骤的更多信息。