静态分析安全测试

静态分析安全测试 (SAST) 是识别程序中潜在安全缺陷的有效方法。

随着技术的变化,SAST 工具设计用于通过程序的源代码生成安全警告,以表示可能存在风险的途径。有风险的途径通常涉及接收用户控制的数据,这些数据随后通过源代码传播并最终进入程序外部,例如用于进行购买的网站表单将成为订单数据库表的一部分。有时相反的情况也同样成立:数据也可以从数据库传回给用户。

SAST 工具会在未修改用户数据以消除攻击(清理)或未根据已知良好字符列表(验证或白名单)检查用户身份时发出安全警告或发现结果。不进行清理或验证会触发将发现结果标记为具有潜在破坏性。SAST 工具试图在源代码中找到这种潜在的破坏性途径和发现结果。

SAST 工具进行了全面而深入的评估。这对工具来说既是一种优势,也是一种挑战;对于单个程序,找到成千上万的发现结果并不稀奇,但对这些发现结果进行全面审查可能会很繁琐。传统上,有以下两种方法可用于管理如此大量的发现结果:
  • 减少扫描程序的攻击面,这样要审查的发现结果就会减少,但这样会增加无法识别重要发现结果的风险。
  • 添加更多人员以审查结果。

Intelligent Finding Analysis (IFA) 提供另一种管理 SAST 评估中的大量发现结果的方法。

要利用 IFA,请验证 scan.ozsettings 中的属性 use_ifa 是否已设置为 "true"