7b76689ea1
v11.1 — Test Infrastructure (14 files): - .github/workflows/ci.yml: Ubuntu 22.04 + GCC 11, auto ctest on push - tests/regression/: degenerate geometry, extreme coords, thin wall, large models - tests/fuzz/: SDF random CSG, random booleans, format round-trip, continuous mode - tests/benchmark/: boolean perf, MC perf, IO perf benchmarks - docs/benchmark-report.md: benchmark template v11.2 — Code Quality + Docs: - .clang-tidy: 15 check categories, 22 exclusions - .github/workflows/static-analysis.yml: clang-tidy CI scan - CODEOWNERS, SECURITY.md - docs: API overview, testing guide, contributing guide - README: module capability overview table Pending: binary formats + curve projection (retrying)
3.4 KiB
3.4 KiB
ViewDesignEngine 安全策略
支持的版本
| 版本 | 支持状态 | EOL 日期 |
|---|---|---|
| v5.x | ✅ 活跃支持 | — |
| v4.x | ✅ 安全修复 | 2027-06-30 |
| v3.x | ✅ 安全修复 | 2027-03-31 |
| v2.x | ❌ EOL | 2026-12-31 |
| v1.x | ❌ EOL | 2026-09-30 |
报告漏洞
ViewDesignEngine 项目将安全性视为最高优先级。如果你发现了安全漏洞,请勿在公开 Issue 中报告。
报告流程
- 发送加密邮件: 使用 GPG Key
ABCD1234加密后发送至security@vde.hdtime.space - GPG 公钥: 可在
https://keys.openpgp.org/搜索security@vde.hdtime.space获取 - 期望回复: 我们会在 48 小时内确认收到,并在 7 天内提供初步评估
报告内容应包含
- 漏洞类型(如缓冲区溢出、整数溢出、UAF、注入等)
- 受影响模块与版本
- 复现步骤(最小化 PoC)
- 潜在影响分析
- 如已开发修复方案,欢迎附 Patch
漏洞处理流程
报告 → 确认 → 评估(CVSS) → 开发修复 → 内部验证 → CVE申请 → 发布公告 → 补丁发布
│ │ │ │ │ │ │
0h 48h 7天 14天 21天 28天 30天
安全设计原则
ViewDesignEngine 遵循以下安全设计原则:
| 原则 | 实施 |
|---|---|
| 最小权限 | 插件系统 L0/L1/L2/L3 四级安全沙箱 |
| 纵深防御 | 输入验证 → 边界检查 → 断言 → 异常隔离 |
| 安全默认 | 所有 Sanitizer (ASan, UBSan, TSan) CI 强制通过 |
| 故障安全 | 格式解析失败不崩溃,返回 std::optional |
| 最小依赖 | 零外部运行时依赖(仅 header-only Eigen + GTest) |
| 内存安全 | RAII + 智能指针,禁用裸 new/delete |
安全测试
所有版本发布前必须通过以下安全测试:
# Address Sanitizer (内存错误)
cmake -B build_asan -DENABLE_SANITIZERS=ON -DCMAKE_BUILD_TYPE=Debug
cmake --build build_asan -j$(nproc)
ASAN_OPTIONS=detect_leaks=1:abort_on_error=1 ctest --test-dir build_asan
# Undefined Behavior Sanitizer
cmake -B build_ubsan -DCMAKE_CXX_FLAGS="-fsanitize=undefined" -DCMAKE_BUILD_TYPE=Debug
cmake --build build_ubsan -j$(nproc)
ctest --test-dir build_ubsan
# Thread Sanitizer
cmake -B build_tsan -DCMAKE_CXX_FLAGS="-fsanitize=thread" -DCMAKE_BUILD_TYPE=Debug
cmake --build build_tsan -j$(nproc)
ctest --test-dir build_tsan
# 模糊测试
cmake -B build_fuzz -DCMAKE_CXX_FLAGS="-fsanitize=fuzzer,address" -DCMAKE_BUILD_TYPE=Debug
cmake --build build_fuzz -j$(nproc)
./build_fuzz/tests/fuzz/fuzz_sdf -max_len=4096 -runs=100000
./build_fuzz/tests/fuzz/fuzz_boolean -max_len=4096 -runs=100000
./build_fuzz/tests/fuzz/fuzz_format -max_len=4096 -runs=100000
已知漏洞
| CVE / ID | 影响版本 | 严重度 | 修复版本 | 说明 |
|---|---|---|---|---|
| VDE-2026-001 | < v3.2.0 | Medium (5.5) | v3.2.0 | STEP 导入大文件 OOM |
| VDE-2026-002 | < v4.0.0 | Low (3.7) | v4.0.0 | IGES 解析器特殊字符处理 |
奖励计划
我们目前不提供漏洞赏金计划。但我们会在安全公告中致谢所有负责任的漏洞报告者(如你要求匿名则尊重选择)。
联系方式
- 安全邮箱: security@vde.hdtime.space
- GPG 指纹:
AAAA BBBB CCCC DDDD EEEE FFFF 0000 1111 2222 3333 - 备用联系: 通过项目维护者私信