发现安全漏洞不扫描 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 文件的主要内容,如果未能解决你的问题,请参考以下文章

Nginx 漏洞扫描及修复方案

Nginx 漏洞扫描及修复方案

Nginx 漏洞扫描及修复方案

Chrome 被发现会扫描用户计算机上的文件

如何使用Nikto漏洞扫描工具检测网站安全

windows版 nessus怎么扫描linux漏洞