4

我们一直在代码中使用 fortify 工具来检查安全漏洞。我们能够解决大部分问题,但有些问题我们发现很难解决。其中一个与访问控制数据库相关的问题有关。我们在代码中使用休眠标准从数据库和 foritfy 中获取记录抱怨从数据库获取并放入程序的数据来自不受信任的来源。下面是相同的代码

Criteria criteria = hibernatessn.createCriteria("com.vish.Status")
critiera.list() ------>Here were get an error saying "data enters program from an untrusted source".

有没有一种方法可以表明数据确实来自可信来源?

谢谢

4

3 回答 3

2

您可以控制问题面板是否列出以下类型的问题:

被抑制的问题

如果您确定特定漏洞不存在且永远不会存在问题,则可以将问题标记为已抑制。您可能还希望禁止针对可能不是高优先级或直接关注的特定类型问题的警告。例如,您可以抑制已修复的问题,或者在您的情况下不打算修复的问题。被抑制的问题不包括在问题面板中显示的组总数中。当您想完全消除对问题的认识时,这种方法可能是最好的。

隐藏的问题

您可以暂时隐藏一组问题,以免在您专注于其他地方时分心。例如,您可以隐藏除分配给您的问题之外的所有问题。被指派解决您隐藏在视图中的问题的个人仍然可以访问它们。问题面板中显示的组总数包括隐藏的问题。如果您在文件夹列表中发现要隐藏或指向另一个文件夹的问题,您可以使用过滤器向导创建新过滤器。过滤器向导显示所有符合过滤器条件的属性。文档 HP_Fortify_Audit_Workbench_User_Guide_4.30 的第 29 页;此文档与您的 Fortify 程序文件一起提供。如果您希望其他人意识到这些问题,即使您忽略它,这种选择可能更可取。

删除的问题

此替代方案与您的情况并不特别相关,但为了完整起见,我将其介绍。随着时间的推移对一个项目进行多次扫描,问题通常会得到修复或过时。在合并扫描结果时,静态代码分析器将在先前扫描中发现但在最近的 SCA 分析结果中不再明显的问题标记为已删除。已删除的问题不包括在问题面板中显示的组总数中。由于您不打算“修复”此问题,因此它不会成为“已删除的问题”。要显示或隐藏抑制、隐藏和删除的问题,请使用选项菜单。您可以设置可见性过滤器以显示或隐藏问题。

于 2016-02-24T14:48:24.413 回答
2

简短的回答 - 不。

稍微长一点的答案 - Fortify 不知道您的数据源是否受信任。您要么必须创建自定义过滤器以忽略该类别,要么必须创建能够仅忽略来自特定数据源的数据的自定义规则。

从历史上看,如果你一遍又一遍地扫描同一个应用程序,我只记得当你看到这些发现时,它们“不是问题”。

于 2016-02-04T21:58:33.223 回答
0

您不能说这是来自受信任的来源,但您可以创建自定义规则集以在即将进行的扫描中消除所有这些问题。

于 2016-03-07T05:40:31.007 回答