文档

安全审计

Coroid的安全审计会扫描项目中最关键的代码以查找漏洞,通过独立校验确认发现结果,还会查找同类漏洞变体,同时会说明相关费用。

规则用于匹配已知模式。安全审计会查找规则遗漏的内容:AI模型会扫描项目中最关键的代码,以及上次审计后发生变更的代码,以此查找漏洞。只有经过独立校验确认的内容才会被记为发现结果。

启用方式

安全 → 设置 →安全审计该功能设有开关,可设定运行频率:每日、每周(默认)或每月。在未手动开启前,付费套餐默认开启,免费套餐默认关闭。你可以为免费组织开启该功能,或为付费组织关闭该功能,也可针对单个项目单独配置。

该功能会扫描已开启的项目的默认分支。

运行流程

  1. 选择文件。Coroid会对项目的源文件进行排序,优先扫描最重要的文件:位于威胁模型的高影响路径和入口点的代码,以及上次审计后发生变更的代码,之后再扫描未变更的代码。单次运行最多扫描40个文件。
  2. 查找漏洞。对于每个文件,模型会查找固定类别的漏洞:SQL注入、命令注入及其他注入类漏洞、跨站脚本、跨站请求伪造、服务器端请求伪造、路径遍历、开放重定向、不安全的反序列化、访问控制失效、身份认证失效、硬编码凭证、弱加密算法、信息泄露以及资源耗尽。模型必须指明具体行号;若结果指向代码外的位置,则该结果会被忽略。
  3. 确认。每个问题会被记录为尚未确认。对于严重和高优先级的问题,系统会通过独立校验方式在对应提交中重新推导该问题。若校验通过,该问题会被确认为有效的发现结果,相关验证后的静态结果会作为证据。详见证据。
  4. 查找变体。漏洞往往存在同类变体。对于每个已确认的发现结果,Coroid会在代码库中搜索相同模式,并以同样的方式校验每个匹配项。

审计发现的結果会显示在安全审计下,来源标注为安全 → 发现结果。

相关费用

该审计功能使用AI模型,因此会像其他任务一样消耗你的积分和智能体时长,运行时会在Mission Control中显示,其费用也会在设置 → 活动中展示。

每次运行都有预算限制。达到预算上限,或积分、智能体时长耗尽时,运行会停止,已确认的结果会被保留;下次运行会从最重要的代码开始扫描。大型项目的扫描会分多个任务执行,因此单次运行不会长时间占用智能体资源。

修复发现的问题

所有者和管理员可选择修复已确认的发现结果,即可创建修复任务。详见修复拉取请求。目前审计功能尚无法自动开启修复任务。

审计发现的问题属于你的代码内容,不会对外公开。若是公开仓库,或Coroid无法确认其可见性的仓库,修复内容会先保密,直到所有者或管理员发布为止。详见披露。

验证依据

即将推出。Coroid会将候选问题在隔离环境中运行,该环境是应用的临时副本,无网络访问权限、无凭证且不含客户数据,验证结果会转化为回归测试。在此之前,审计的证据仍为上述的独立校验结果。

安全审计报告

新任务功能不再提供纸质版安全审计报告,会直接链接到安全模块中的审计发现结果。