SonarQube源码静态安全扫描工具使用入门

科技一点鑫得 2024-03-09 01:53:34
SonarQube介绍

SonarQube是一款开源的自动代码审查平台,可以检测25+的编程语言如Java,C#,JavaScript,TypeScript,C/C++,COBOL等的代码缺陷和安全漏洞,且可以与您现有的工作流程集成,以便在项目分支和拉取请求之间进行连续的代码检查。OWASP收录了该工具,全称为开放式Web应用程序安全项目,是一个非营利组织。

SonarQube安装官网下载链接:https://www.sonarqube.org/downloads/,下载的版本为Community Edition Version 8.7;

该版本需要安装JDK11,如果JDK版本较低需要下载新版本,否则启动会失败;下载完成后解压,我的环境为windows10系统,双击bin\windows-x86-64\StartSonar.bat即可启动SonarQube,启动成功记录如下;

提示启动成功后,浏览器访问http://127.0.0.1:9000/即可打开SonarQube分析平台,输入默认账户admin/admin即可登录成功。

安装汉化插件,导航条中点击Administration菜单,搜索Chinese pack进行安装

关于数据库,SonarQube默认使用内嵌数据库,内嵌数据库仅用于测试场景,推荐使用开源的postgresql,安装并创建好postgresql数据库后修改conf\sonar.properties目录中的如下三项进行数据库设置即可(有关postgresql的下载安装请网上自行搜索相关文档)。sonar.jdbc.username=testsonar.jdbc.password=testsonar.jdbc.url=jdbc:postgresql://localhost/sonarqube?currentSchema=my_schemaSonarQube的使用创建新项目,根据页面提示创建新项目,选择手工

输入项目信息,根据个人情况自行设置

创建令牌,根据个人情况自行设置,创建令牌成功后点击继续

配置项目信息,这里以python项目为例,配置信息如下,您需要根据自己的项目和系统信息调整配置,配置好后点击下载

下载并配置扫描器,点击下载后会跳转到一个扫描器下载和配置说明页面,下载扫描器并根据配置说明,在您需要执行扫描的项目根目录新建sonar-project.properties配置文件,配置文件中的test为创建项目的名称。

# must be unique in a given SonarQube instancesonar.projectKey=my:test# --- optional properties ---# defaults to project key#sonar.projectName=My project# defaults to 'not provided'#sonar.projectVersion=1.0 # Path is relative to the sonar-project.properties file. Defaults to .#sonar.sources=. # Encoding of the source code. Default is default system encoding#sonar.sourceEncoding=UTF-8将扫描器添加到环境变量,如我添加到环境变量的路径为C:\工具\sonar-scanner-4.6.0.2311-windows\bin,根据您的解压路径进行调整

执行代码扫描,之前创建项目过程中已经生成了扫描器的执行命令,新打开一个cmd命令行窗口,cd到项目的根目录执行如下命令开始扫描,分析完成记录如下。

注:您需要copy自己新建项目使生成的扫描命令

sonar-scanner.bat -D"sonar.projectKey=test" -D"sonar.sources=." -D"sonar.host.url=http://127.0.0.1:9000" -D"sonar.login=b0de309ea4b6561c9e456bd5946f9a3292b94864"

查看分析结果,刷新http://127.0.0.1:9000/,可以查看项目的扫描结果

0 阅读:0

科技一点鑫得

简介:感谢大家的关注