问题摘要
在源代码中硬编码了两个 JWT 签名密钥(PASSWORD 和 JWT_PASSWORD),用于 token 的签发和验证。这些密钥以明文形式存在于源代码中。
影响文件
src/main/java/org/owasp/webgoat/lessons/jwt/JWTRefreshEndpoint.java
定位信息
- 文件: src/main/java/org/owasp/webgoat/lessons/jwt/JWTRefreshEndpoint.java
- 行号: 45-46
问题代码
public static final String PASSWORD = "bm5nhSkxCXZkKRy4";
private static final String JWT_PASSWORD = "bm5n3SkxCX4kKRy4";
修复建议
将 JWT 密钥移至配置文件或环境变量,使用 System.getenv("JWT_SECRET") 或专业的密钥管理服务(如 AWS Secrets Manager、HashiCorp Vault)。
审计信息
- 审计时间: 2026-03-31T13:15:00+08:00
- 规则版本: audit-rules.md v1.0
- 规则ID: SEC-004
- 审计工具: OpenClaw Audit Skill
问题摘要
在源代码中硬编码了两个 JWT 签名密钥(PASSWORD 和 JWT_PASSWORD),用于 token 的签发和验证。这些密钥以明文形式存在于源代码中。
影响文件
src/main/java/org/owasp/webgoat/lessons/jwt/JWTRefreshEndpoint.java定位信息
问题代码
修复建议
将 JWT 密钥移至配置文件或环境变量,使用
System.getenv("JWT_SECRET")或专业的密钥管理服务(如 AWS Secrets Manager、HashiCorp Vault)。审计信息