强化违反信任边界的行为

时间:2018-07-09 13:24:57

标签: fortify

我正在尝试修复一些旧代码在Fortify扫描中弹出的各种问题,大部分是在运行FindBugs工具时弹出的问题。

不幸的是,我遇到了“信任边界违规”问题。

旧代码:

Product p = new Product();
p.setProductName(request.getParameter("productName"));

好的,我知道没有验证参数的值。这是我尝试做的事情:

Product p = new Product();
if (FormUtils.prevalidateString(request.getParameter("productName"))) {
    String productName = request.getParameter("productName");
    p.setProductName(FormUtils.parseString(productName));
}

这是静态prevalidate和parseString方法的代码:

public static boolean prevalidateString(String inStr) {
    // check input against BASIC_STRING Guava CharMatcher
    return BASIC_STRING.matchesAllOf(inStr);
}

public static String parseString(String paramStr) {
    String s = null;

    if (paramStr != null && ! "".equals(paramStr)) {
        s = paramStr;
    }


    return s;
}

这没有解决问题。 (注意:我也尝试使用正常的正则表达式和没有运气的String.matches()进行预验证。)

有人可以告诉我为什么上面的代码不能解决问题吗?

0 个答案:

没有答案