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 |