发现安全漏洞不扫描 groovy 文件
Posted
技术标签:
【中文标题】发现安全漏洞不扫描 groovy 文件【英文标题】:find security bugs does not scan groovy files 【发布时间】:2016-01-11 23:59:43 【问题描述】:在我们的项目中,我们同时使用了 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());
我是否缺少一些配置?
【问题讨论】:
你使用 gradle 还是 maven?这两个工具都有用于查找错误的插件,并且似乎运行正常。 谢谢蛋白石。我正在使用 FindBugs UI。它可以正确扫描 groovy 和 java 源代码。问题在于 find-sec-bugs 插件。这个插件可以正确扫描java代码。但是,它忽略了 groovy 代码。 @nr673 请在此处开票:github.com/h3xstream/find-sec-bugs/issues(复制粘贴您的问题) @h3xStream 抱歉延迟回复。按照您的建议报告了问题。 【参考方案1】:为了进行正确的分析,您需要激活静态编译。否则,分析器将看不到任何方法调用。
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
【讨论】:
以上是关于发现安全漏洞不扫描 groovy 文件的主要内容,如果未能解决你的问题,请参考以下文章