在我们的项目中,我们使用Groovy和Java类。我们使用Find-sec-bugs插件1.4.3和FindBugs 3.0.1来扫描源代码。
插件不会报告来自Groovy类的安全性错误。正确扫描Java类。 project page明确表示该插件适用于Groovy。
对于此测试,我复制了以下vulnerable code,编译了源代码,并对其进行了扫描。
String generateSecretToken() {
Random r = new Random();
return Long.toHexString(r.nextLong());
}
我错过了一些配置吗?
答案 0 :(得分:0)
为了进行适当的分析,您需要激活静态编译。否则,分析仪将看不到任何方法调用。
<强>的build.gradle 强>
compileGroovy {
groovyOptions.configurationScript = file("gradle/config.groovy")
}
<强>的gradle / Config.groovy中强>
withConfig(configuration) {
ast(groovy.transform.CompileStatic)
}
这里有完整的食谱: https://github.com/find-sec-bugs/find-sec-bugs-demos/tree/master/groovy-simple