在Maven下初识find-sec-bugs

发布时间:April 21, 2019 // 分类:开发笔记,代码学习,windows,代码审计 // No Comments

最近拿到了几个JAVA的程序需要看,无奈不懂得JAVA,在全球最大的同性恋交友网站上看到了一个神奇的工具find-sec-bugs,介绍说Find Security Bugs是SpotBugs插件,用于Java Web应用程序的安全审核。在它的主页上看到了支持N多漏洞和支持好多的框架。还与各种IDE集成插件。


说了这么多,这个其实就是一个类似于支持OWASP TOP10的代码检查的工具,各种IDE上可以集成插件支持。

刚好手里面有一个Eova快速开发框架的源码,同时提到了需要Maven

Maven的安装和必要配置:

#1下载Maven
maven-x.x.x下载: (推荐使最新的版本)
apache-maven-x.x.x-bin.zip
下载其它版本:
http://maven.apache.org/download.cgi

#2 添加Maven环境变量
添加新的系统环境变量MAVEN_HOME, 并设置其值为你安装的目录
MAVEN_HOME=D:\maven\apache-maven-3.5.0
更新系统PATH 变量, 添加;%MAVEN_HOME%\bin;到尾部

#3 测试maven配置是否成功
打开cmd窗口,输入mvn -v,如果有maven 版本信息输出则证明配置成功,否则请查看自己配置路径等是否正确。
C:\Users\Administrator>mvn -v


#4自定义远程仓库地址为国内最快的镜像,否则可能需要翻墙!

好吧,鉴于此。咱们测试一下这个SpotBugs,根据文档使用SpotBugs Maven插件
修改POM.XML,将spotbugs-maven-plugin添加到pom.xml中

<plugin>
  <groupId>com.github.spotbugs</groupId>
  <artifactId>spotbugs-maven-plugin</artifactId>
  <version>3.1.11</version>
  <dependencies>
    <!-- overwrite dependency on spotbugs if you want to specify the version of spotbugs -->
    <dependency>
      <groupId>com.github.spotbugs</groupId>
      <artifactId>spotbugs</artifactId>
      <version>4.0.0-beta1</version>
    </dependency>
  </dependencies>
</plugin>

实际上是在plugins里面找到一处来添加,根据大佬们的提示

            </plugin>
            <plugin>
              <groupId>com.github.spotbugs</groupId>
              <artifactId>spotbugs-maven-plugin</artifactId>
              <version>3.1.11</version>
                <dependencies>
                <!-- overwrite dependency on spotbugs if you want to specify the version of spotbugs -->
                <dependency>
                  <groupId>com.github.spotbugs</groupId>
                  <artifactId>spotbugs</artifactId>
                  <version>4.0.0-beta1</version>
                </dependency>
              </dependencies>
            </plugin>
        </plugins>

然后我本地用的时候还发现一个地方需要修改,就是提示JDK和JAR的问题冲突

<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.0</version>
                <configuration>
                    <fork>true</fork>
                    <executable>
                            C:\Program Files\Java\jdk1.8.0_201\bin\javac.exe
                    </executable>
                    <source>${jdk.version}</source>
                    <target>${jdk.version}</target>
                    <showWarnings>true</showWarnings>
                    <encoding>${project.build.sourceEncoding}</encoding>
                </configuration>
            </plugin>

然后就是对项目进行编译和扫描

mvn compile -X -e
mvn spotbugs:spotbugs

程序会去拉一大堆的依赖什么的到本地。咱们就等着结束就好了。


扫描的结果一般是放在 target/findbugsXml.xml 这个结果还ky可以用于JENKINS来读取。但是咱们没有那么多的环境,直接上GUI环境看看

mvn spotbugs:gui


还可以具体的看一下是什么问题。

参考

  1. https://github.com/find-sec-bugs/find-sec-bugs/wiki/Maven-configuration
  2. https://spotbugs.readthedocs.io/en/latest/maven.html#add-spotbugs-maven-plugin-to-your-pom-xml
  3. https://www.cnblogs.com/jekaysnow/p/9550094.html

标签:Maven, spotbugs

添加新评论 »

分类
最新文章
最近回复
  • 没穿底裤: 最近发现的新版本可以装在LINUX了。但是API有点变化
  • 没穿底裤: 暂时好像没有看到这个功能.
  • 没穿底裤: 这个只是一个分析,并不是使用方法哟
  • 没穿底裤: 抱歉,很久没有打理了。会不会你使用的是12版本。目前还没有遇到过这种情况
  • bao song: http://0cx.cc/php_decode_shell.jspx 这个怎么用,代码提示...