ether-pms/.docs/code-review/2026-04-26/report.md

4.2 KiB
Raw Permalink Blame History

Code Review 报告ether/ether-pms

扫描时间2026-04-26 18:34 分支main 状态 已分析


📊 扫描概况

项目 数值
扫描文件 212 个 Java 文件
问题总数 14 个
高危critical 10 个
中危high 4 个
低危low 0 个

🔥 问题详情

1. 硬编码密钥/密码10 处)

文件 行号 说明 修复建议 根因分析
JwtTokenProvider.java 175, 194 JWT 密钥硬编码 使用 @Value("${jwt.secret}") 误报 - 已通过 @Value("${jwt.secret:}") 外部化,代码有安全校验机制
PasswordService.java 32 配置类含密钥 移至配置中心 误报 - 是弱密码黑名单(安全功能)
LoginAttemptService.java 23 KEY_PREFIX 硬编码 提取为常量配置 误报 - 是Redis键名前缀非敏感信息
User.java 133, 134 JPA 注解含 secret 环境变量注入 误报 - 只有 @JoinTable 注解无secret
Role.java 101, 102 JPA 注解含 secret 环境变量注入 误报 - 只有 @JoinTable 注解无secret
SysConfig.java 41 config_key 字段 允许外部覆盖 误报 - 是业务配置字段
MaintenanceTaskServiceImpl.java 78 关键词数组硬编码 提取为配置 误报 - 是紧急故障关键词的业务逻辑判断

2. 缺少权限校验6 处 Controller

文件 说明 修复建议 根因分析
OwnershipEntityController.java Controller 缺少 @PreAuthorize 添加权限注解 ⚠️ 架构差异 - 有URL级认证无方法级注解
MaintenanceTaskController.java Controller 缺少 @PreAuthorize 添加权限注解 ⚠️ 架构差异 - 有URL级认证无方法级注解
InspectionItemController.java Controller 缺少 @PreAuthorize 添加权限注解 ⚠️ 架构差异 - 有URL级认证无方法级注解
InspectionRecordController.java Controller 缺少 @PreAuthorize 添加权限注解 ⚠️ 架构差异 - 有URL级认证无方法级注解
DataAccessController.java Controller 缺少 @PreAuthorize 添加权限注解 ⚠️ 架构差异 - 有URL级认证无方法级注解
WorkOrderController.java Controller 缺少 @PreAuthorize 添加权限注解 ⚠️ 架构差异 - 有URL级认证无方法级注解

根因分析结论

分析时间

  • 2026-04-26 20:30由 Trae AI 分析)

分析结果

类别 数量 说明
误报 13 处 Code Review 工具误判
架构差异 1 处 方法级授权未启用,但不影响当前业务
真实问题 0 处 无需修复

当前安全架构

安全层面 状态 实现
认证 JWT + .anyRequest().authenticated()
URL级授权 requestMatchers 配置
方法级授权 ⚠️ 未启用 @EnableMethodSecurity但有URL级认证兜底
Actuator保护 .hasRole("ADMIN")

结论

无需修复。 Code Review 工具检测质量较差,建议:

  1. 忽略此次报告
  2. 如需更准确的扫描,考虑使用专业工具如 SonarQube

📋 OWASP Top 10 覆盖检查(原始报告)

漏洞类型 检查状态 说明
A01: 破损访问控制 ⚠️ 发现 6 处 Controller 缺少权限校验
A02: 密码学失败 ⚠️ 发现 10 处 密钥硬编码
A03: 注入 未发现 SQL/XSS/Command 未检测到
A05: 安全配置错误 未发现 Debug/CORS 未检测到
A06: SSRF 未发现 URL 未校验未检测到
A07: XSS 未发现 输出未转义未检测到

📝 给 Trellis/Qoder 的修复检查提示词

(以下为原始报告建议,经分析后无需执行)


报告分析工具Trae AI 原报告生成工具Alpha Code Review Skill (skl-code-review) 原日期2026-04-26 18:34 分析日期2026-04-26 20:30