我在我的源代码上运行了强化SCA,已经开发了几个问题。我该如何解决这些问题?我应该采取什么方法?因为在我开始修复现有漏洞时,可能会出现新的漏洞。 如果我没有对此采取适当的方法,我可能会花很多时间在圈子里。 请建议我应采取的可行方法。
答案 0 :(得分:2)
TLDR:从最可怕的漏洞开始,沿着恐怖列表行事。
Fortify提供了一个广泛的问题排名,名为"强化优先顺序" Fortify根据项目描述中的条目进行调整。如果这是一个Web应用程序,您可能更喜欢使用几个OWASP Top 10属性中的一个。如果这是美国联邦政府的申请,您可以选择FISMA属性。我个人更喜欢强化优先级,因为它很丰富:减少关键问题的红色列可能是令人满意的。请放心,管理层将专注于那些引人注目的关键问题。一旦那些坏人消失了,那么明亮的橙色高点就会引起他们的注意。
Fortify还为您提供了一个过滤器集,以帮助您集中精力。这些内容包括"开发者视图"中的基本要素。在"关键曝光视图"中增加数字"安全审核员视图中的所有血腥细节。"虽然"开发者视图"如果质量保证或审核员查看您的扫描结果,猜测它们会打开哪一个,可能会让它变得简洁。 :-)
这些属性中的每一个都可以按优先级顺序(关键,高,中,低)和/或弱点类别进一步过滤。如果时间很短(不是总是这样!),你可以考虑修理低水果"这显然是可以利用的,并且很容易补救,而不是陷入复杂的重构努力。最后,您的安全运营中心可能会建议您专注于特定的弱点,因为这些弱点是他们在您的网络或主机上看到的攻击媒介。
重新扫描代码的时间取决于。如果应用程序很小并且扫描可以快速完成,那么立即重新扫描将最大限度地减少处理错误的难度。注入"由您在代码修复期间。频繁的重新扫描减少了多个注入错误相互作用或相互混淆的可能性。频繁扫描可以更轻松地关注修复对手头问题的影响。然而,随着扫描时间的增加,获得扫描结果的延迟从烦人变为不切实际。由于扫描大型和复杂应用程序的开销,大多数团队将每次构建扫描一次;因此频率取决于它们的构建周期。管理频繁扫描生成的FPR文件数量可能会造成轻微的麻烦;您可能不希望软件安全中心混乱数千个FPR文件,这些文件存在细微差别且历史价值很小。
幸运的是,Fortify允许您隐藏或抑制您认为无关紧要的问题。 (See my answer to HP Fortify — annotating method parameters。)尽管如此,您仍然会看到您尚未处理的所有问题。