Spring Boot项目之伪Masked Field弱点解决

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

伪Masked Field 指的是什么?

Masked Field 的翻译是“掩码字段”, 是FindBugs 定义的一种代码弱点。 这里的“伪Masked Field” 指的不是真正的“掩码字段”漏洞,但是却被代码扫描工具扫描出来具有该类型的弱点。

Spring Boot项目的弱点示例

在Spring Boot项目中, 类似如下的代码应该应该比较常见:




public class AbstractService {
	@Autowired
	protected EntityManager em;
}

@Service
public class MaskedField3 extends AbstractService{

	@Autowired
	protected EntityManager em;
}

  • 这里定义了一个抽象服务类 AbstractService, 该类中使用@Autowired注入了一个JPA的实体管理器 EntityManager ;
  • MaskedField3 继承自AbstractService, 在该类中同样注入了 EntityManager 。

这个代码看上去没什么毛病, 但是使用Coverity 扫描时, 会提示存在Masked Field 的风险。 Why ?

弱点分析

Masked Field 是一个和二进制运算相关的弱点,这里完全没有二进制, 关于Masked Field的弱点可以参考:

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: Spring