Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
sonarqube — 代码质量与静态分析平台,具备质量门禁、多语言扫描以及以安全为核心的规则,可在CI/CD工作流中检测漏洞和可维护性问题。 | Kitploit
工具/GitHubGitHub/sonarsource/sonarqube
静态分析静态代码分析 (SAST)漏洞分析代码分析DevSecOps代码分析 分类第 3 名DevSecOps 分类第 18 名静态代码分析 (SAST) 分类第 3 名
GitHubsonarsource/sonarqube
11.1k2.2k9614小时23分前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

sonarqube

代码质量与静态分析平台,具备质量门禁、多语言扫描以及以安全为核心的规则,可在CI/CD工作流中检测漏洞和可维护性问题。

查看仓库网站

Sonar logo

Build Quality Gate Status AI Code Assurance Release Docker pulls License Community

SonarQube

SonarQube 是用于代码质量和安全的算法验证平台。其静态分析应用符号执行、数据流与控制流分析等技术来检查你的代码,发现缺陷、漏洞和结构性问题,并准确告诉你需要修复什么以及为什么,无论是在你的 IDE、拉取请求还是 CI 流水线中。

本仓库包含 SonarQube Community Build 的源代码,这是 SonarQube 平台的免费开源版本。它与整个 SonarQube 产品线共享相同的分析能力。

为 AI 时代而构建

AI 编写代码的速度超过了团队审查代码的速度,从而产生了验证债务:代码在任何人确认其功能之前就已进入生产环境。SonarQube 对每一行代码应用同样一致、可解释的分析,无论代码是由开发者还是智能体编写的。先随性生成,再验证:快速生成,然后验证进入生产环境的内容。它是智能体中心开发周期(Agent Centric Development Cycle)中的验证阶段,运行在外部 CI 验证循环中,在代码合并前对其进行验证。

SonarQube 能发现什么

  • 缺陷和可靠性问题,这些问题会在运行时破坏行为。
  • 安全漏洞和安全热点,并提供关于风险和修复方法的明确指导。
  • 可维护性和结构性问题,这些问题会使代码随时间推移越来越难以修改。
  • 新代码的覆盖率,使质量随每次提交而提升,而不是停滞在积压问题之后。

SonarQube 平台可分析 40 多种编程语言和框架;Community Build 支持其中的一部分。分析是可重复、可审计且可解释的:相同的代码始终产生相同的结果,每个结果都可追溯,并且每个结果都会告诉你问题是什么以及为什么重要。

商业版本

SonarQube Server 和 SonarQube Cloud 包含 Community Build 中的所有功能,并增加了:

检测更多问题

  • 通过更广泛的覆盖和更深入的分析,发现更多缺陷、漏洞、代码质量问题和架构问题。
  • 比 Community Build 支持更多的语言和框架。
  • 软件组成分析(SCA),用于检测存在漏洞和有风险的开放源代码依赖项。
  • 通过深度污点分析(SAST)实现的高级安全功能,可跨数据流追踪漏洞。
  • 机密检测,用于发现泄露的凭据、令牌和密钥。
  • 基础设施即代码(IaC)分析,支持 Terraform、Kubernetes、Docker 和 CloudFormation。
  • 架构管理,用于定义架构约束并捕获结构性违规。

分析你的整个工作流程

  • 分支分析和拉取请求装饰,使每次变更在合并前都得到验证。

治理、报告并跨团队查看

  • 组合和应用,可汇总多个项目的质量和安全状况。
  • 高管仪表板和趋势报告。
  • 安全和合规报告,包括 OWASP Top 10、CWE 和 PCI DSS。
  • 企业治理:跨团队强制执行质量门和权限,并提供完整的审计跟踪。

修复

  • SonarQube Remediation Agent 通过为你修复 SonarQube 问题来减少技术债务,并开启经过验证的修复拉取请求供你审查和合并。

部分功能属于 SonarQube Advanced Security 附加组件。详情请参阅产品线。

质量门

质量门是对新代码的通过或失败检查。只需设置一次标准,SonarQube 就会在每个拉取请求和流水线中自动强制执行,从而在问题合并前将其捕获,而不是在生产环境中才发现。

SonarQube 产品线

Community Build 是免费且开源的。更广泛的 SonarQube 产品线在你的整个工作流程中应用相同的分析:

  • SonarQube Server,自管理部署,支持更多语言、更深入的安全分析以及分支和拉取请求分析。
  • SonarQube Cloud,托管服务,以托管服务形式提供相同的能力。
  • SonarQube for IDE,在你编写或生成代码时进行实时分析。
  • SonarQube MCP Server,将 SonarQube 分析引入你的 AI 智能体上下文。
  • SonarQube CLI,从命令行运行分析。

比较 SonarQube 计划和定价 以选择合适的产品和部署模式。

产品链接

  • 网站
  • 下载
  • 文档
  • X
  • SonarSource,SonarQube 的作者

常见问题

Community Build 是免费的吗? 是的。它是免费且开源的,本仓库就是其源代码。

Community Build 和 SonarQube Server 有什么区别? Community Build 是免费的自管理引擎。SonarQube Server 和 SonarQube Cloud 是商业版本。它们覆盖更多语言,并增加了分支和拉取请求分析、软件组成分析(SCA)、架构管理、带污点分析(SAST)的高级安全功能、机密检测、基础设施即代码(IaC)分析、用于生成经过验证的修复拉取请求的 SonarQube Remediation Agent,以及企业报告。部分功能属于 SonarQube Advanced Security 附加组件。详情请参阅产品线。

它适用于 AI 生成的代码吗? 是的。SonarQube 对所有代码应用相同的分析,无论代码是由开发者还是智能体编写的。

项目链接

  • Webapp 源代码
  • 问题跟踪,只读。只有 SonarSource 员工可以创建工单。
  • 负责任披露

有疑问或反馈?

对于支持问题(“我该怎么做?”、“我遇到了这个错误,为什么?”……),请先阅读文档,然后前往 SonarSource 社区。你的问题很可能已经有人回答过了!🤓

请注意,该论坛是一个社区,因此请使用标准的礼貌用语(“你好”、“谢谢”……)。如果你在帖子中没有得到答复,你应该耐心等待至少三天再顶帖。客服人员并非随时待命。😄

贡献

如果你想看到新功能或报告缺陷,请在我们的论坛中创建一个新帖子。

请注意,我们并不积极寻求功能贡献。事实是,SonarSource 之外的人很难符合我们的路线图和期望。因此,我们通常只接受细微的外观更改和拼写错误修复。

话虽如此,如果你想提交代码贡献,请为本仓库创建一个拉取请求。请解释你贡献此更改的动机:你试图修复什么问题,你试图做出什么改进。

确保你遵循我们的代码风格,并且所有测试都通过(每个拉取请求都会执行 GitHub Actions 构建)。

愿意为 SonarSource 产品做贡献吗?我们正在寻找聪明、充满热情且技术娴熟的人才,帮助我们构建世界一流的代码质量解决方案。请查看我们当前的职位空缺!

构建

要在本地构建源代码,请遵循以下说明。

要求

  • Java 21 - 构建项目所必需
  • 原生 Git - 必须已安装并在你的 PATH 中可用
  • 测试 - 如有需要,可以通过在 gradle 命令中添加 -x test 来禁用(如果你只想构建而不运行测试,这很有用)

构建并运行单元测试

从项目根目录执行:

./gradlew build

zip 分发包生成在 sonar-application/build/distributions/ 中。解压它并通过执行以下命令启动服务器:

# on Linux
bin/linux-x86-64/sonar.sh start
# or on MacOS
bin/macosx-universal-64/sonar.sh start
# or on Windows
bin\windows-x86-64\StartSonar.bat

在 IDE 中打开

如果项目从未构建过,则按常规方式构建它(参见上一节),或使用更快的命令:

./gradlew ide

然后在 IntelliJ 或 Eclipse 中将根文件 build.gradle 作为项目打开。

Gradle 提示

./gradlew commandDescription
dependencieslist dependencies
spotlessApplyfix source headers by applying HEADER
wrapper --gradle-version <version>upgrade wrapper

带 UI 更改的构建

SonarQube UI(或我们所说的 webapp)位于另一个仓库:sonarqube-webapp。

在构建 sonarqube 仓库时,webapp 会作为依赖项自动从 Maven Central 下载,这使你无需关心 webapp 即可轻松贡献后端更改。

但如果你的贡献还包含 UI 更改,则必须克隆 sonarqube-webapp 仓库,在那里进行更改,在本地构建它,然后使用 WEBAPP_BUILD_PATH 环境变量指向你的自定义 UI 构建来构建 sonarqube 仓库。

以下是一个示例:

cd /path/to/sonarqube-webapp/server/sonar-web
# do your changes

# install dependencies, only needed the first time
yarn

# build the webapp
yarn build


cd /path/to/sonarqube

# build the sonarqube repository using the custom build of the webapp
WEBAPP_BUILD_PATH=/path/to/sonarqube-webapp/server/sonar-web/build/webapp ./gradlew build

你也可以通过更新 ./gradle.properties 文件中的 webappVersion 属性来指定特定版本的 webapp,然后正常构建 sonarqube 仓库。

翻译文件

历史上,我们的翻译存储在 sonar-core/src/main/resources/org/sonar/l10n/core.properties 中,但该文件现已弃用且不再更新。 默认翻译(英文)现在定义在 webapp 仓库中,位置如下: https://github.com/SonarSource/sonarqube-webapp/blob/master/libs/sq-server-shared/src/l10n/default.ts

格式已更改,但你仍然可以通过运行以下命令将其作为 .properties 文件格式获取:

cd /path/to/sonarqube-webapp/server/sonar-web

# install dependencies, only needed the first time
yarn

# generate a backward compatible .properties file with all the translation keys
yarn generate-translation-keys

请注意,为其他语言翻译贡献扩展的工作方式仍与以前相同。只是默认翻译的权威来源发生了变化。

许可证

Copyright (C) SonarSource Sàrl.

下载工具