您现在的位置是:亿华云 > IT科技
如何使用SonarQube分析代码并查找漏洞?
亿华云2025-10-09 03:44:03【IT科技】7人已围观
简介【.com快译】SonarQube是一款基于Web的工具,可帮助开发人员生成没有安全问题、错误、漏洞、异常和一般问题的代码。如果您在开发一个小项目,那可能很容易,您可以仔细检查代码以发现任何问题。但如
【.com快译】SonarQube是何使一款基于Web的工具,可帮助开发人员生成没有安全问题、分析错误、代码洞漏洞、并查异常和一般问题的找漏代码。如果您在开发一个小项目,何使那可能很容易,分析您可以仔细检查代码以发现任何问题。代码洞但如果您在开发一个大项目(或众多小项目),并查可能没时间梳理自己编写的找漏每一行代码。
本文介绍如何使用SonarQube代码分析平台这款工具,何使以便您可以信任自己或别人编写的分析代码。
虽然您已安装了一款很不错的代码洞基于Web的工具,但使用Sonarqube不像您想象的并查那么简单。如果您研读一下说明文档,找漏可能会发现让人有点迷糊。
别担心,我会介绍使用Sonarqube扫描“Hello,World!”应用程序(用Java编写)的过程。由于我们最初安装在Ubuntu Server 20.04上,我会继续使用该平台。如果您在不同的操作系统上使用Sonarqube,需要进行必要的调整。云服务器
安装Sonar-scanner
这是大多数用户会迷糊的地方。使用Sonarqube进行任何操作之前,必须将sonar-scanner应用程序安装在项目所在的机器上。我会使这个步骤变得更简单,将其安装在托管Sonarqube的同一台服务器上。以下是您的操作方法。
登录到托管Sonarqube的服务器,使用以下命令安装几个依赖项:
sudo apt-get update && sudo apt-get install unzip wget nodejs -y一旦安装了那些依赖项,使用以下命令创建一个新目录:
mkdir sonarqube使用以下命令切换进入该目录:
cd sonarqube下载sonar-scan文件:
wget https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.2.0.1873-linux.zip解压缩下载的文件:
unzip sonar-scanner-cli-4.2.0.1873-linux.zip最后,使用以下命令移动新创建的文件夹:
sudo mv sonar-scanner-4.2.0.1873-linux / opt / sonar-scanner接下来,我们需要使用以下命令创建sonar-scan配置文件:
sudo nano /opt/sonar-scanner/conf/sonar-scanner.properties在该文件中,粘贴以下内容:
sonar.host.url=http://SERVER:9000 sonar.sourceEncoding=UTF-8其中SERVER是托管服务器的IP地址。
保存并关闭文件。
现在,我们将创建另一个配置文件,该文件将设置必要的$ PATH变量。执行以下命令:
udo nano /etc/profile.d/sonar-scanner.sh在该文件中,粘贴以下内容:
#/bin/bash export PATH="$PATH:/opt/sonar-scanner/bin"保存并关闭文件。
使用以下命令将sonar-scanner添加到您的路径:
source /etc/profile.d/sonar-scanner.sh使用以下命令验证sonar-scanner在正常运行:
sonar-scanner -v您应该看到几个工具的版本号。源码库成功了!您可以开始进行第一次扫描了。
如何扫描您的代码?
不妨创建一个Hello, World!应用程序示例。使用以下命令创建一个新目录:
mkdir Java使用以下命令切换进入该文件夹:
cd Java使用以下命令创建代码文件:
nano helloworld.java在该文件中,粘贴以下内容:
// Your Hello, World! java application class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); } }保存并关闭文件。
现在,回到Sonarqube Web界面,创建一个新项目(图1)。
图1:点击“创建新项目”,开始该过程
在随后弹出的窗口(图2)中,为新项目指定键和显示内容的名称。
图2:在Sonarqube中命名新项目
在下一个窗口(图3)中,您必须为项目生成令牌。为令牌命名,然后点击“生成”。
图3:为新项目生成令牌
然后,您将不得不给令牌赋予另一个名称,然后点击“生成”。这将为您显示令牌。复制并保存该令牌(因为以后的扫描将需要它)。
点击“继续”,进入到下一步。在此窗口(图4)中,选择项目的构建技术(我们将选择“其他”)。
图4:为您的项目选择构建技术
然后将提示您输入有待扫描的操作系统。在本例中,我们将选择Linux。亿华云选择完毕后,您会看到在计算机上运行的命令(图5)。回到终端窗口,将该命令粘贴到窗口中。
图5:Sonarqube显示了您用于扫描的命令
从您的项目目录内运行扫描,它将完成扫描工作。片刻之后(取决于项目的大小),它将结束扫描,扫描结果会显示在Sonarqube Web GUI中(图6)。
图6:我们的扫描结果显示了一个非常干净的项目
明白了,这是一个简单的Hello,World!例子。如果您的项目较大,扫描会花费较长的时间,扫描结果可能不像图6所示。因此,请阅读Sonarqube报告,解决报告的所有问题。
这是确保您代码尽可能干净、没有问题的好方法。别靠自己单独完成这项任务。仅需几个额外的步骤,您就可以借助一个平台,更快速、更可靠地完成这项任务。
原文标题:How to Analyze Code and Find Vulnerabilities with SonarQube,作者:Jack Wallen
【译稿,合作站点转载请注明原文译者和出处为.com】
很赞哦!(956)
相关文章
- 公司在注册域名时还需要确保邮箱的安全性。如果邮箱不安全,它只会受到攻击。攻击者可以直接在邮箱中重置密码并攻击用户。因此,有必要注意邮箱的安全性。
- 一个单层的基础神经网络实现手写字识别
- 十年Python大牛花了三天总结出来的python基础知识实例,超详细!
- 编程语言1月排行榜:C是年度语言,Python增长量第二
- 以上的就是为大家介绍的关于域名的详解
- 面向Java开发人员的十种测试框架库
- 探索嵌入式应用框架(EAF)
- 简单聊一聊测试矩阵
- 为了避免将来给我们的个人站长带来的麻烦,在选择域名后缀时,我们的站长最好省略不稳定的后缀域名,比如n,因为我们不知道策略什么时候会改变,更不用说我们将来是否还能控制这个域名了。因此,如果站长不是企业,或者有选择的话,如果不能选择域名的cn类,最好不要选择它。
- 千万不要和一种编程语言厮守终生