在代码安全扫描过程中,扫描规则决定了Fortify对代码风险的识别范围。不同项目的开发语言、业务场景以及安全要求存在差异,因此实际使用时通常需要对规则进行调整。使用Fortify时,有些用户会遇到修改规则后结果没有变化的情况,例如关闭某类规则后报告中仍然存在对应问题,新增规则后没有出现新的检测结果等。出现这类情况时,需要确认规则是否已经应用到扫描任务,而不是只查看规则配置页面。
一、Fortify怎么设置扫描规则
Fortify中的扫描规则设置主要用于调整漏洞检测范围。修改规则前,需要先了解当前项目正在使用的规则配置,避免直接修改后无法判断变化来源。
1、查看当前项目使用的规则
不同扫描项目可能对应不同规则配置,需要先确认当前状态。
①、打开【Fortify】。
②、进入【扫描配置】。
③、查看当前规则信息。
④、确认规则加载情况。
⑤、保存当前配置。
项目使用的规则信息会影响后续扫描结果,修改前确认现有配置,可以方便对比调整前后的变化。
2、调整规则启用状态
部分项目需要关闭不关注的检测项,或者开启新的检测内容。
①、打开【规则管理】。
②、查看规则列表。
③、选择目标规则。
④、修改启用状态。
⑤、保存规则设置。
规则调整后,需要确认修改内容已经保存,否则扫描时仍可能使用原来的配置。
3、配置扫描任务关联规则
规则配置完成后,需要确认扫描任务是否引用了对应设置。
①、打开【扫描任务】。
②、选择目标项目。
③、查看任务配置。
④、确认规则选项。
⑤、保存任务信息。
如果扫描任务没有关联新的规则配置,执行结果通常不会发生变化。
4、检查扫描范围设置
规则生效不仅和规则本身有关,也受到扫描范围影响。
①、进入【扫描设置】。
②、查看分析范围。
③、确认代码目录。
④、调整扫描参数。
⑤、保存设置内容。
如果目标代码没有进入扫描范围,即使规则开启,也不会产生对应结果。
5、重新执行扫描任务
规则修改完成后,需要重新生成分析结果。
①、打开【扫描任务】。
②、选择当前项目。
③、启动【代码分析】。
④、等待扫描完成。
⑤、查看新的结果。
之前生成的报告不会自动按照新规则重新计算。
二、Fortify扫描规则调整后没有生效如何解决
规则修改后没有效果,需要判断问题出现在规则配置、任务调用还是结果查看阶段。实际项目中,最容易忽略的是仍然查看旧扫描数据。
1、新规则没有检测结果时确认规则状态
新增规则后没有发现问题,可以先查看规则是否真正启用。
①、打开【规则管理】。
②、查看规则状态。
③、确认启用内容。
④、检查规则配置。
⑤、重新执行扫描。
如果规则没有加载到当前分析环境,扫描结果不会出现变化。
2、关闭规则后问题仍存在时查看报告版本
有些情况并不是规则没有生效,而是查看了旧结果。
①、打开【扫描报告】。
②、查看报告时间。
③、确认扫描版本。
④、重新生成报告。
⑤、对比最新结果。
历史报告保存的是之前扫描时的数据,不会随着规则调整自动变化。
3、多个扫描任务时确认目标项目
企业项目中可能存在多个扫描任务,修改错误任务时容易造成判断偏差。
①、打开【扫描任务】。
②、查看项目名称。
③、确认任务配置。
④、检查规则关联。
⑤、重新运行任务。
需要确认当前执行的扫描任务就是调整规则后的项目。
4、规则文件变化时检查版本信息
规则库变化可能导致扫描结果出现差异。
①、打开【规则管理】。
②、查看规则版本。
③、确认当前环境。
④、检查规则文件。
⑤、重新分析代码。
不同规则版本对应的检测内容可能存在区别。
5、扫描结果异常时查看日志
如果无法确定规则是否生效,可以查看扫描过程记录。
①、打开【扫描日志】。
②、查看规则加载信息。
③、检查异常提示。
④、确认执行过程。
⑤、重新启动扫描。
日志能够帮助确认扫描过程中实际使用的规则内容。
三、Fortify扫描规则调整后如何管理配置
扫描规则并不是设置一次后长期固定,随着项目开发阶段变化,安全检测关注点也可能发生调整。因此,规则修改后需要做好记录,方便后续查看不同版本扫描结果。
1、保存规则调整记录
①、打开【规则管理】。
②、查看当前配置。
③、保存规则文件。
④、记录修改时间。
⑤、整理版本信息。
2、保留扫描结果变化
①、打开【扫描报告】。
②、查看历史结果。
③、对比漏洞变化。
④、保存分析文件。
⑤、整理项目记录。
3、维护项目扫描配置
①、进入【项目管理】。
②、查看当前项目。
③、确认扫描参数。
④、保存配置内容。
⑤、完成配置整理。
总结
安全扫描规则的调整,本质上是根据项目特点不断完善风险检测方式的过程。Fortify能够帮助开发团队发现代码中的安全问题,但不同项目的代码结构和开发环境存在差异,规则设置也需要结合实际情况进行规划。建立清晰的扫描规则管理方式,可以让安全检测结果更加容易理解,也方便团队长期维护项目安全状态。如果想了解更多相关软件信息,欢迎咨询。