开源软件名称(OpenSource Name):momosecurity/mosec-maven-plugin开源软件地址(OpenSource Url):https://github.com/momosecurity/mosec-maven-plugin开源编程语言(OpenSource Language):Java 100.0%开源软件介绍(OpenSource Introduction):MOSEC-MAVEN-PLUGIN用于检测maven项目的第三方依赖组件是否存在安全漏洞。 该项目是基于 snyk-maven-plugin 的二次开发。 关于我们Website:https://security.immomo.com WeChat: 版本要求Maven >= 3.1 安装向pom.xml中添加plugin仓库 (项目级安装)<!-- pom.xml -->
<pluginRepositories>
<pluginRepository>
<id>gh</id>
<url>https://raw.githubusercontent.com/momosecurity/mosec-maven-plugin/master/mvn-repo/</url>
</pluginRepository>
</pluginRepositories> 向maven配置中添加plugin仓库 (全局安装)<!-- settings.xml -->
<!-- 添加pluginGroup可简化命令行参数 -->
<pluginGroups>
<pluginGroup>com.immomo.momosec</pluginGroup>
</pluginGroups>
<profiles>
<profile>
<id>momo-plugin</id>
<pluginRepositories>
<pluginRepository>
<id>gh</id>
<url>https://raw.githubusercontent.com/momosecurity/mosec-maven-plugin/master/mvn-repo/</url>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>momo-plugin</activeProfile>
</activeProfiles> 使用命令行使用
项目中使用<!-- pom.xml -->
<plugins>
<plugin>
<groupId>com.immomo.momosec</groupId>
<artifactId>mosec-maven-plugin</artifactId>
<version>1.0.8</version>
<executions>
<execution>
<id>test</id>
<goals>
<goal>test</goal> <!-- test过程执行 -->
</goals>
</execution>
</executions>
<configuration>
<endpoint>http://127.0.0.1:9000/api/plugin</endpoint>
<severityLevel>High</severityLevel>
<onlyProvenance>true</onlyProvenance>
<failOnVuln>true</failOnVuln>
</configuration>
</plugin>
</plugins> 帮助> mvn mosec:help -Ddetail=true
mosec:test
Available parameters:
endpoint
上报API
User property: endpoint
failOnVuln (Default: true)
发现漏洞即编译失败
User property: failOnVuln
includeProvidedDependency (Default: false)
是否包含Provided Scope依赖
User property: includeProvidedDependency
onlyAnalyze (Default: false)
仅分析依赖,不上报
User property: onlyAnalyze
onlyProvenance (Default: false)
仅检查直接依赖
User property: onlyProvenance
outputDepToFile (Default: )
输出依赖树到文件。设置-DonlyAnalyze=true仅输出依赖树,否则输出依赖树及漏洞检查结果
User property: outputDepToFile
severityLevel (Default: High)
威胁等级 [High|Medium|Low]
User property: severity 使用效果以 src/test/resources/projects/vuln-project 项目为例。 [WARNING] 部分给出漏洞警告,Path: 为漏洞依赖链,Fix version 为组件安全版本。 程序返回值为1,表示发现漏洞。返回值为0,即为未发现问题。 检测原理MOSEC-MAVEN-PLUGIN使用 该方法可以准确提取maven项目所使用的依赖,以及确定的依赖版本。 最终依赖树会交由 MOSEC-X-PLUGIN-BACKEND 检测服务进行检测,并返回结果。 相关数据结构请参考 MOSEC-X-PLUGIN-BACKEND README.md. 开发Intellij 远程调试 Maven 插件1.将mosec-maven-plugin拉取至本地仓库 2.git clone mosec-maven-plugin 源码 3.Intellij 打开mosec-maven-plugin项目,新建 Remote Configuration 并填入如下信息 4.在另一个maven工程中执行如下命令 > mvnDebug com.immomo.momosec:mosec-maven-plugin:1.0.8:test 5.回到Intellij中,下断点,开始Debug |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论