2021-02-14

发现一款牛逼的 IDEA 插件:检测代码漏洞,一键修复!

本插件作为Java项目静态代码安全审计工具,侧重于在编码过程中发现项目潜在的安全风险,并提供一键修复能力。

本插件利用IDEA原生Inspection机制检查项目,自动检查当前活跃窗口的活跃文件,检查速度快,占用资源少。

插件提供的规则名称均以"Momo"开头。

版本支持

Intellij IDEA ( Community / Ultimate ) >= 2017.3

IDEA 香是香,可能你会说用它要收费,其实它也有开源的社区版本,收费的专业版也很容易申请到激活码,关注公众号Java技术栈,回复:IDEA,可以阅读我分享过的获取正版 IDEA 激活码的教程,很多粉丝都反馈说轻松得到了,感兴趣的都可以去申请,不能太容易了。

安装使用

IDEA插件市场搜索"immomo"安装。

效果展示

演示一:XXE漏洞发现与一键修复

演示二:Mybatis

插件规则

编号规则名称修复建议一键修复
1001多项式拼接型SQL注入漏洞T
1002占位符拼接型SQL注入漏洞T
1003Mybatis注解SQL注入漏洞TT
1004Mybatis TT
1005RegexDos风险TT
1006Jackson反序列化风险TT
1007Fastjson反序列化风险TT
1008Netty响应拆分攻击TT
1009固定的随机数种子风险TT
1010XXE漏洞TT
1011XStream反序列化风险TT
1014脆弱的消息摘要算法T
1015过时的加密标准T
1016T
1017LDAP反序列化风险TT
1018宽泛的CORS Allowed Origin设置T
1019SpringSecurity关闭Debug模式TT
1020硬编码凭证风险T
1021"@RequestMapping" 方法应当为 "public"TT
1022Spring 会话固定攻击风险TT
1023不安全的伪随机数生成器TT
1024OpenSAML2 认证绕过风险TT
1025IP地址硬编码T

项目结构

src├── main│ ├── java│ │ └── com│ │  └── immomo│ │   └── momosec│ │    ├── aspect│ │    ├── entity│ │    ├── fix│ │    ├── lang│ │    │ ├── java│ │    │ │ ├── rule│ │    │ │ │ └── momosecurity│ │    │ │ │  └── {InspectionName}.java│ │    │ │ └── utils│ │    │ └── 

脚手架

# 新增检查规则> python script/addInspection.py# 删除检查规则> python script/deleteInspection.py

单元测试

> ./gradlew :test

预发布打包

  1. PLUGIN_BAN_CONST=true ./gradlew --no-daemon clean build -PMOMO_CODE_SEC_INSPECTOR_ENV=pre
  2. build/distributions/*.zip 为待发布插件

预发布情况下,插件上报地址写于src/main/resources/properties/pre.properties

发布打包

  1. PLUGIN_BAN_CONST=true ./gradlew --no-daemon clean build -PMOMO_CODE_SEC_INSPECTOR_ENV=prod
  2. build/distributions/*.zip 为待发布插件

正式发布情况下,插件上报地址写于src/main/resources/properties/prod.properties

注意事项

  • 分支命名规则:

以版本号命名的分支,原则上代表支持的idea版本下限。

如branch为2018.3代表当前分支支持版本范围是>=2018.3 (或说from 183.* to *)。

插件具体支持idea版本范围见gradle.propertiesidea_since_buildidea_until_build部分。

  • 插件版本号命名规则:

原则上,插件版本号以支持的idea版本下限为大版本编号。

如插件当前版本为x.1x为开发时所用IDEA版本编号,.1为插件发布版本。

需要注意的是,因IDEA更新机制问题,插件新版本号只能向上增长

具体见gradle.propertiesplugin_version字段。

  • 版本号对应关系
分支名插件版本IDEA版本
2018.31932018.3.* <= x
2017.31732017.3.* <= x <= 2018.2.*
  • JetBrains Plugins Marketplace 版本

发布到插件市场的版本不支持漏洞上报功能。

发布到插件市场的版本不支持白名单签名下发功能。

开源地址:https://gitee.com/mirrors/momo-code-sec-inspector-java

近期热文推荐:

1.Java 15 正式发布, 14 个新特性,刷新你的认知!!

2.终于靠开源项目弄到 IntelliJ IDEA 激活码了,真香!

3.我用 Java 8 写了一段逻辑,同事直呼看不懂,你试试看。。

4.吊打 Tomcat ,Undertow 性能很炸!!

5.《Java开发手册(嵩山版)》最新发布,速速下载!

觉得不错,别忘了随手点赞+转发哦!









原文转载:http://www.shaoqun.com/a/554571.html

跨境电商:https://www.ikjzd.com/

黑石集团:https://www.ikjzd.com/w/1339.html

myshow:https://www.ikjzd.com/w/2235


本插件作为Java项目静态代码安全审计工具,侧重于在编码过程中发现项目潜在的安全风险,并提供一键修复能力。本插件利用IDEA原生Inspection机制检查项目,自动检查当前活跃窗口的活跃文件,检查速度快,占用资源少。插件提供的规则名称均以"Momo"开头。版本支持IntellijIDEA(Community/Ultimate)>=2017.3IDEA香是香,可能你会说用
环球市场:环球市场
跨境通电子商务:跨境通电子商务
竞争态势日趋严峻,Lazada发布新战略竞逐东南亚:竞争态势日趋严峻,Lazada发布新战略竞逐东南亚
速卖通、亚马逊代运营靠谱吗?如何选择?:速卖通、亚马逊代运营靠谱吗?如何选择?
被罚1200多万美金!首例亚马逊虚假刷:被罚1200多万美金!首例亚马逊虚假刷

No comments:

Post a Comment