代码审计实战

思寒老师好,我想问一个问题,sonar是全量扫描的,当项目变得越来越大时,全量扫描就变得很慢,虽然sonar里有增量显示bugs数等的变动,但是还是全量扫描的,有没有增量扫描的方案呢,而不是每次都扫描全量代码?

项目大的时候要分模块,这样就可以加速了。
对于单个模块来说,没有办法只扫描增量的代码,因为他需要分析完整的语法树。
至于不变动的文件,他有没有优化或者cache结果,只能靠sonarqube的策略了。

如何汉化,英文的看起来太不友好了 :innocent:

我记得是有汉化包的,方便给项目内的人员看,你可以搜搜,但是应该有对应版本

image

这个插件不起作用,我试过

重启呢?我以前搭建的是6.8版本的

重启也不行,我重启N次了 我的是7.2的版本

思寒老师,我想问下安全扫描这一块的,都是基于什么样的检测机制去扫描的啊。
比如使用某个插件,扫描完了没有问题就真的安全了吗?这种可以不可以自定义规则啊?如果可以的话,大概可以从哪些大的方面去制定呢?

rules本身可以删减规则,也可以自定义自己的规则 https://docs.sonarqube.org/latest/extend/adding-coding-rules/

老师,这个覆盖率只是针对单元测试吗,如果是接口测试的覆盖率怎么获取结果

单元测试的覆盖率统计比较方便,就是现在的方式。

如果是集成测试,比如接口测试、压力测试等,借助于jacoco,从远程服务器提取覆盖率文件exec,copy到项目里即可。

可以从jacoco中自己分析各种diff相关的覆盖率,转成通用覆盖率或者jacoco自己的xml数据,上传即可

  • 自动部署
  • 接口测试
  • 提取exec文件回传
  • 覆盖率的进一步处理
  • sonar执行

作业:


作业(扫描maven项目)

1、在docker中安装sonarqube遇到问题:

ERROR: [1] bootstrap checks failed
[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

解决方案:
docker-machine ssh
sudo sysctl -w vm.max_map_count=262144执行此命令后显示如下:
vm.max_map_count = 262144
重新启动sonarqube,启动成功

1 个赞


目前还没特别真实和数据完备的作业完成,大家加油。找一个自己公司的项目真正的用一下。

作业: