java - Sonar 违规在此操作系统命令中使用之前已正确清理

标签 java jakarta-ee sonarqube sonarqube5.1 java-security

在我的项目中,我遇到了 Sonar 安全违规问题 - 在在此操作系统命令中使用之前已正确清理。我已经对我的输入进行了模式检查,但违规行为仍然没有消失。

if(Pattern.matches("[0-9]+", empNp)){
            ProcessBuilder processBuilder = new ProcessBuilder(exeLoc, folderPath, empNp);

它仍然不断提示 empNp 没有得到适当的清理。您能否让我知道如何处理这个问题。我无法对 empNp 进行硬编码,因为它是动态输入。如何处理这个问题。

最佳答案

许多安全规则的目的是引起人们对需要人类智能来确定代码是否真正安全的事情的关注。如果您确定输入已被正确清理,请将此问题标记为误报,然后问心无愧地继续。

关于java - Sonar 违规在此操作系统命令中使用之前已正确清理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39362189/

相关文章:

java - 如何使用 Messagepack 序列化 JSON 文档(找不到类 java.lang.Object 的模板)?

jakarta-ee - EJB 容器初始化错误,Error while binding JNDI name *** for EJB ***

plugins - 如何使用sonar TFVC插件?

java - 如果我从类文件中删除 super 构造函数调用会怎样?

java - 我怎样才能将 Borderlayout 常量用于不是不同布局管理器的面板?

java - Spring Boot - Rest Controller 在使用 Lombok 时返回空对象

java - Bean创建异常: Error creating bean with name 'sessionFactory'

database - Sonarqube - 非常大的数据库

sonarqube - 将 InspectCode (Resharper) 和 OpenCover 代码覆盖率报告合并到 Sonar Qube Build 中