Fortify本地扫描完成后,通常会生成FPR文件,再上传到SSC集中审计。上传成功只说明文件已经送到服务器,结果是否进入正确版本,还要看目标版本、处理状态和审批规则。弄清Fortify结果怎么上传SSC Fortify上传SSC后项目版本没有更新怎么办,先要分清“更新扫描结果”和“新建项目版本”是两件事。
一、Fortify结果怎么上传SSC
SSC中的完整层级是应用和应用版本。上传FPR前,应先确认对应的应用版本已经存在,否则很容易把结果传到旧版本中。
1、通过SSC页面上传FPR
手动上传适合单次扫描或结果验证。操作前先确认页面顶部显示的是准备更新的应用版本。
①进入SSC的【Applications】页面。
②选择目标应用及应用版本。
③进入【Artifacts】页面。
④单击【Artifact】或【Upload Artifact】。
⑤选择【Add Files】,添加FPR文件。
⑥单击【Start Upload】开始上传。
上传结束后不要马上关闭页面,先查看进度和状态。SSC支持将FPR作为扫描工件上传到指定应用版本,文件上传后还要经过服务器处理,完成后才会反映到审计结果中。
2、使用fortifyclient上传
需要接入Jenkins、GitLab CI或其他流水线时,可以使用fortifyclient。
①准备可用于上传的身份验证令牌。
②确认FPR文件路径正确。
③查询目标应用版本的ID。
④执行上传命令。
⑤检查命令返回信息和SSC工件状态。
使用应用版本ID更稳,不容易因为应用名称中存在空格、同名版本或大小写差异而传错位置。官方也支持通过应用名称与版本名称上传:
这两种写法都会把FPR传入已经存在的应用版本,并不会自动创建一个新的版本。
3、通过Audit Workbench上传
扫描结果已经在Audit Workbench中打开时,也可以直接发送到SSC。
①打开目标FPR文件。
②进入【Tools】→【Upload to Software Security Center】。
③填写SSC地址和登录信息。
④选择目标应用与应用版本。
⑤确认上传并查看处理结果。
上传前,对应的应用版本需要已经在SSC中建立。版本列表里找不到目标项时,应先回到SSC创建版本,别随手选一个名称接近的旧版本。
二、Fortify上传SSC后项目版本没有更新怎么办
这里最容易产生误解。FPR上传到某个应用版本后,SSC更新的是该版本下面的扫描工件和漏洞结果,应用版本名称不会自动从1.0变成2.0。
1、确认是否上传到了旧版本
①打开目标应用的【Artifacts】页面。
②查看新FPR的上传时间。
③核对当前应用版本名称。
④检查流水线中的版本ID或版本参数。
⑤发现传错后,修改参数并重新上传。
命令执行成功,也可能只是成功传到了另一个版本。多环境、多分支同时扫描时,建议优先固定applicationVersionID,减少同名版本带来的误选。
2、需要新版本时先手动创建
如果项目已经从1.0进入2.0,应先在SSC中创建2.0应用版本,再把本次FPR上传过去。
①打开目标应用。
②选择创建新应用版本。
③填写新的版本名称和属性。
④按需复制上一版本的审计状态。
⑤保存后记录新版本ID。
⑥重新上传本次FPR。
创建新版本时,可以选择复制上一版本中的问题和审计状态。是否复制要看项目管理方式,别为了图省事把不相关的旧状态也全部带过来。
3、检查工件是否仍在处理中
文件上传完,页面没有马上变化,可能是后台任务还没有处理结束。
①进入目标版本的【Artifacts】。
②查看【Artifact History】。
③检查状态是处理中、等待审批还是处理错误。
④出现错误时打开处理消息。
⑤根据提示修正后重新上传。
如果处理规则要求人工批准,FPR需要先通过审批才能继续处理。状态显示处理错误时,页面通常会给出对应的规则或版本问题,反复上传同一个文件并不能解决。
4、检查FPR与SSC版本兼容性
使用较新版本SAST生成的FPR,上传到较旧SSC时可能无法正常处理。
①查看生成FPR所用的SAST版本。
②查看SSC服务器版本。
③检查两者是否处于支持范围。
④必要时升级SSC或使用匹配版本重新扫描。
⑤重新上传并观察处理状态。
版本跨度太大时,文件可能上传完成,却无法进入正常分析流程。官方兼容说明明确指出,将新版FPR上传到较旧的Application Security版本可能不受支持。
5、检查权限和后台任务
上传按钮不可用、命令返回权限错误,通常要检查账号是否拥有上传分析结果的权限。
如果所有项目的FPR都长时间停在队列中,则需要管理员查看SSC后台任务调度状态。工件处理属于后台任务,任务执行被暂停或资源拥堵时,页面数据就不会及时变化。
三、Fortify上传后怎么确认结果真正更新
仅看到“Upload successful”还不够。正式审计前,最好从工件、扫描时间和问题状态三个位置复核一次。
1、核对最近一次扫描信息
①查看【Artifact History】中的文件名和时间。
②确认处理状态已经完成。
③进入【Audit】页面。
④查看最近扫描时间和问题数量。
⑤抽查几条本次新增或修复的问题。
如果工件已经完成处理,审计页面仍显示旧结果,可以先清除筛选条件并刷新页面。旧问题可能进入Removed分组,新问题则会显示为New或Updated,单看总数有时不太直观。
2、固定流水线中的版本参数
流水线上传时,建议把应用名称、应用版本ID、分支名称和FPR文件名写入日志。
每次上传后再查询工件状态,确认处理完成才结束任务。这样遇到“版本没更新”时,可以直接判断是传错目标、后台未处理,还是扫描文件本身有问题,不用靠人工逐页翻找。
总结
处理Fortify结果怎么上传SSC Fortify上传SSC后项目版本没有更新怎么办,核心是先选对应用版本,再确认FPR已经完成后台处理。上传FPR不会自动新增或修改版本名称,需要新版本时应提前创建。排查时沿着上传目标、工件状态、审批规则和版本兼容性逐项检查,通常很快就能找到卡点。希望本文能为大家上传Fortify结果和维护SSC项目版本提供参考,如需进一步了解相关内容,可联系咨询。