8

免费开源的代码审计工具 Gosec 入门使用

 3 years ago
source link: http://www.cnblogs.com/bigyoung/p/14364634.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

声明:

本教程是在自己的电脑上本地测试Gosec的效果,所以不涉及其他运行模式,如果想要了解其他模式可以关注后期文档,如果想要自定义交流自定义代码扫描规则,可以跟我交流沟通。

背景:

Gosec是一个通过扫描Go AST来检查源代码是否存在安全问题的开源项目。公司到成长到一定程度,就需要对代码进行审计,针对Go的作为主要的开发语言,我就测试一下Gosec的效果。

使用教程

要求

  • 已经配置好Go的开发环境
  • 准备一个测试项目代码

步骤

1. 进入Go环境src目录下

执行命令: go get github.com/securego/gosec/v2/cmd/gosec

2. 直接Build

进入到gosec项目目录: cd ./gosec/ ,再执行: make

提示:make后就可以使用gosec来进行代码扫描了,并且是全局的命令

3. 扫描代码

进入你准备好的代码目录下,执行: gosec -fmt=json ./... 命令的意思是:检测当前目录下的所有的代码,并以Json的格式输出到终端。

然后查看结果,如果有漏洞的地方,会在Json的数据格式里写清楚,并写清楚危险等级。

Gosec常用命令

1. 直接输出内容到终端

gosec -fmt=json ./... 支持的格式有: text, json, yaml, csv, sonarqube, JUnit XML, html

2. 输出到指定文件

gosec -fmt=json -out=results.json ./... 输出的格式要个文件后缀名匹配

3. 指定使用规则

# 指定使用某几个规则
$ gosec -include=G101,G203,G401 ./...

# 使用默认所有规则,除了某几个规则
$ gosec -exclude=G303 ./...

更多的使用可以看官方文档: Gosec开源项目地址

本文首发于 BigYoung小站


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK