SuperAPI AI 工具集

sonarqube-tactics

安全与审计

查看项目

更新于 10-16 11:12

技能介绍

SonarQube 代码审计平台攻击(sonarqube-tactics)是一项面向安全测试的技能,聚焦于对 SonarQube 实例的发现、凭据验证与攻击面枚举。SonarQube 是 DevSecOps 体系中的核心代码质量平台,默认监听 9000 端口,出厂凭据 admin/admin 常被忽略。该技能假定在授权测试场景下使用,沿着从信息收集到数据窃取的路径组织攻击流程。

主要能力与阶段

Phase 1:服务发现与版本识别。使用 nmap 扫描默认端口 9000 并探测服务版本与 HTTP 标题,通过 /api/server/version 与 /api/system/status 获取版本与系统状态,无需认证。低版本可能对应更多未修复漏洞。

Phase 2:默认凭据检测。通过 /api/authentication/validate 验证 admin/admin 及常见弱凭据(admin:sonarqube、admin:password、admin:admin123 等),并支持以 SonarQube Token 作为用户名、密码留空的认证方式测试。

Phase 3:攻击决策树。根据凭据有效性区分管理员、普通用户与无认证三种权限,对应不同攻击面,并前置收集当前用户信息、sonar.forceAuthentication 设置与项目总数以评估规模。

Phase 4:源代码窃取。通过 /api/projects/search、/api/components/tree 枚举项目与文件树,使用 /api/sources/raw 按文件下载源码,/api/sources/lines 带行号查看,并给出批量下载脚本。

Phase 5:漏洞信息武器化。枚举 CRITICAL 级别 VULNERABILITY,搜索含 password/secret/token/credential/hardcoded 等关键词的 Issue,枚举 Security Hotspots 与项目安全度量(bugs、vulnerabilities、code_smells、security_hotspots、coverage)。

Phase 6:用户凭据与 Token 窃取。枚举用户(login、name、email、groups),查看用户 Token,并可为指定用户生成新 Token 实现持久化访问。

Phase 7:配置与凭据提取。导出全局配置并筛选 password/token/secret/jdbc/scm/ldap/smtp 等敏感项,获取数据库连接信息与 GitHub/GitLab/Bitbucket/Azure 等 ALM 集成配置。

Phase 8:Quality Gate 绕过与 Webhook 滥用。列出 Quality Gate,创建宽松 Gate 并关联项目(供应链攻击路径),创建 Webhook 作为数据外泄通道,并列出已有 Webhook。

工具与注意事项

技能依赖 curl + jq 作为 REST API 交互核心,配合 nmap、sonarqube-scanner、hydra、nuclei。需要注意:API 默认分页,ps 最大 500,超过需用 p 参数翻页;/api/sources/raw 按文件返回,大项目需脚本批量下载;Token 明文仅显示一次,已有 Token 只能看到名称和创建时间;Quality Gate 修改会影响 CI/CD 流水线,可能被运维监控发现;Webhook 会在每次分析完成时触发回调;配置 API 中部分敏感字段可能被遮蔽为 *****;操作日志可通过 /api/ce/activity 查看,需控制操作频率。

适用场景与限制

该技能适用于授权渗透测试、红队评估与安全审计中对 SonarQube 实例的攻击面验证。使用前需确保获得合法授权,并遵守相关法律法规与测试范围约定。技能的完整 API 调用与利用命令在 references/attack-techniques.md 中提供。