lev*_*ver 6 java spring-boot sonarqube
SonarQube刚刚在非常基本的Spring Boot应用程序中显示了严重的安全问题。在主要方法上。
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
Run Code Online (Sandbox Code Playgroud)
SonarQube要我 Make sure that command line arguments are used safely here.
我在StackOverflow和Google上都进行了搜索,但令我惊讶的是我找不到关于此问题的任何评论。我几乎可以确定该SpringApplication.run
方法内部已经进行了一些安全检查。而且,我什至不记得有人在调用之前清理了主方法的参数SpringApplication.run
。我只是想将其标记为误报并继续。
在这里也要问这个问题的一部分:SonarQube在Spring Framework控制器和Spring Framework Application主类中显示安全错误。
是假阳性吗?
sac*_*hin 19
如果你没有使用任何命令行参数,那么你可以避免在 run 方法中提到 args 参数。就像下面的代码。
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class);
}
}
Run Code Online (Sandbox Code Playgroud)
这将消除声纳热点问题。
如果您确定,那么您可以包含以下内容来解决问题。
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class);
}
}
Run Code Online (Sandbox Code Playgroud)
看来这被标记security hotspot
为根据声纳文档。它指出
与漏洞不同,安全热点不一定是容易受到攻击的问题。相反,安全热点突出显示需要手动审查的安全敏感代码段。经过审查,您会发现需要修复的漏洞或不存在威胁。
您可以在此处阅读有关它的更多信息security hotspot
根据此规则RSPEC-4823或S4823,命令行参数将根据
如果您的应用程序属于此类别,它们绝对是您的应用程序可能存在的安全问题。
归档时间: |
|
查看次数: |
857 次 |
最近记录: |