CodeBuddy支持直接在IDE中快速发起一轮结合威胁建模的深度安全扫描,整体操作流程清晰且上手简单:先打开项目根目录,确认代码已更新到最新版本;随后执行“CodeBuddy: Security Scan”命令;接着触发Xcheck与AI双引擎联合分析,生成一份重点聚焦高危路径的威胁模型;最后在右侧面板中查看攻击面覆盖情况与安全扫描结果。

如果你希望在代码提交前就精准发现SQL注入、硬编码密钥、N+1查询等真实可利用的安全漏洞,而不是依赖人工逐条核对规则或被动等待CI报告,CodeBuddy可以基于项目上下文自动构建威胁路径,对高风险模块优先执行漏洞扫描,并在30秒内提供附带PoC验证证据的修复建议。
启动一次带威胁建模的深度安全扫描
第一步:先在 IDE 中打开待检测项目的根目录,确认当前分支已经同步到最新代码,同时工作区内没有未提交的变更。
第二步:按下 Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(macOS),输入“CodeBuddy: Security Scan”后回车执行。
第三步:随后,系统会自动启动 Xcheck 静态分析引擎与 AI 安全审计双引擎并行检测,同时结合 Git 历史记录和项目架构信息生成威胁模型。这里有一个关键点:它会主动跳过低风险模块,例如纯静态资源目录,将算力优先分配到src/main/ja va/com/example/api/这类高风险代码路径。
第四步:等待右侧面板加载完成后,打开“Threat Model Summary”标签页,重点确认 AI 识别出的攻击面是否已经覆盖你重点关注的数据库层、认证模块以及外部 API 调用点。
聚焦三类高频漏洞的手动验证方法
方法一:SQL注入漏洞快速复现
在扫描结果中找到标记为“High”等级的SQL语句所在行,右键→“Run PoC in Sandbox”,系统会自动生成包含' OR 1=1 --的测试请求并注入隔离Docker容器;如果返回全表数据,则说明该SQL注入漏洞已被确认为真实可利用。
方法二:硬编码密钥检测
直接在项目中搜索"AKID"、"sk-"、"-----BEGIN RSA PRIVATE KEY-----"等特征字符串,发现后立即检查CodeBuddy是否已在“Secrets Leakage”分组中标记对应代码行——【未标记则说明AI尚未识别到上下文风险,仍需人工补充审查】。
方法三:N+1查询定位
选中疑似存在问题的MyBatis Mapper XML文件,右键→“Analyze Data Flow”,CodeBuddy会高亮展示从Controller参数→Service循环→Mapper SQL的完整调用链,并在循环体内标注“N+1 detected at line 47: for (User u : users) { userMapper.selectOrder(u.getId()); }”。
配置扫描策略以适配团队流程
步骤一:进入CodeBuddy插件设置页,关闭“Scan on Sa ve”全局开关,避免日常编码过程中频繁触发安全扫描。
步骤二:在项目根目录下创建.codebuddy/security.yaml,写入以下内容:
severity-threshold: High
include-paths:
- "src/main/ja va/**/controller/**"
- "src/main/ja va/**/mapper/**"
exclude-patterns:
- "**/test/**"
- "**/generated/**"
步骤三:保存后,在终端执行
codebuddy security --config .codebuddy/security.yaml,该命令会严格按照配置路径执行扫描,并且仅报告High及以上级别的安全问题。步骤四:将此命令加入Git pre-commit hook,运行
echo 'codebuddy security --config .codebuddy/security.yaml || exit 1' > .git/hooks/pre-commit && chmod +x .git/hooks/pre-commit——【这一步不可逆,提交前若未通过漏洞扫描将被强制中断】。