Sonar Java 5.9 发布,新增 29 条规则

h4cd
 h4cd
发布于 2018年11月15日
收藏 18

Sonar Java 5.9 发布了,Sonar (SonarQube)是一个开源平台,用于管理源代码的质量。Sonar 不只是一个质量数据报告工具,更是代码质量管理平台。支持的语言包括:Java、PHP、C#、C、Cobol、PL/SQL、Flex 等。SonarQube Java 是 Sonar 的一个插件,用来分析 Java 代码。

此版本新增了 29 条无则,包括 12 条安全热点规则(SECURITY HOTSPOTS RULES)、7 个 Bug 检测和 10 个 Code Smell 规则。

值得介绍的是安全热点,它是一种特殊类型的问题,它可以识别安全敏感的代码区域,帮助安全分析师确定代码是否存在漏洞。此次新增的安全热点规则包含一些最常见的安全敏感代码模式,例如执行正则表达式、加密数据或控制访问控制。此外还有涵盖了多个框架和库的规则,如 Guava、Apache Commons、Spring 等,每条规则都解释了可能潜伏的危险,以确定代码是否易受攻击,并提供建议。

  • S4817 - Executing XPath expressions is security-sensitive (Security Hotspot)

  • S4784 - Using regular expressions is security-sensitive (Security Hotspot)

  • S4790 - Hashing data is security-sensitive (Security Hotspot)

  • S4787 - Encrypting data is security-sensitive (Security Hotspot)

  • S1523 - Dynamically executing code is security-sensitive (Security Hotspot)

  • S4825 - Sending HTTP requests is security-sensitive (Security Hotspot)

  • S4792 - Configuring loggers is security-sensitive (Security Hotspot)

  • S4834 - Controlling permissions is security-sensitive (Security Hotspot)

  • S4797 - Handling files is security-sensitive (Security Hotspot)

  • S4829 - Reading the Standard Input is security-sensitiv (Security Hotspot)

  • S4823 - Using command line arguments is security-sensitive (Security Hotspot)

  • S4818 - Using Sockets is security-sensitive (Security Hotspot)

  • S3065 - Min and max used in combination should not always return the same value (Bug)

  • S3078 - "volatile" variables should not be used with compound operators (Bug)

  • S2689 - Files opened in append mode should not be used with ObjectOutputStream (Bug)

  • S3822 - Hibernate should not update database schemas (Bug)

  • S4517 - InputSteam.read() implementation should not return a signed byte (Bug)

  • S3032 - JEE applications should not "getClassLoader" (Bug)

  • S3077 - Non-primitive fields should not be "volatile" (Bug)

  • S2139 - Exceptions should be either logged or rethrown but not both (Code Smell)

  • S4738 - Java 8 features should be preferred to Guava (Code Smell)

  • S4838 - An iteration on a Collection should be performed on the type handled by the Collection (Code Smell)

  • S4682 - "@CheckForNull" or "@Nullable" should not be used on primitive types (Code Smell)

  • S4925 - "Class.forName()" should not load JDBC 4.0+ drivers (Code Smell)

  • S4929 - "read(byte[],int,int)" should be overridden (Code Smell)

  • S4926 - "serialVersionUID" should not be declared blindly (Code Smell)

  • S4719 - "StandardCharsets" constants should be preferred (Code Smell)

  • S3864 - "Stream.peek" should not be used (Code Smell)

  • S3014 - "ThreadGroup" should not be used (Code Smell)

详情查看发布公告。

本站文章除注明转载外,均为本站原创或编译?;队魏涡问降淖?,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 广东十一选五推荐号
本文标题:Sonar Java 5.9 发布,新增 29 条规则
加载中
返回顶部
顶部