Wave 10: deep audits of 5 unaudited plugins, smoke regression set (W13.1-W13.6)
- W13.1 anthropic_plugin (architect-yang, 497 lines): rated C. 6 C ABI functions lack try/catch (§8 violation); my_chat leaks response_body on error path; tool_use response silently dropped. - W13.2 deepseek_plugin (engineer-sun, 486 lines): rated C+. 7 ABI entries unprotected including json::parse paths (malformed JSON terminates); SSE [DONE] sentinel match brittle; ~55% code overlap with anthropic suggests an ai_plugin_base extraction. - W13.3 network_plugin (qa-wang, 322 lines): rated C. CRITICAL: TLS certificate verification fully disabled (set_verify_mode never called, default verify_none accepts any cert) — all AI traffic incl. api_key is MITM-vulnerable. DNS resolve has no timeout; catch lacks (...). - W13.4 lsp_plugin (architect-huang, 749 lines): rated C. CRITICAL: guaranteed deadlock at L519-526 → L547 (g_lsp_impl_start holds mutex then calls g_lsp_impl_stop which re-locks the same non-recursive mutex); 7 vtable funcs unprotected; server→client requests dropped. - W13.5 session+tools (security-cao, 264+251 lines): rated D+/D. Path traversal in builtin_file_read/write (zero validation); global static state in both plugins lacks mutex (UAF risk); 9 vtable funcs lack try/catch. - W13.6 smoke regression (qa-xu, +193 lines): 4 new cases — context max_tokens trim, config dual-store consistency (exposes that W12.2 merge is incomplete: dstalk_config_set→config_service.get returns null), HTTP error path no-crash, repeated init/shutdown cycle. Verified: cmake build 0 error 0 warning, ctest 4/4 pass. Top W14 priorities surfaced: TLS verification (W13.3), LSP deadlock (W13.4), file-tool path traversal (W13.5), config dual-store still broken (W13.6 R2), shared try/catch wrapper across all AI plugins. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -37,5 +37,18 @@ performance_log:
|
||||
build_headers_json() 产生的凭证字符串仅通过内存传递给 Beast HTTP,未经过日志管道。
|
||||
低风险/假阳性 2 项(lsp server_cmd 日志 + network e.what() 异常信息),无需代码修改。
|
||||
审计报告写入 docs/explanation/security-logging.md。CVSS: N/A(无可利用漏洞)。
|
||||
- date: 2026-05-27
|
||||
event: "W13.5: session + tools 联合安全审计 (515行)"
|
||||
rating: done
|
||||
detail: |
|
||||
联合审计 session_plugin.cpp (264行) + tools_plugin.cpp (251行)。
|
||||
TOP3: (1) tools L50/L85 路径遍历→任意文件读写 (CVSS 7.5);
|
||||
(2) 两插件全文 static global 无 mutex→多线程竞态 UAF/NPD;
|
||||
(3) session L127/L141/L204/L242 + tools L106/L132/L203
|
||||
缺 try/catch→§8违反→std::terminate。
|
||||
凭证泄露: session_save 明文落盘含 tool_calls_json(潜在token泄露)。
|
||||
命令注入: 未发现。路径遍历: tools 确认。
|
||||
评级 session:D+ / tools:D。
|
||||
报告: agents/audits/W13.5-session-tools-audit.md
|
||||
current_groups: []
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user