CheckMarx中文网站 > 热门推荐 > Checkmarx扫描排除路径怎么添加 Checkmarx排除路径设置后仍被扫描怎么办
教程中心分类
Checkmarx扫描排除路径怎么添加 Checkmarx排除路径设置后仍被扫描怎么办
发布时间:2026/07/24 17:13:15

  代码仓库中往往同时存在业务源码、第三方依赖、构建产物和临时文件。如果全部进入SAST扫描,结果中容易出现大量无关内容。设置排除路径时,还要确认扫描分支、源码根目录和规则匹配方式。弄清Checkmarx扫描排除路径怎么添加Checkmarx排除路径设置后仍被扫描怎么办,可以让扫描范围更准确,也能减少规则保存后没有生效的情况。

  一、Checkmarx扫描排除路径怎么添加

 

  设置排除规则前,要先找到Checkmarx实际读取的相对路径,不能直接照搬电脑中的本地磁盘地址。

 

  1、确认需要排除的目录

 

  ①进入【工作区】→【项目】,打开目标项目。

 

  ②进入【扫描历史】,打开最近一次已完成的SAST扫描。

 

  ③核对扫描分支、扫描时间和源码来源,确认使用的是代码仓库还是源码压缩包。

 

  ④打开对应分支或解压本次上传的源码包,从最外层目录开始查看结构。

 

  ⑤找到node_modules、dist、build、vendor等准备排除的目录,记录完整相对路径。

 

  ⑥检查目录内容,确认其中没有仍需扫描的自研代码、公共组件或安全校验逻辑。

 

  2、添加排除路径规则

 

  ①返回目标项目,进入【项目设置】中的SAST扫描配置。

 

  ②找到【路径筛选】或【包含和排除文件】设置。

 

  ③点击编辑,填写需要排除的相对路径。

 

  ④排除任意层级中的node_modules目录时,可填写!/node_modules/;排除根目录中的build目录时,可填写!build/**。

 

  ⑤添加多条规则时,按照页面要求逐条录入或使用英文逗号分隔。

 

  ⑥检查感叹号、目录名称、通配符和层级,再点击【保存】或【应用】。

 

  路径范围不要写得过大,避免把仍需检查的业务代码一起过滤。

 

  3、重新扫描并验证

 

  ①返回项目页面,点击【扫描】。

 

  ②选择相同的代码仓库和正确分支;使用压缩包时,重新上传当前源码。

 

  ③勾选【SAST】,关闭【增量扫描】,执行一次完整扫描。

 

  ④进入【扫描历史】,等待任务状态变为已完成。

 

  ⑤从最新任务进入【结果】→【SAST】。

 

  ⑥搜索被排除目录中的代表性文件,确认它不再出现在新结果中。

 

  排除规则不会修改历史扫描,因此不能继续查看规则设置前的旧结果。

 

  二、Checkmarx排除路径设置后仍被扫描怎么办

 

  规则已经保存,但目标文件仍然出现时,应按照结果版本、真实路径、流水线配置和文件副本依次排查。

 

  1、确认查看的是最新结果

 

  ①进入【扫描历史】,找到规则保存后启动的扫描任务。

 

  ②确认任务已经完成,并核对项目、分支和扫描时间。

 

  ③从该任务直接打开SAST结果,不继续使用原来的结果页面。

 

  ④清除状态、严重程度和关键词筛选。

 

  ⑤打开仍然出现的文件,记录完整相对路径。

 

  2、按照真实路径修改规则

 

  ①把结果中的完整路径与现有规则逐段比较。

 

  ②检查是否缺少上层目录、感叹号、双星号或末尾目录范围。

 

  ③返回代码仓库或源码包,确认扫描根目录是否多出一层项目文件夹。

 

  ④按照真实层级修改排除规则,点击【保存】。

 

  ⑤重新运行完整扫描。

 

  ⑥扫描完成后搜索同一文件,确认它是否已经消失。

  3、检查流水线是否覆盖项目设置

 

  ①打开本次扫描使用的Jenkins任务、命令行脚本或持续集成配置。

 

  ②搜索包含路径、排除路径和扫描范围参数。

 

  ③检查流水线是否使用了另一组规则,或启用了覆盖项目设置。

 

  ④将流水线与项目页面中的规则统一并保存。

 

  ⑤重新运行同一条流水线。

 

  ⑥进入最新结果,确认目标目录是否仍然存在。

 

  4、检查其他目录中的文件副本

 

  ①记录扫描结果中的文件名和完整路径。

 

  ②在代码仓库中搜索相同文件名。

 

  ③检查源码目录、构建目录、缓存目录和依赖解压目录。

 

  ④确认当前规则排除的是哪个副本。

 

  ⑤为其他不需要扫描的副本补充准确规则。

 

  ⑥重新扫描,根据完整路径确认无关副本已经消失。

 

  三、怎么确认排除路径已经真正生效

 

  排除成功后,还要确认业务代码没有被一起移出扫描范围。

 

  1、比较修改前后的扫描范围

 

  ①分别打开规则修改前后的两次完整扫描。

 

  ②记录扫描文件数、代码行数、分支和完成时间。

 

  ③在新结果中搜索被排除目录,确认无关文件不再出现。

 

  ④搜索一个必须保留的业务文件,确认它仍在扫描范围内。

 

  ⑤记录本次规则、修改时间和验证结果。

 

  2、复核排除目录

 

  ①整理当前项目使用的全部排除规则。

 

  ②逐个打开被排除目录,检查是否新增了自研代码或公共组件。

 

  ③发现业务代码与第三方文件位于同一父目录时,缩小排除范围。

 

  ④保存调整并重新扫描。

 

  ⑤确认无关目录被过滤,业务源码仍能正常产生扫描结果。

  总结

 

  Checkmarx排除路径的作用,是让扫描任务只读取需要检查的源码。处理Checkmarx扫描排除路径怎么添加Checkmarx排除路径设置后仍被扫描怎么办时,需要同时核对扫描分支、相对路径、规则格式、流水线参数和文件副本。完成新扫描后,无关目录不再出现,业务源码仍被正常识别,才能说明设置已经生效。希望本文能帮助您了解Checkmarx的路径筛选和扫描范围管理,为项目代码检查提供有效参考。如有相关使用需求,欢迎联系咨询。

135 2431 0251