声明:
本教程是在自己的电脑上本地测试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开源项目地址] github.com/securego/gosec/tree/v2.6.1
> 本文首发于[BigYoung小站] bigyoung.cn
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦